E.164 Number Mapping for the Extensible Provisioning Protocol (EPP)
Extracted elements (21)
The labels used to describe the namespace of an E.164 domain name are declared a policy matter beyond the scope of this document, avoiding prescribing a single naming scheme and allowing flexibility across different ENUM deployments.
The mapping extends the EPP domain name mapping rather than defining a new object type, because E.164 domain names are representations of E.164 numbers translated to domain name syntax per the ENUM specification and are managed as domain objects in a shared central repository.
Several NAPTR field values are optional per RFC 3403, but RFC 3761 (ENUM) requires the presence of certain NAPTR field values. This document's field value requirements correspond to RFC 3761, not merely RFC 3403.
This extension does not add any elements to the EPP <check>, <transfer> (query), <delete>, <renew>, or <transfer> (transform) commands or their responses; only <info> response, <create>, and <update> commands are extended.
EPP transform operations (create, delete, renew, transfer, update) on E.164 domain objects MUST be restricted to the sponsoring client as authenticated per RFC 3730 sections 2.9.1.1 and 7. Any attempt by a non-sponsoring client MUST be rejected with an EPP authorization error.
The EPP <create> command MUST contain an <extension> element, and that element MUST contain a child <e164:create> element identifying the extension namespace and schema location, along with one or more <e164:naptr> elements.
The EPP <update> command MUST contain an <extension> element, and that element MUST contain a child <e164:update> element identifying the extension namespace and schema location.
Use of UTF-8 encoding is RECOMMENDED in environments where parser encoding support incompatibility exists. Elements, element content, attributes, and attribute values MUST inherit internationalization conventions from higher-layer EPP structures.
When an <info> command has been processed successfully, the EPP <resData> element MUST contain child elements as described in the EPP domain mapping, and the EPP <extension> element MUST contain a child <e164:infData> element identifying the extension namespace and schema location.
XML specifications and examples provided in this document MUST be interpreted in the character case presented to develop a conforming implementation, since XML is case sensitive.
The <e164:create> command extension element carries one or more <e164:naptr> elements to associate NAPTR records with a newly created E.164 domain object. No additional elements are defined for the <create> response.
The <e164:infData> response element, returned in the EPP <extension> element upon a successful <info> command, contains one or more <e164:naptr> elements representing the NAPTR records associated with the E.164 domain.
The <e164:naptr> element carries NAPTR record data for E.164 provisioning, containing required child elements <e164:order> (unsignedShort), <e164:pref> (unsignedShort), and <e164:svc> (service string), plus optional elements <e164:flags>, <e164:regex>, and <e164:replacement>.
The <e164:update> element contains optional <e164:add> and <e164:rem> child elements, each of which holds one or more <e164:naptr> elements representing NAPTR records to add or remove from the E.164 domain object.
Two IANA URI assignments are made under RFC 3688: the extension namespace URI 'urn:ietf:params:xml:ns:e164epp-1.0' and the extension XML schema URI 'urn:ietf:params:xml:schema:e164epp-1.0', both with IESG as registrant contact.
EPP transform operations on E.164 domain objects must be restricted to the sponsoring client via EPP authentication mechanisms; any unauthorized transform attempt must be rejected with an EPP authorization error.
This extension does not provide any security services beyond those of EPP, the EPP domain name mapping, and underlying protocol layers. Security considerations from the ENUM specification (RFC 3761) and NAPTR/DDDS specification (RFC 3403) apply to this specification as well.
The NAPTR flags field (<e164:flags>) is encoded as a single character (A-Z, a-z, or 0-9) with length constrained to exactly 1 by the XML Schema flagsType restriction.
The NAPTR order field (<e164:order>) and preference field (<e164:pref>) are each encoded as XML Schema 'unsignedShort' (16-bit unsigned integer).
The NAPTR replacement field (<e164:repl>) is encoded as a token string with a minimum length of 1 and a maximum length of 255 characters, representing a domain name.
The NAPTR service field (<e164:svc>) and regexp field (<e164:regex>) are encoded as token strings with a minimum length of 1 and no specified maximum length; the regexp field may contain numerous backslashes and requires careful handling.