One document matched: draft-ietf-enum-enumservices-guide-20.xml
<?xml version='1.0' ?>
<!DOCTYPE rfc SYSTEM 'rfc2629.dtd'[
<!ENTITY rfc1035 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.1035.xml'>
<!ENTITY rfc2119 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml'>
<!ENTITY rfc2026 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2026.xml'>
<!ENTITY rfc2606 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2606.xml'>
<!ENTITY rfc3761 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3761.xml'>
<!ENTITY I-D.rfc3761bis PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-enum-3761bis.xml'>
<!ENTITY rfc2223 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2223.xml'>
<!ENTITY rfc3402 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3402.xml'>
<!ENTITY rfc3403 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3403.xml'>
<!ENTITY rfc4846 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4846.xml'>
<!-- <!ENTITY rfc4355 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4355.xml'> -->
<!ENTITY rfc3986 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3986.xml'>
<!ENTITY rfc4238 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4238.xml'>
<!ENTITY rfc4969 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4969.xml'>
<!ENTITY rfc4979 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4979.xml'>
<!ENTITY rfc3764 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3764.xml'>
<!ENTITY rfc5226 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5226.xml'>
<!ENTITY rfc5278 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5278.xml'>
<!ENTITY rfc3552 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3552.xml'>
<!ENTITY rfc5234 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5234.xml'>
<!ENTITY rfc3966 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3966.xml'>
<!ENTITY rfc4759 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4759.xml'>
<!ENTITY I-D.enum-svc-trans PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-enum-enumservices-transition.xml'>
]>
<rfc category='bcp' ipr='pre5378Trust200902' obsoletes='3761' docName='draft-ietf-enum-enumservices-guide-20' >
<?rfc toc='yes' ?>
<?rfc tocompact='no' ?>
<?rfc compact='yes' ?>
<?rfc subcompact='yes' ?>
<?rfc symrefs='yes' ?>
<?rfc strict='no' ?>
<front>
<date month='April' year='2010' day='24'/>
<title abbrev='IANA Registration of Enumservices'>
IANA Registration of Enumservices: Guide, Template and IANA Considerations
</title>
<author initials="B." surname="Hoeneisen" fullname="Bernie Hoeneisen">
<organization abbrev="Ucom.ch">
Ucom Standards Track Solutions Company
</organization>
<address>
<postal>
<!-- <street>LTS 1</street> -->
<city>CH-8049 Zuerich</city>
<country>Switzerland</country>
</postal>
<phone>+41 44 500 52 44</phone>
<email>bernie@ietf.hoeneisen.ch (bernhard.hoeneisen AT ucom.ch)</email>
<uri>http://www.ucom.ch/</uri>
</address>
</author>
<author initials="A." surname="Mayrhofer" fullname="Alexander Mayrhofer">
<organization abbrev="enum.at">
enum.at GmbH
</organization>
<address>
<postal>
<street>Karlsplatz 1/9</street>
<city>Wien</city>
<code>A-1010</code>
<country>Austria</country>
</postal>
<phone>+43 1 5056416 34</phone>
<email>alexander.mayrhofer@enum.at</email>
<uri>http://www.enum.at/</uri>
</address>
</author>
<author initials="J." surname="Livingood" fullname="Jason Livingood">
<organization abbrev="Comcast">
Comcast Cable Communications
</organization>
<address>
<postal>
<street>One Comcast Center</street>
<street>1701 John F. Kennedy Boulevard</street>
<city>Philadelphia, PA 19103</city>
<country>USA</country>
</postal>
<phone>+1-215-286-7813</phone>
<email>jason_livingood@cable.comcast.com</email>
<uri>http://www.comcast.com/</uri>
</address>
</author>
<area>RAI</area>
<workgroup>ENUM -- Telephone Number Mapping Working Group</workgroup>
<keyword>ENUM</keyword>
<abstract>
<t>This document specifies a revision of the IANA Registration
Guidelines for Enumservices, describes corresponding
registration procedures, and provides a guideline for creating
Enumservice Specifications.
</t>
<!--
<t>Registration of Enumservices is now handled using the
"Expert Review" process. A Registration Document containing
the specification of the Enumservice is required. However,
contrary to earlier registration procedures, said Registration
Document does not necessarily need to be promoted to RFC status.
</t>
-->
<!--
<t>This document provides a guide to and template for the creation
of new IANA registrations of ENUM (E.164 Number Mapping) services.
It is also to be used for updates of existing Enumservice registrations.
</t>
-->
</abstract>
</front>
<middle>
<section title='Introduction'>
<!-- <t>[ Note: This is work in progress - the ENUM crowd is invited
to contribute, since issues clarified in this document will save
the group time spent on each individual Enumservice registration.
Please mail your opinions/ideas to the WG list!! ]
</t>
-->
<t>E.164 Number Mapping (ENUM) <xref target='I-D.ietf-enum-3761bis'/>
provides an identifier mapping
mechanism to map <xref target='ITU.E164.2005'>E.164 numbers</xref> to
<xref target='RFC3986'>Uniform Resource Identifiers
(URIs)</xref> using the <xref target='RFC1035'>Domain Name
System (DNS)</xref>. One of the primary concepts of ENUM is the
definition of "Enumservices", which allows for providing
different URIs for different applications of said mapping
mechanism.
</t>
<t>This document specifies a revision of the IANA Registry for
Enumservices, which was originally described
in <xref target='RFC3761'/>. This document
obsoletes Section 3 of RFC 3761.
<!--
<vspace blankLines='1'/>
<list style="empty">
<t>Note: <xref target='RFC3761'>RFC 3761</xref> is also
obsoleted
by <xref target='I-D.ietf-enum-3761bis'>RFC3761bis</xref>.
</t>
</list>
-->
</t>
<t>
The new registration processes have been specifically designed
to be decoupled from the existence of
the ENUM working group. Compared to RFC 3761, the main
changes are:
</t>
<vspace blankLines='1'/>
<list style='symbols'>
<t>For an Enumservice to be inserted to the IANA Registry,
"Specification Required", which implies the use of a
Designated Expert, according to <xref target='RFC5226'>"Guidelines
for Writing an IANA Considerations Section in RFCs"</xref>
are now sufficient.
</t>
<vspace blankLines='1'/>
<t>The IANA Registration Template has been supplemented with
elements for "Enumservice Class" and "Enumservice Specification".
</t>
</list>
<t>The IETF's ENUM Working Group has encountered an unnecessary
amount of variation in the format of Enumservice Specifications.
The ENUM Working Group's view of what particular
information is required and/or recommended has also evolved,
and capturing these best current practices is helpful in both
the creation of new Enumservice Specifications, as well as the
revision or refinement of existing Enumservice Specifications.
</t>
</section>
<section title="Terminology">
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described
in <xref target='RFC2119'>RFC 2119 </xref>.
</t>
<t>For the purpose of this document:
<vspace blankLines='1'/>
<list style='symbols'>
<t>"Registration Document" refers to a draft specification
that defines an Enumservice and proposes its registration
following the procedures outlined herein.
</t>
<vspace blankLines='1'/>
<t>"Enumservice Specification" refers to a Registration
Document that has been approved by the experts and
published according to "Specification Required" as defined
in <xref target='RFC5226'/>.
</t>
</list>
</t>
</section>
<!--
<section title='History and Usage of Enumservice Registrations'>
<t>As mentioned above, <xref target='RFC3761'> RFC 3761
</xref> describes the ... DO WE REALLY NEED THIS?
</t>
</section>
-->
<section anchor='requirements' title='Registration Requirements'>
<t>As specified in the Augmented Backus-Naur Form (ABNF,
<xref target='RFC5234'/>) found in Section 2.4.3 of
<xref target='I-D.ietf-enum-3761bis'/>, an Enumservice is made
up of Types and Subtypes. For any given Type, the allowable
Subtypes (if any) must be defined in the Enumservice
Specification. There is currently no concept of a registered
Subtype outside the scope of a given Type.
</t>
<!-- Thus, the registration process uses the 'type' as its main key
within the IANA Registry.</t> -->
<t>While the combination of each Type and all of its Subtypes
constitutes the allowed values for the "Enumservice" field, it
is not sufficient to just list their allowed values.
To allow for interoperability, a complete
Enumservice Specification MUST document the semantics of the Type and
Subtype values to be registered, and MUST contain all
sections listed in <xref target='requiredSections'/> of this
document.</t>
<t>Furthermore, in order for an Enumservice to be registered,
the entire Registration Document requires approval by the
experts according to "Specification Required", which implies
the use of a Designated Expert, as set out
in <xref target='RFC5226'>"Guidelines for Writing an IANA
Considerations Section in RFCs"</xref> and
<xref target='ExpRevGuidelines' /> of this document.
</t>
<t>All Enumservice Specifications are expected to conform also
to various requirements laid out in the following sections.
</t>
<section anchor='FunctReq' title='Functionality Requirements'>
<t>A registered Enumservice must be able to function as a
selection mechanism for choosing
one <xref target='RFC3403'>Naming Authority Pointer
(NAPTR) </xref> DNS Resource Record (RR) from a set of such
RRs. That means the Enumservice Specification MUST define
how to use the NAPTR RR and the URI(s) the NAPTR RR resolves
to.
</t>
<t>Specifically, a registered Enumservice MUST specify the
URI Scheme(s) that may be used for the Enumservice, and,
when needed, other information that will have to be
transferred into the URI resolution process itself.
</t>
</section>
<section anchor='NamingReq' title='Naming Requirements'>
<t>An Enumservice MUST be unique in order to be useful as a
selection criteria:
<vspace blankLines='1'/>
<list style='symbols'>
<t>The Type MUST be unique.
</t>
<vspace blankLines='1'/>
<t>The Subtype (being dependent on the Type) MUST be
unique within a given Type.
</t>
</list>
</t>
<t>Types and Subtypes MUST conform to the ABNF specified in
Section 2.4.4 of <xref target='I-D.ietf-enum-3761bis'/>.
</t>
<t>The ABNF specified in Section 2.4.4 of
<xref target='I-D.ietf-enum-3761bis'/> allows the "-" (dash)
character for Types and Subtypes . To avoid confusion with
possible future prefixes, a "-" MUST NOT be used as the
first nor as the second character of a Type nor a Subtype.
Furthermore, a "-" MUST NOT be used as the last character of
a Type nor a Subtype. In addition, Types and Subtypes are
case insensitive and MUST be specified in small letters.
</t>
<t>To avoid confusion with Enumservice fields using an
obsolete syntax, Type and Subtype MUST
NOT start with the string "e2u".
</t>
<t>The Subtype for one Type MAY have the same identifier as
a Subtype for
another Type but it is not sufficient to
simply reference another Type's Subtype. The functionality
of each Subtype MUST be fully specified in the context
of the Type being registered.
</t>
<t><xref target='cookbook'/> contains further naming
requirements.
</t>
</section>
<section anchor='SecReq' title='Security Requirements'>
<t>An analysis of security issues is REQUIRED for all
registered Enumservices. (This is in accordance with the
basic requirements for all IETF protocols.)
</t>
<t>All descriptions of security issues MUST be as accurate
and extensive as feasible. In particular,
a statement that there are "no security issues associated
with this Enumservice" must not be confused with "the
security issues associated with this Enumservice have not
been assessed".
</t>
<t>There is no requirement that an Enumservice must be
completely free of security risks. Nevertheless, all known
security risks MUST be identified in an Enumservice
Specification.
</t>
<t>The security considerations section of Enumservice
Specifications is subject to continuing evaluation and
modification, in accordance with
<xref target='ChangeControl'/>.
</t>
<t>Some of the issues to be looked at in a security
analysis of an Enumservice are:
<vspace blankLines='1'/>
<list style='numbers'>
<t>Complex Enumservices may include provisions for
directives that institute actions on a user's resources.
In many cases provision can be made to specify arbitrary
actions in an unrestricted fashion which may then have
devastating results (especially if there is a risk for
a new ENUM look-up, and because of that an infinite loop
in the overall resolution process of the E.164 number).
</t>
<vspace blankLines='1'/>
<t>Complex Enumservices may include provisions for
directives that institute actions which, while not
directly harmful, may result in disclosure of
information that either facilitates a subsequent attack
or else violates the users' privacy in some way.
</t>
<vspace blankLines='1'/>
<t>An Enumservice might be targeted for applications
that require some sort of security assurance but do not
provide the necessary security mechanisms themselves.
For example, an Enumservice could be defined for storage
of confidential security services information such as
alarm systems or message service passcodes, which in
turn require an external confidentiality service.
</t>
</list>
</t>
</section>
<section anchor='PubReq' title='Publication Requirements'>
<t>Enumservices Specifications MUST be published according
to the requirements for "Specification Required" set out
in <xref target='RFC5226'>"Guidelines for Writing an IANA
Considerations Section in RFCs"</xref>. RFCs fulfill these
requirements. Therefore, it is strongly RECOMMENDED to
publish Enumservice Specifications as RFCs.
</t>
<t>In case the Enumservice Specification is not published as
an RFC, sufficient information that allows to uniquely
identify the Enumservice Specification MUST be provided.
</t>
</section>
</section>
<section anchor='cookbook' title='Enumservice Creation Cookbook'>
<section title='General Enumservice Considerations'>
<t>ENUM is an extremely flexible identifier mapping mechanism,
using E.164 (phone) numbers as input identifiers, and returning
URIs as output identifiers. Because of this flexibility, almost
every use case for ENUM could be implemented in several ways.
</t>
<t>Section 2 of <xref target='RFC5226'>"Guidelines for Writing an IANA
Considerations Section in RFCs"</xref> provides motivation why
management of a name space might be necessary. Even though the
namespace for Enumservices is rather large (up to 32 alphanumeric
characters), there are reasons to manage this in accordance with
Section 2 of <xref target='RFC5226'/>. The following is a list of
motivations applying to Enumservices:
<vspace blankLines='1'/>
<list style='symbols'>
<t>Prevent hoarding or wasting of values: Enumservice Types
are not an opaque identifier to prevent collisions in the
namespace, but rather identify the use of a certain
technology in the context of ENUM. Service Types might also
be displayed to end users in implementations, so meaningful
Type strings having a clear relation to the protocols and
applications used are strongly RECOMMENDED.
Therefore, preventing hoarding, wasting, or "hijacking" of
Enumservice Type strings is important.
</t>
<vspace blankLines='1'/>
<t>Sanity check to ensure sensible or necessary requests:
This applies to Enumservices, since especially various
Enumservices for the same purpose would reduce the chance of
successful interoperability, and unnecessarily increase the
confusion among implementers.
</t>
<vspace blankLines='1'/>
<t>Delegation of namespace portions: Theoretically, the Type
and/or Subtype structure of Enumservices would allow for
delegations of Type values, and self-supporting management
of Subtype values by a delegate within the Type value. Such
delegates could for example be other standardization
bodies. However, this would require clear policies regarding
publication and use of such Subtypes. Delegation of
Enumservice namespace portions is therefore currently not
supported.
</t>
<vspace blankLines='1'/>
<t>Interoperability: Since the benefit of an Enumservice
rises with the number of supporting clients, the
registration and use of several services for a similar or
identical purpose clearly reduces interoperability.
Operational circumstances suggest to keep the space occupied
by all services published in the NAPTR RRSet at any owner in
the e164.arpa domain bounded. Registration of nearly
identical services and subsequent competing or parallel use
could easily increase the DNS operational complexity.
</t>
</list>
</t>
<t>Generally, before commencing work on a new Enumservice
registration, the following should be considered:
<vspace blankLines='1'/>
<list style='symbols'>
<t>Is there an existing Enumservice that could fulfill the
desired functionality without overloading it? Check the IANA
Enumservice Registry at
<http://www.iana.org/assignments/enum-services>.
</t>
<vspace blankLines='1'/>
<t>Is there work in progress, or previous work, on a similar
Enumservice? Check the <enum@ietf.org> mailing list archives
at <http://www.ietf.org/mail-archive/web/enum/index.html>,
and search the Internet-Drafts Archive at
<http://tools.ietf.org/>. As some Internet-Drafts may have
expired and no longer be available in the Internet-Drafts
Archive, or some work on Enumservices may have been
considered outside the IETF, we recommend also a web search.
</t>
<vspace blankLines='1'/>
<t><xref target='classification'/> provides three general
categories for Enumservice classification. In some cases, there
might be several options for designing an Enumservice. For
example, a mapping service using HTTP could be considered a
"protocol Type" Enumservice (using HTTP as the protocol),
while it could also be viewed as
an "application Type" Enumservice, with the application being
access to mapping services. In such a case where several
options are
available, defining use cases before commencing work on
the Enumservice itself might be useful before making a
decision on which
aspect of the Enumservice is more important.
</t>
</list>
</t>
</section>
<section anchor='classification' title='Classification, Type and Subtype'>
<t>Because of their flexibility, Enumservices can be and are used
in a lot of different ways. This section contains a classification
of Enumservices, and provides guidance for choosing suitable
Type and Subtype strings for each individual Enumservice
Class.
<!-- The choice of a suitable 'name' is independent of the
classification. -->
</t>
<t>The Classification of each Enumservice MUST be listed in
the Registration Document (see
<xref target='enumServiceReg'/>). If the Enumservice cannot be
assigned to one of the classes outlined below, the
Registration Document MUST contain a section on the
difficulties encountered while trying to classify the service
to help the experts in their decision.
</t>
<!-- alex: no 'name' anymore
<section anchor='choosename' title='Choosing a "name" String'>
<t>Advice for choosing a proper 'name' string is independent of
the classification of the Enumservice.</t>
<t>Generally, the 'name' string used for registering an Enumservice
SHOULD give a clear indication of what the Enumservice is about.
The 'name' has no technical significance in the processing of
the NAPTR (it doesn't even appear in resource record instances
of the Enumservice). However, it
is likely to be used for labeling the
Enumservice to end users.
</t>
<t>Suitable 'names' are concise, distinctive, and clearly related
to the underlying service with which a client is going to interact.
</t>
</section>
-->
<section anchor='generalcons' title='General Type / Subtype Considerations'>
<t>To avoid confusion, the name of a URI Scheme MUST NOT be
used as a Type string for an Enumservice which is not specifically
about the respective protocol or URI Scheme. For example,
the Type string "imap" would be inadequate for use in an
Enumservice about "Internet mapping" services, because it
corresponds to an existing URI Scheme / protocol for
something different.
</t>
<t>If Subtypes are defined, the minimum number SHOULD be
two (including the empty Subtype, if defined).
The choice of just one possible Subtype for a given Type
does not add any information when selecting an ENUM record,
and hence can be left out completely.
However, potential future expansion of a Type towards several
Subtypes may justify the use of Subtypes, even in the case
just one is currently defined, as noted in
<xref target='ExtensionOfExisting'/>.
</t>
<t>It is perfectly legal under a certain Type to mix the
Enumservice without a Subtype (empty Subtype) with Enumservices
containing
a Subtype. In that case, however, the Enumservice with an
empty Subtype SHOULD be specified to reflect the base
service, while the other Enumservices SHOULD
be specified to reflect variants.
</t>
</section>
<section anchor='protocolclass' title='Protocol-Based Enumservices Class'>
<t>Such an Enumservice indicates that an interaction using the
named protocol will result for use of this NAPTR. The expected
behavior of a system using this Enumservice MUST be clear from
the protocol.</t>
<t>A good indication that an Enumservice belongs to this Class is
the fact that a client does not need to understand the actual
application to make use of an instance of this Enumservice.
</t>
<t>Examples of such Enumservices include <xref target='RFC4979'>
"xmpp"</xref> and <xref target='RFC3764'>"sip"</xref>.
</t>
<section anchor='protobtype' title='Protocol-Based Enumservice "Type" Strings'>
<t>
A protocol-based Enumservice SHOULD use the lowercase name of
the protocol
<!-- (or the "base" URI Scheme, where there are also secure variants) -->
as its Type string.
</t>
</section>
<section anchor='protobsubtype' title='Protocol-Based Enumservice "Subtype" Strings'>
<t>
Where there is a single URI Scheme associated with this protocol,
a Subtype SHOULD NOT be specified for the Enumservice.
</t>
<t>Where there are a number of different URI Schemes
associated with this protocol, the Enumservice
Specification MAY use the empty Subtype for all URI
Schemes that it specifies as mandatory to implement. For
each URI Scheme that is not mandatory to implement a
distinct Subtype string MUST be used.
</t>
<t>If Subtypes are defined, it is RECOMMENDED to use the URI
Scheme name as the Subtype string.
</t>
</section>
</section>
<section anchor='applicationclass' title='Application-Based Enumservice Classes'>
<t>Application-based Enumservices are used when the kind of
service intended is not fully defined by a protocol specification.
There are three cases here:
<vspace blankLines='1'/>
<list style='symbols'>
<t>Common Application Enumservice:
<vspace blankLines='1'/>
The application reflects a kind of interaction that can be realized
by different protocols, but where the intent of the publisher is the
same. From a user's perspective, there is a common kind of interaction -
how that interaction is implemented is not important. The Enumservice
Specification MUST describe the interaction and expected behavior in
enough detail that an implementation can decide if this activity is one
in which it can engage. However, it is RECOMMENDED that the Enumservice
is defined in a way that will allow others to use it at a later date. An
Enumservice that defines a generalized application is preferred to one
that has narrow use.
<vspace blankLines='1'/>
An example of this flavor of Enumservice is email. Whilst this might
appear to be a "pure" protocol scheme, it is not. The URI Scheme is
'mailto', and does not identify the protocol used by the sender or the
recipient to offer or retrieve emails.
<vspace blankLines='1'/>
Another example is SMS, where the existence of such an Enumservice
indicates that the publishing entity is capable of engaging in sending
or receiving a message according to the Short Messaging Service
specifications. The underlying protocol used and the URI Scheme for the
addressable end point can differ, but the "user visible" interaction of
sending and receiving an SMS is similar.
</t>
<vspace blankLines='1'/>
<t>Subset Enumservice:
<vspace blankLines='1'/>
The application interaction reflects a subset of the interactions
possible by use of a protocol. Use of this Enumservice indicates that
some options available by use of the protocol will not be accepted or
are not possible in this case. Any such Enumservice Specification MUST
define the options available by use of this NAPTR in enough detail that
an implementation can decide whether or not it can use this Enumservice.
Examples of this kind of Enumservice are "voice:tel" and "fax:tel". In both
cases the URI holds a telephone number. However, the essential feature
of these Enumservices is that the telephone number is capable of
receiving a voice call or of receiving a Facsimile transmission,
respectively. These form subsets of the interactions capable of using
the telephone number, and so have their own Enumservices. These allow an
end point to decide if it has the appropriate capability of engaging in
the advertised user service (a voice call or sending a fax) rather than
just being capable of making a connection to such a destination address.
This is especially important where there is no underlying mechanism
within the protocol to negotiate a different kind of user interaction.
</t>
<vspace blankLines='1'/>
<t>Ancillary Application Enumservice
<vspace blankLines='1'/>
Another variant on this is the Ancillary Application. This is one in
which further processing (potentially using a number of different
protocols or methods) is the intended result of using this Enumservice.
An example of this kind of application is the "pstn:tel" Enumservice. This
indicates that the NAPTR holds Number Portability data. It implies that
the client should engage in number portability processing using the
associated URI.
Note that this Enumservice usually does not itself define the kind of
interaction available using the associated URI. That application is
negotiated with some other "out of band" means (either through prior
negotiation, or explicitly through the number portability process, or
through negotiation following the selection of the final destination
address).
</t>
</list>
</t>
<section anchor='apptype' title='Application-Based Enumservice "Type" Strings'>
<t>It is RECOMMENDED that Application-class Enumservices use the
lowercase well known name of the abstract application
as Type string.
</t>
</section>
<section anchor='appsubtype' title='Application-Based Enumservice "Subtype" Strings'>
<t>It is RECOMMENDED to use the URI Scheme(s) which the
application uses, as Subtype string(s). Subtype strings MAY be
shared between URI Schemes, if all the URI Schemes within
the same Subtype are mandatory to implement.
</t>
<t>If it is foreseen that there is only one URI Scheme
ever to be used with
the application, the empty Subtype string MAY be used.
</t>
</section>
</section>
<section anchor='dataclass' title='Data Type-Based Enumservice Class'>
<t>"Data Type" Enumservices typically refer to a
specific data type or format, which may be addressed using
one or more URI Schemes and protocols. It is RECOMMENDED
to use a well known name of the data type or format as the
Enumservice Type string. Examples of such Enumservices include
<xref target='RFC4238'>"vpim"</xref> and
<xref target='RFC4969'>"vcard"</xref>.
</t>
<section anchor='datatype' title='Data Type-Based Enumservice "Type" Strings'>
<t>It is RECOMMENDED to use the lowercase well known name
of the data type or format as the Type string.</t>
</section>
<section anchor='datasubtype' title='Data Type-Based Enumservice "Subtype" Strings'>
<t>It is RECOMMENDED to use the URI Schemes used to access the
service as Subtype string. Subtype strings MAY be
shared between URI Schemes, if all the URI Schemes within
the same Subtype are mandatory to implement.
</t>
<t>If there is only one URI Scheme foreseen to access the
data type or format, the empty Subtype string MAY be used.
</t>
</section>
</section>
<section anchor='otherService' title='Other Enumservice'>
<t>In case an Enumservice proposal cannot be assigned to any
of the classes mentioned above, the <class> element
(Enumservice Class) in the IANA Registration Template (see
<xref target='enumServiceReg'/>) MUST be populated with "Other".
In that case, the Enumservice Specification MUST contain a section
elaborating on why the Enumservice does not fit into the
classification structure.
</t>
</section>
</section>
<!-- <section anchor='CookbookType' title='About Type Names'>
<t>Generally, the Type name of an Enumservice is REQUIRED to
give a clear indication of what the Enumservice is about.
Usually, an Enumservice falls under one of the following
categories:
<vspace blankLines='1'/>
<list style='symbols'>
<t>"Protocol" Enumservices are exclusively tied to a
specific protocol. Such Enumservices typically use that
single protocol and its respective <xref
target='RFC3986'>Uniform Resource
Identifier (URI)</xref> Scheme (sometimes
including a secure variant), and SHOULD use the protocol
name / URI Scheme name as the Type. In case the secure
variant has a different URI Scheme / protocol name, the
URI Scheme name of the base protocol SHOULD be preferred.
Examples of such Enumservices include <xref
target='RFC3764'> 'SIP'</xref>, <xref
target='RFC3762'>'H323'</xref> and
<xref target='I-D.ietf-enum-xmpp'>'XMPP'
[draft-ietf-enum-xmpp]</xref>.
<vspace blankLines='1'/></t>
<t>"Application" Enumservices usually use the abstract
application name as the Enumservice Type. The name of
the actual protocol and URI Scheme may differ from the
Type, but may also be identical (especially when <xref
target='RFC3958'>application service location</xref> is
used). If application name and URI Scheme name are
identical, it is RECOMMENDED to use that name also as the
Enumservice Type. In case the actual protocol / URI
Scheme differs from the application name, it is
RECOMMENDED to use that application name as Enumservice
Type. Examples of such Enumservices are <xref
target='RFC4002'>'web' and 'ft'</xref> and
<xref target='RFC3953'>'pres'</xref>.
<vspace blankLines='1'/></t>
<t>"Data Type" Enumservices typically refer to a
specific data type or format, which may be addressed using
one or more URI Schemes and protocols. It is RECOMMENDED
to use a well known name of the data type or format as the
Enumservice Type. An example of such an Enumservice is
<xref target='RFC4238'>'vpim'</xref> and
<xref target='RFC4969'>'vCard'</xref>
(work in progress).
</t>
</list>
</t>
</section>
<section anchor='CookbookSubtype' title='About Subtypes'>
<t>An Enumservice may optionally use a Subtype to further
specify the service to which an ENUM record refers to. The
following recommendations apply to such Enumservices:
<vspace blankLines='1'/>
<list style='symbols'>
<t>Subtypes SHOULD NOT be used to curtail the negotiation
capabilities of the protocol used to contact the referred URI,
unless this limitation is specifically desired. If that is
the case, authors MUST describe the limitation, the
motivation for this, and
discuss potential problems arising from this.
<vspace blankLines='1'/></t>
</list>
</t>
</section> -->
</section>
<section anchor='requiredSections' title='Required Sections and Information'>
<t>There are several sections that MUST appear in
an Enumservice Specification. These sections are as
follows, and SHOULD be in the given order.
</t>
<t>The following terms SHOULD begin with a capital letter,
whenever they refer to the IANA Registration:
<list style='symbols'>
<t>Class</t>
<t>Type</t>
<t>Subtype</t>
<t>URI Scheme</t>
</list>
</t>
<section title='Introduction (MANDATORY)'>
<t>An introductory section MUST be included. This section will
explain, in plain English, the purpose and intended use of the
proposed Enumservice registration.
</t>
<t>The Introduction SHOULD start with a short sentence about ENUM,
introduce the protocol used in the Enumservice, and discuss
the Enumservice as it refers from the E.164 number to the protocol
or service.
</t>
</section>
<section anchor='enumServiceReg' title='IANA Registration (MANDATORY)'>
<t>This section MUST be included in an Enumservice
Specification. Where a given Enumservice Type has multiple
Subtypes, there MUST be a separate "IANA Registration"
section for each Subtype. The following lists the elements
that are to be used in the XML template of an "IANA Registration"
section.
</t>
<section anchor='class' title='Enumservice Class (<class>)'>
<t>This element contains the Class of the Enumservice as
defined in <xref target='classification'/>. Its value MUST
be one of (without quotes):
<vspace blankLines='1'/>
<list style='symbols'>
<t>"Protocol-Based": The Enumservice belongs to the
Protocol-based class as described in
<xref target='protocolclass'/>.
</t>
<vspace blankLines='1'/>
<t>"Application-Based, Common": The Enumservice is a
"common" case of the Application-based class as
described in <xref target='applicationclass'/>.
</t>
<vspace blankLines='1'/>
<t>"Application-Based, Subset": The Enumservice belongs to
the "subset" case of the Application-based class as
described in <xref target='applicationclass'/>.
</t>
<vspace blankLines='1'/>
<t>"Application-Based, Ancillary": The Enumservice is an
"ancillary" case of the Application-based class, as
described in <xref target='applicationclass'/>.
</t>
<vspace blankLines='1'/>
<t>"Data Type-Based": The Enumservice belongs to the Data
Type-Based class as described in
<xref target='dataclass'/>.
</t>
<vspace blankLines='1'/>
<t>"Other": The majority of the functionality of the
Enumservice does not fall into one of the classes defined.
</t>
</list>
</t>
<t>
<artwork><![CDATA[
e.g. <class>Protocol-Based</class>
]]>
</artwork>
</t>
</section>
<section anchor='type' title='Enumservice Type (<type>)'>
<t>The Type of the Enumservice. All Types SHOULD be listed in
lower-case. The choice of Type depends on the Enumservice
Class. Please find further instructions
in <xref target='cookbook'/>.
</t>
<t>
<artwork><![CDATA[
e.g. <type>foo</type>
]]>
</artwork>
</t>
</section>
<section anchor='subtype' title='Enumservice Subtype (<subtype>)'>
<t>The Subtype of the Enumservice. All Subtypes SHOULD be
listed in lower-case. The choice of Subtype depends on the
Enumservice Class. Should the Enumservice not require a
Subtype, then the <subtype> element MUST be omitted in the
registration XML chunk. If a given Enumservice Type has
multiple Subtypes, then there MUST be a separate "IANA
Registration" XML chunk for each Subtype. Please find
further instructions in <xref target='cookbook'/>.
</t>
<t>
<artwork><![CDATA[
e.g. <subtype>bar</subtype>
]]>
</artwork>
</t>
</section>
<section anchor='uriSchemes' title='URI Scheme(s) (<urischeme>)'>
<t>The URI Schemes that are used with the Enumservice. The
selection of URI Schemes often depends on the Enumservice
Class, Type, and/or Subtype. A colon MUST NOT be placed
after the URI Scheme name. If there is more that one URI
Scheme, then one <urischeme> element per URI scheme must be
used in the XML chunk. Please find further instructions
in <xref target='cookbook'/>.
</t>
<t>
<artwork><![CDATA[
e.g. <urischeme>bar</urischeme>
<urischeme>sbar</urischeme>
]]>
</artwork>
</t>
<t>Note: A client cannot choose a specific ENUM record in a
record set based on the URI Scheme - the selection is only
based on Type and Subtype, in accordance with
<xref target='RFC3402'/>.</t>
</section>
<section anchor='functionalSpecification' title='Functional Specification (<functionalspec>)'>
<t>The Functional Specification describes how the
Enumservice is used in connection with the URI to which it
resolves.
</t>
<t>
<artwork><![CDATA[
e.g. <functionalspec>
<paragraph>
This Enumservice indicates that the resource
identified can be addressed by the associated
URI in order to foo the bar.
</paragraph>
<paragraph>
[...]
</paragraph>
</functionalspec>
]]>
</artwork>
</t>
<t>Where the terms used are non-obvious, they should be
defined in the Enumservice Specification, or a reference to
an external document containing their definition should be
provided.</t>
</section>
<section anchor='securityConsiderations' title='Security Considerations (<security>)'>
<t>A reference to the "Security Considerations" section of a
given Enumservice Specification.
</t>
<t>
<artwork><![CDATA[
e.g. <security>
See <xref type="rfc" data="rfc4979"/>, Section 6.
</security>
]]>
</artwork>
</t>
</section>
<section anchor='intendedUsage' title='Intended Usage (<usage>)'>
<t>One of the following values (without quotes):
<vspace blankLines='1'/>
<list style='symbols'>
<t>"COMMON": Indicates that the Enumservice is
intended for widespread use on the public Internet, and
that its scope is not limited to a certain environment.
</t>
<vspace blankLines='1'/>
<t>"LIMITED USE": Indicates that the Enumservice is
intended for use on a limited scope, for example in
private ENUM-like application scenarios. The use case
provided in the Enumservice Specification should
describe such a scenario.
</t>
<vspace blankLines='1'/>
<t>"OBSOLETE": Indicates that the Enumservice has
been declared obsolete (<xref target='ChangeControl'/>)
and is not to be used in new deployments. Applications
SHOULD however expect to encounter legacy instances of this
Enumservice.
</t>
</list>
</t>
<t>
<artwork><![CDATA[
e.g. <usage>COMMON</usage>
]]>
</artwork>
</t>
</section>
<section anchor='enumserviceSpecification' title='Enumservice Specification (<registrationdocs>)'>
<t>Reference(s) to the Document(s) containing the
Enumservice Specification.
</t>
<t>
<artwork><![CDATA[
e.g. <registrationdocs>
<xref type="rfc" data="rfc4979"/>
</registrationdocs>
e.g. <registrationdocs>
<xref type="rfc" data="rfc8888"/> (obsoleted by RFC 9999)
<xref type="rfc" data="rfc9999"/>
</registrationdocs>
e.g. <registrationdocs>
[International Telecommunications Union,
"Enumservice Specification for Foobar",
ITU-F Recommendation B.193, Release 73, Mar 2009.]
</registrationdocs>
]]>
</artwork>
</t>
</section>
<section anchor='requesters' title='Requesters (<requesters>)'>
<t>The persons requesting the registration of the
Enumservice. Usually these are the authors of the
Enumservice specification.
</t>
<t>
<artwork><![CDATA[
e.g. <requesters>
<xref type="person" data="John_Doe"/>
</requesters>
[...]
<people>
<person id="John_Doe">
<name>John Doe</name>
<org>ACME Research and Development Inc.</org>
<uri>mailto:jd@acme.example.com</uri>
<updated>2008-11-20</updated>
</person>
</people>
]]>
</artwork>
</t>
<t>Note: If there is more than one requester, there must be
one <xref> element per requester in the <requesters> element,
and one <person> chunk per requester in the <people>
element.</t>
</section>
<section anchor='furtherInformation' title='Further Information (<additionalinfo>)'>
<t>Any other information the authors deem interesting.
</t>
<t>
<artwork><![CDATA[
e.g. <additionalinfo>
<paragraph>more info goes here</paragraph>
</additionalinfo>
]]>
</artwork>
</t>
<t>Note: If there is no such additional information, then
the <additionalinfo> element is omitted.
</t>
</section>
</section>
<section title='Examples (MANDATORY)'>
<t>This section MUST show at least one example of the Enumservice being
registered, for illustrative purposes. The example(s) shall in no
way limit the various forms that a given Enumservice may take, and this
should be noted at the beginning of this section of the document.
The example(s) MUST show the specific formatting of the intended NAPTRs
(according to <xref target='RFC3403'/>
and <xref target='I-D.ietf-enum-3761bis'/>),
including one or more NAPTR example(s),
AND a brief textual description, consisting of one or more sentences
written in plain English, explaining the various parts or attributes
of the record(s).
</t>
<t>The example(s) SHOULD contain a brief description how a client
supporting this Enumservice could behave, if that description
was not already given in e.g. the Introduction or the Functional
Specification.
</t>
<t>The example(s) SHOULD follow any relevant IETF guidelines on the use
of domain names, phone numbers, and other resource identifier
examples, such as <xref target='RFC2606'/>.
</t>
<t>e.g.<vspace blankLines='0'/>
$ORIGIN 9.7.8.0.6.9.2.3.6.1.4.4.e164.arpa.
<vspace blankLines='0'/>
@ IN NAPTR 100 10 "u" "E2U+foo:bar" "!^.*$!bar://example.com/!" .
</t>
</section>
<section title='Implementation Recommendations / Notes (OPTIONAL)'>
<t>If at all possible, recommendations that pertain to
implementation and/or operations SHOULD be included. Such a
section is helpful to someone reading an Enumservice
Specification and trying to understand how best to use it to
support their network or service.
</t>
</section>
<section anchor='sec' title='Security Considerations (MANDATORY)'>
<t>A section explaining any potential security threats that are unique
to the given registration MUST be included. This MUST also include any
information about access to Personally Identifiable Information (PII).
</t>
<t>An Enumservice Specification SHOULD NOT
include general and obvious security recommendations, such as
securing servers with strong password authentication.
</t>
<t><xref target='RFC3552'/> provides guidance to write a good
Security Considerations section, <xref target='secguide'/> of this
document contains guidance specific to Enumservice registration.
</t>
</section>
<section title='IANA Considerations (MANDATORY)'>
<t>Describe the task IANA needs to fulfill processing the
Enumservice Registration Document.
</t>
<t>e.g.<vspace blankLines='0'/>
This document requests the IANA registration of the
Enumservice with Type "foo" and Subtype "bar" according
to the definitions in this document, RFC XXXX [Note for RFC
Editor: Please replace XXXX with the RFC number of this
document before publication]
and <xref target='I-D.ietf-enum-3761bis'/>.
</t>
<t>
<vspace blankLines='0'/>e.g.
<vspace blankLines='0'/>This document requests an update of
the IANA registration of the Enumservice Type "foo" with
Subtype "bar", according to the definitions in this
document, RFC XXXX [Note for RFC Editor: Please replace XXXX
with the RFC number of this document before publication]
and <xref target='I-D.ietf-enum-3761bis'/>.
Therefore, in the existing IANA registration for this
Enumservice, the <registrationdocs> element
(Enumservice Specification) is enhanced
by adding a supplementary reference that points to this
document.
</t>
<t>
<vspace blankLines='0'/>e.g.
<vspace blankLines='0'/>This document requests an update of
the IANA registration of the Enumservice Type "foo" with
all its Subtypes, in order to declare it obsolete.
Therefore, in the existing IANA registration for this
Enumservice, the <usage> element (Intended Usage) is
changed to "OBSOLETE", and the <registrationdocs>
element (Enumservice Specification) is enhanced by adding a
supplementary reference that points to this document.
</t>
</section>
<section title='DNS Considerations (MANDATORY)'>
<t>In case the inclusion of protocols and URI Schemes into
ENUM specifically introduces new DNS issues, those MUST be
described within this section.
</t>
<t>Such DNS issues include, but are not limited to:
<vspace blankLines='1'/>
<list style='symbols'>
<t>Assumptions about ownership or administrative control of the
namespace.
<vspace blankLines='1'/></t>
<t>Requirement or need to use DNS wildcards.
<vspace blankLines='1'/></t>
<t>Incompatibility with DNS wildcards.
<vspace blankLines='1'/></t>
<t>Presence or absence of respective NAPTR Resource Records at
particular levels in the DNS hierarchy (e.g. only for "full"
E.164 numbers, or wildcards only).
<vspace blankLines='1'/></t>
<t>Use of any Resource Records (especially non-NAPTR) within or
beyond the e164.arpa namespace other than those needed to resolve
the domain names that appear in the "replacement" URI.
</t>
<vspace blankLines='1'/>
<t>Potential for significant additional load on the nameserver
chain due to use of the service, and the mitigation of such
additional load.</t>
<vspace blankLines='1'/>
<t>Mitigation of potential for DNS loops, specifically in
cases where the result URI of an Enumservice might be used
to trigger additional (subsequent) ENUM queries. This
applies in particular to Enumservices using
the <xref target='RFC3966'>'tel' URI scheme</xref> or any
other (future) URI scheme using (E.164) numbers.
The <xref target='RFC4759'>"ENUM Dip Indicator Parameter
for the 'tel' URI scheme"</xref> provides an example of a
loop mitigation mechanism.
</t>
</list>
</t>
<t>Rationale: some Enumservices try to exploit side effects
of the DNS that need to be explicitly discussed.
</t>
</section>
<section title='Other Sections (OPTIONAL)'>
<t>Other sections beyond those required above MAY be included in an
Enumservice Specification. These sections may relate to the specifics
of the intended use of the Enumservice registration, as well as to any
associated technical, operational, administrative, or other concerns.
</t>
<t>A use case SHOULD be included by the authors of the proposal, so
that experts can better understand the problem the proposal seeks
to solve (intended use of the Enumservice). The inclusion of such a
use case will both accelerate the Expert Review process, as well as
make any eventual registration easier to understand and implement
by other parties.</t>
<!-- redundant, now that text from "review guidelines" is moved to above
<t>It is highly recommended that a section describing the intended use
be included, as this will serve to inform Expert Reviewers as well as
assist potential implementers.
</t>
-->
</section>
</section>
<section anchor='processReg' title='The Process of Registering New Enumservices'>
<t>This section is an illustration of the process by which a new
Enumservice Registration Document is submitted for review and
comment, how such proposed Enumservices are reviewed, and how
they are published.</t>
<t><xref target='enumservice-reg-proc-author'/> shows what
authors of a Registration Document describing an Enumservice
MUST carry out before said Registration Document can be formally
submitted to IANA for Expert Review.
<xref target='enumservice-reg-proc-expert-review'/> shows the
process from Expert Review onwards.
</t>
<figure anchor='enumservice-reg-proc-author'>
<!-- <preamble>X-Enumservice Registration Process</preamble>-->
<artwork><![CDATA[
+----------------------------+
| Step 1: Read this document |
+----------------------------+
|
V
+-------------------------------+
| Step 2: Write R-D and submit |
+-------------------------------+
|
V
+--------------------------------------------+
| Step 3: Announce R-D and solicit feedback |<--+
+--------------------------------------------+ |
| |
V |
.^. |
. . |
+------------+ . Feed- . +------------+
| Update R-D |<---------< back >------------>| Update R-D |
| and submit | non-sub- . results . substantial | and submit |
+------------+ stantial . in: . changes +------------+
| changes . . needed
| needed Y
| | no changes needed
| V
| +-----------------------------+
+-------->| Step 4: Submit R-D to IANA |
+-----------------------------+
:
:
V
R-D: Registration Document
]]></artwork>
</figure>
<section title='Step 1: Read this Document in Detail'>
<t>This document describes all of the necessary sections
required and recommended, and makes suggestions on content.
</t>
</section>
<section title='Step 2: Write and Submit Registration Document'>
<t>An Internet-Draft (or another specification as
appropriate) MUST be written and made publicly available
(submitted). The Registration Document MUST follow the
guidelines according to Sections <xref target='cookbook'
format='counter' /> and <xref target='requiredSections'
format='counter' /> of this document.
The Review Guidelines for experts as defined in
<xref target='ExpRevGuidelines'/> MUST be regarded.
</t>
</section>
<section title='Step 3: Request Comments from the IETF Community'>
<t>The authors MUST send an email to <enum@ietf.org>,
in which comments on the Registration Document are requested. A
proper public reference (a URL is RECOMMENDED)
to the Registration Document MUST be included in this email.
</t>
<t>Note: The ENUM WG mailing list <enum@ietf.org> will
be kept open after conclusion of the ENUM WG.
</t>
<t>The authors SHOULD allow a reasonable period of time to
elapse, such as two to four weeks, in order to collect any
feedback. The authors then consider whether or not to
take any of those comments into account, by making changes to
the Registration Document and submitting a revision, or otherwise
proceeding. The following outcomes are open to the authors.
The choice of path is left to the authors' judgement.
</t>
<t>Note: Whatever the outcome is, the experts performing the
Expert Review later in the processs are not bound to any
decision during this phase.</t>
<section title='Outcome 1: No Changes Needed'>
<t>No changes to the Registration Document are made, and the
authors proceed to Step 4 below.</t>
<t>This outcome is recommended when the feedback received
does not lead to a new revision of the Registration Document.
</t>
</section>
<section title='Outcome 2: Changes, but no further Comments Requested'>
<t>The authors update the Registration Document and is/are
confident that all issues are resolved and do not require
further discussion. The authors proceed to Step 4
below.
</t>
<t>This outcome is recommended when minor objections have
been raised, or minor changes have been suggested.
</t>
</section>
<section title='Outcome 3: Changes and further Comments Requested'>
<t>The authors update and submit the Registration Document, and
proceed to Step 3 above, which involves sending another
email to <enum@ietf.org> to request additional
comments for the updated version.
</t>
<t>This outcome is recommended when substantial objections
have been raised, or substantial changes have been
suggested.
</t>
</section>
</section>
<section title='Step 4: Submit Registration Document to IANA'>
<t>The authors submit the Registration Document to IANA (using
the <http://www.iana.org/> website) for Expert Review.
</t>
<figure anchor='enumservice-reg-proc-expert-review'>
<!-- <preamble>Enumservice Registration Process</preamble>-->
<artwork><![CDATA[
:
:
V
+-----------------------+
| Step 5: Expert Review |<-------------+
+-----------------------+ |
| |
V |
.^. |
. . |
.---------. . Expert . +------------+
( Bad luck! )<-------- < Review >------------>| Update R-D |
`---------' experts . results . changes | and submit |
reject . in: . required +------------+
. .
Y
| experts approve
V
+-----------------------------------+
| Step 6: Publication of R-D |
+-----------------------------------+
|
V
+---------------------------------------------+
| Step 7: Adding Enumservice to IANA Registry |
+---------------------------------------------+
R-D: Registration Document
]]></artwork>
</figure>
</section>
<section title='Step 5: Expert Review'>
<t>IANA will conduct an "Expert Review" according
to <xref target='RFC5226'></xref>. The Expert Review
guidelines are outlined in <xref target='ExpRevGuidelines'/>
of this document. The authors MUST be prepared for further
interaction with IANA and the experts.</t>
<section title='Outcome 1: Experts Approve the Registration Document'>
<t>No (more) changes to the Registration Document are made.
IANA will inform the authors, who then will proceed to
Step 6 below.</t>
</section>
<section title='Outcome 2: Changes Required'>
<t>The experts might require changes before they can approve
the Registration Document. The authors update and submit
the Registration Document. The authors inform the experts
about the available update, who then continue the Expert
Review Process.
</t>
</section>
<section title='Outcome 3: Experts Reject the Registration Document'>
<t>The expert might reject the Registration, which means the
Expert Review process is discontinued.</t>
</section>
</section>
<section anchor='Step6' title='Step 6: Publication of the Registration Document'>
<t>The authors are responsible that the Registration
Document is published according to "Specification Required" as
defined in <xref target='RFC5226'></xref>.</t>
<t>As set out in <xref target='PubReq' /> it is strongly
RECOMMENDED to publish Enumservice Specifications as RFCs. As
to every RFC the normal IETF publication process applies (see
<xref target='Instructions2authors'/>); i.e. the Registration
Document is submitted in the form of an Internet Draft
(e.g. via an IETF Working Group or a sponsoring Area
Director). <xref target='Instructions2authors'/> also
contains an option to publish an RFC as 'Independent
Submission', which is further described in
<xref target='RFC4846'>"Independent Submissions to the RFC
Editor"</xref>.</t>
</section>
<section anchor='Step7' title='Step 7: Adding Enumservice to IANA Registry'>
<t>In case the Registration Document is to be published as
an RFC, the RFC publication process ensures that IANA will add
the Enumservice to the Registry.</t>
<t>In case the Registration Document is to be published in a
specification other than RFC, the authors MUST inform IANA, as
soon as the Enumservice Specification has been published
according to "Specification Required" as defined
in <xref target='RFC5226'></xref>. The <registrationdocs>
element in the IANA Template MUST contain an
unambiguous reference to the Enumservice Specification (see
also <xref target='enumServiceReg'></xref>). In addition, the
authors MUST provide IANA with a stable URL to the Enumservice
Specification, in order that IANA may obtain the information
included in the Enumservice Specification. IANA will then add
the Enumservice to the Registry.</t>
</section>
</section>
<section anchor='ExpRev' title='Expert Review'>
<section anchor='ExpRevSel' title='Expert Selection Process'>
<t>According to Section 3.2
of <xref target='RFC5226'></xref>,
experts are appointed by the IESG upon recommendation by the RAI
Area Directors. The RAI area directors are responsible for
ensuring that there is always a sufficient pool of experts
available.
<!-- The IESG may refine or change this ENUM experts' nomination process
at any time.-->
</t>
</section>
<section anchor='ExpRevGuidelines' title='Review Guidelines'>
<t>Generally, the "Expert Review" process of an Enumservice MUST
follow the guidelines documented in Section 3.3
of <xref target='RFC5226'>"Guidelines
for Writing an IANA Considerations Section in RFCs"</xref>.
</t>
<t>The experts MUST evaluate the criterion as set out
in <xref target='RFC5226'/>,
as well as consider the following:
<vspace blankLines='1'/>
<list style='symbols'>
<t>Verify conformance with the
<xref target='I-D.ietf-enum-3761bis'>ENUM specification</xref>.
</t>
<vspace blankLines='1'/>
<t>Verify that the requirements set out in this document
(Sections <xref target='requirements' format='counter' /> and
<xref target='requiredSections' format='counter' />) are
met. This includes check for completeness and whether all
the aspects described in Sections <xref target='requirements'
format='counter' /> and <xref target='requiredSections'
format='counter' /> are sufficiently addressed.
</t>
<vspace blankLines='1'/>
<t>If a use case is provided, the experts SHOULD verify whether
the proposed
Enumservice does actually match the use case. The experts SHOULD
also determine whether the use case could be covered by an existing
Enumservice.
</t>
<vspace blankLines='1'/>
<t>Verify that the Enumservice proposed cannot be confused
with identical (or similar) other Enumservices already
registered.
</t>
<vspace blankLines='1'/>
<t>If the Enumservice is classified according to
<xref target='classification'/>, the experts MUST verify
that the principles of the Class in question are followed.
</t>
<vspace blankLines='1'/>
<t>In case the Enumservice is not classified, the
experts MUST verify whether a convincing reason for the
deviation is provided in the Registration Document.
</t>
<vspace blankLines='1'/>
<t>Investigate whether the proposed Enumservice has any
negative side effects on existing clients and
infrastructure, particularly the DNS.
</t>
<vspace blankLines='1'/>
<t>If the output of processing an Enumservice may be used
for input to more ENUM processing (especially services
returning 'tel' URIs), the experts SHOULD verify that
the authors have adequately addressed the issue of potential
query loops.
</t>
</list>
</t>
<t>In case of conflicts between
<xref target='RFC5226'/> and
the guidelines in this section, the former remains
authoritative.
</t>
</section>
<section anchor='ExpRevAppeals' title='Appeals'>
<t>Appeals of Expert Review decisions follow the process
described in section 7 of <xref target='RFC5226'/>
and section 6.5 of <xref target='RFC2026'/>.
<!--The RAI area directors are responsible for handling appeals
against decisions of the Expert Reviews. They can either assign
(a) new expert(s) or reject the appeal. The IESG may refine or
change this process regarding appeals at any time.-->
</t>
</section>
</section>
<section anchor='RevisionOfExisting' title='Revision of Pre-Existing Enumservice Specifications'>
<t>Many Enumservice Registrations, published via IETF RFCs,
already exist at the time of the development of this document.
These existing Enumservice Specifications MAY be revised to comply
with the specifications contained herein. All revisions of
Enumservice Specifications MUST be compliant with the specifications
contained herein.
</t>
<t>Note: Enumservice Specifications updated only
by <xref target='I-D.ietf-enum-enumservices-transition' /> are not compliant
with the specifications contained herein!
</t>
</section>
<section anchor='ExtensionOfExisting' title='Extension of Existing Enumservice Specifications'>
<t>There are cases where it is more sensible to extend an
existing Enumservice registration rather than proposing a new
one. Such cases include adding a new Subtype to an existing
Type. Depending on the nature of the extension, the original
Enumservice Specification needs to be extended (Updates) or replaced
(Obsoletes) <xref target='RFC2223'></xref>.
Specifically, an update is appropriate when a new Subtype is
being added without changes to the existing repertoire. A
replacement is needed if there is a change to the default,
or changes to the assumptions of URI support in clients.
</t>
<t>Any Enumservice Specifications for existing Enumservices that
are extended MUST comply with the specifications contained
herein. As a consequence, revisions of existing Enumservice
Specifications according
to <xref target='RevisionOfExisting'></xref> may be required.
</t>
</section>
<section title='Security Considerations'>
<section title='Considerations Regarding This Document'>
<t>Since this document does not introduce any new technology, protocol,
or Enumservice Specification, there are no specific security issues to
be considered for this document. However, as this is a guide to authors
of new Enumservice Specifications, the next section should be
considered closely by authors and experts.
</t>
</section>
<section anchor='secguide' title='Enumservice Security Considerations Guideline'>
<t><xref target='I-D.ietf-enum-3761bis'/> already outlines
security considerations affecting ENUM as a whole.
Enumservice Specifications do not need to and SHOULD NOT
repeat considerations already listed in that document.
However, Enumservice Specifications SHOULD include a reference
to that section.
</t>
<t>
ENUM refers to resources using existing URI Schemes and protocols.
Enumservice Specifications do not need to and SHOULD NOT repeat
security considerations affecting those protocols and URI Schemes
themselves.
</t>
<t>However, in some cases, the inclusion of those protocols and URI
Schemes into ENUM specifically could introduce new security issues. In
these cases, those issues or risks MUST be covered in the "Security
Considerations" section of the Enumservice Specification.
Authors should pay particular attention to any indirect risks that are
associated with a proposed Enumservice, including cases where the
proposed Enumservice could lead to the discovery or disclosure of
Personally Identifiable Information (PII).
</t>
</section>
</section>
<section anchor='ianaConsiderations' title='IANA Considerations'>
<section anchor='registryUpdate' title='Registry Update'>
<t>IANA will update the Registry "Enumservice Registrations"
as defined in (this) <xref target='ianaConsiderations'/>,
which will replace the old mechanism as defined
in <xref target='RFC3761'>RFC 3761</xref>.
</t>
<t>It is noted that the process described herein applies only
to ordinary Enumservice registrations (i.e. the registration
process of "X-" Enumservices is beyond the scope of this
document).
</t>
</section>
<section anchor='RegistrationTemplate' title='Registration Template (XML chunk)'>
<t>The XML chunk listed below should be used as a template to
create the IANA Registration Template. Examples for the use of
this template are contained in <xref target='xmlexamples'/>.
</t>
<t>
<artwork><![CDATA[
<record>
<class> <!-- Enumservice Class --> </class>
<type> <!-- Type --> </type>
<subtype> <!-- Subtype --> </subtype>
<urischeme> <!-- URI Schema Name --> </urischeme>
<urischeme> <!-- another URI Schema Name --> </urischeme>
<functionalspec>
<paragraph>
<!-- Text that explains the functionality of
the Enumservice to be registered -->
</paragraph>
</functionalspec>
<security>
<!-- Change accordingly -->
See <xref type="rfc" data="rfc9999"/>, Section 7.
</security>
<usage> <!-- COMMON, LIMITED USE or OBSOLETE --> </usage>
<registrationdocs>
<!-- Change accordingly -->
<xref type="rfc" data="rfc9999"/>
</registrationdocs>
<requesters>
<!-- Change accordingly -->
<xref type="person" data="John_Doe"/>
<xref type="person" data="Jane_Dale"/>
</requesters>
<additionalinfo>
<paragraph>
<!-- Text with additional information about
the Enumservice to be registered -->
</paragraph>
<artwork>
<!-- There can be artwork sections, too -->
:-)
</artwork>
</additionalinfo>
</record>
<people>
<person id="John_Doe">
<name> <!-- Firstname Lastname --> </name>
<org> <!-- Organisation Name --> </org>
<uri> <!-- mailto: or http: URI --> </uri>
<updated> <!-- date format YYYY-MM-DD --> </updated>
</person>
<!-- repeat person section for each person -->
</people>
]]></artwork></t>
<!--
<t>The IANA Registration Template consists of the following
fields that are specified in
<xref target='enumServiceReg'/>:
<t>
<list style='symbols'>
<vspace blankLines='1'/><t>Enumservice Name:</t>
<vspace blankLines='1'/><t>Enumservice Class:</t>
<vspace blankLines='1'/><t>Enumservice Type:</t>
<vspace blankLines='1'/><t>Enumservice Subtype:</t>
<vspace blankLines='1'/><t>URI Schemes:</t>
<vspace blankLines='1'/><t>Functional Specification:</t>
<vspace blankLines='1'/><t>Security Considerations:</t>
<vspace blankLines='1'/><t>Intended Usage:</t>
<vspace blankLines='1'/><t>Registration Documents:</t>
<vspace blankLines='1'/><t>Registrants</t>
<vspace blankLines='1'/><t>Further Information:</t>
</list>
</t>
</t>
<t>Note: In the case where a particular field has no value,
'N/A' (Not Applicable) MUST be used. This case especially
may occur where a given Type has no Subtypes, or if there
is no "Further Information".
</t>
-->
</section>
<section anchor='Location' title='Location'>
<t>Approved Enumservice registrations are published in the
IANA Registry named "Enumservice Registrations", which is
available at the following URI:
<vspace blankLines='0' />
< http://www.iana.org/assignments/enum-services >.
</t>
<t>This Registry publishes representations derived from
the IANA Registration Template as
described in <xref target='RegistrationTemplate'/>
and specified in <xref target='enumServiceReg'/>.
</t>
<t>Where the Enumservice Specification is NOT an RFC, IANA MUST hold
an escrow copy of that Enumservice Specification. Said escrow copy
will act as the master reference for that Enumservice Registration.
</t>
</section>
<section anchor='Structure' title='Structure'>
<t>IANA maintains the Enumservice Registry sorted in
alphabetical order. The first sort field is Type, the
second is Subtype.</t>
<t>Each Enumservice starts with a caption, which is composed
of Type and Subtype, separated by a colon; e.g. if the Type
is "foo" and the Subtype "bar", the resulting caption is
"foo:bar".
</t>
<t><xref target='I-D.ietf-enum-enumservices-transition' />
updates the existing Enumservices by transforming them into
the new XML chunk based IANA Registration Template (see also
<xref target='RevisionOfExisting' />).
</t>
</section>
<section anchor='expertReviewProcedure' title='Expert Review Procedure'>
<t>Whenever a Registration Document is submitted via the
IANA website, IANA will take care of the "Expert Review"
process according to <xref target='RFC5226'>"Guidelines for
Writing an IANA Considerations Section in RFCs"</xref>.</t>
<t>To prevent clashes IANA will check whether a request with
identical "type:subtype" (or "type" without Subtype) was
submitted for Expert Review earlier and will inform the
experts accordingly. It is up to the experts to resolve
possible clashes.</t>
<t>Once the experts have approved the Enumservice, IANA will
inform the authors. This information SHOULD also include a
reminder that (i) the authors are now responsible for
publication of the Registration Document (see
also <xref target='Step6'></xref>) and (ii) the Enumservice
will be added to the IANA Registry only after its
Enumservice Specification is published according to
the "Specification Required" policy as defined
in <xref target='RFC5226'></xref> (see
also <xref target='Step7'></xref>).</t>
<t>Note: After sending the approval note to the authors, IANA
has no further responsibilities besides keeping internal
records of approved Registration Documents. IANA will be
involved again at registration of the Enumservice (see
<xref target='ianaRegistrationProcedure'></xref>).</t>
</section>
<section anchor='ianaRegistrationProcedure' title='Registration Procedure'>
<t>There is a slight difference in process depending on
whether or not the Enumservice Specification will be
published as an RFC. The reason for this difference lies in the
current RFC publication process that foresees IANA
interaction shortly before publication of an RFC.</t>
<section anchor='RegistrationRFC' title='Published as RFC'>
<t>As per the RFC publication process IANA will receive the
Enumservice Specification to carry out IANA actions
shortly before publication of the RFC. The IANA action
will be to register the Enumservice, i.e. add the
Enumservice to the IANA "Enumservice Registrations"
Registry (see also <xref target='Location'></xref>).
</t>
<t>IANA MUST only add Enumservices to the Registry,
if the experts have approved the corresponding Enumservice
Specification as to be published. IANA SHOULD attempt to
resolve possible conflicts arising from this together with
the experts. In case changes between the approved and the
to be published version are substantial, IANA MAY reject
the request after consulting the experts.</t>
<t>IANA MUST ensure that any further changes the
Enumservice Specification might undergo before final RFC
publication are approved by the experts.</t>
</section>
<section anchor='RegistrationNonRFC' title='Published as generic Specification'>
<t>Once the authors have informed IANA about the
publication, IANA MUST ensure that the requirements to
"Specification Required" as defined in
<xref target='RFC5226' /> are met, the reference to the
specification is unambiguous, and the content of the
Enumservice Specification is identical to the Registration
Document as approved by the experts. IANA will then
register the Enumservice, i.e. add the Enumservice to the
IANA "Enumservice Registrations" Registry, and make an
escrow copy (see also <xref target='Location'></xref>).
</t>
<t>IANA MUST only add Enumservices to the Registry,
if the experts have approved the corresponding Enumservice
Specification as published. IANA SHOULD attempt to resolve
possible conflicts arising from this together with the
experts. In case changes between the approved and the
published version are substantial, IANA MAY reject the
request after consulting the experts.</t>
</section>
</section>
<section anchor='ChangeControl' title='Change Control'>
<t>Change control of any Enumservice Registrations is done
by "Specification Required",
which implies the use of a Designated Expert, according to
<xref target='RFC5226'/>. Updates of Enumservice
Specifications MUST comply with the guidelines described in
this document. Updates are handled the same way as
initial Enumservice Registrations.
</t>
<t>Authorized Change Controllers are the experts and the
IESG.</t>
<t>Enumservice registrations MUST NOT be deleted. An
Enumservice that is believed no longer appropriate for use
can be declared obsolete by publication of a new
Enumservice Specification changing its <usage> element
(Intended Usage) to "OBSOLETE"; such Enumservices will be
clearly marked in the lists published by IANA.
As obsoletions are updates, they are also handled the same
way as initial Enumservice Registrations.
</t>
</section>
<section anchor='Restrictions' title='Restrictions'>
<t>As stated in <xref target='NamingReq'/>, a "-" (dash)
MUST NOT be used as the first nor as the second
nor as the last character of
a Type nor a Subtype. Furthermore, Type nor Subtype of
any Enumservice MUST NOT be set to nor start with "E2U".
Any Enumservice
registration requests not following these restrictions MUST be
rejected by IANA, and the Expert Review process SHOULD NOT
be initiated.
</t>
<t><xref target='enumServiceReg'/> contains examples for
Enumservice registrations. Therefore, IANA MUST NOT register
an Enumservice with Type or Subtype set to "foo", "bar", or
"sbar", unless the experts explicitly confirm an exception.
</t>
</section>
</section>
<section title='Acknowledgements'>
<t>The authors would like to thank the following people who have
provided feedback or significant contributions to the
development of this document:
Gonzalo Camarillo, Lawrence Conroy, Michelle Cotton,
Alfred Hoenes, Peter Koch, Edward Lewis, Jon Peterson, and Pekka
Savola</t>
<t>Lawrence Conroy has provided extensive text for the
Enumservice Classification section.
</t>
<t>Section 3 of <xref target='RFC3761'>RFC 3761</xref>, which
was edited by Patrik Faltstrom and Michael Mealling, has been
incorporated into this document. Please see the Acknowledgments
section in RFC 3761 for additional acknowledgments.
</t>
</section>
</middle>
<back>
<references title='Normative References'>
&rfc2119;
&rfc2026;
&rfc3761;
&I-D.rfc3761bis;
&rfc3402;
&rfc3403;
&rfc5226;
</references>
<references title='Informative References'>
&I-D.enum-svc-trans;
&rfc1035;
&rfc2223;
<reference anchor='Instructions2authors'>
<front>
<title>Instructions to Request for Comments (RFC) Authors</title>
<author initials='J' surname='Reynolds' fullname='Joyce Reynolds'>
<organization />
</author>
<author initials='R' surname='Braden' fullname='Robert Braden'>
<organization />
</author>
<date month='August' day='01' year='2004' />
<abstract>
<t>This memo provides information for authors of Request for Comments
(RFC) documents. It summarizes RFC editorial policies
and formatting requirements, addresses frequently-asked
questions, and serves as a model for constructing a
properly formatted RFC.
</t>
</abstract>
</front>
<seriesInfo name="RFC Editor"
value="http://www.rfc-editor.org/rfc-editor/instructions2authors.txt" />
<format type='TXT'
target='http://www.rfc-editor.org/rfc-editor/instructions2authors.txt' />
</reference>
&rfc2606;
&rfc3552;
&rfc3764;
&rfc3966;
&rfc3986;
&rfc4238;
&rfc4279;
<!-- &rfc4355; -->
&rfc4759;
&rfc4846;
&rfc4969;
&rfc4979;
&rfc5234;
<reference anchor="ITU.E164.2005">
<front>
<title>The International Public Telecommunication Numbering Plan</title>
<author>
<organization>International Telecommunications Union</organization>
</author>
<date month="Feb" year="2005" />
</front>
<seriesInfo name="ITU-T" value="Recommendation E.164" />
</reference>
</references>
<section title='IANA XML Template Examples' anchor='xmlexamples'>
<t>This section contains non-normative examples of the IANA
Registration Template XML chunk.
</t>
<vspace blankLines="1"/>
<t>This is the first example:</t>
<vspace blankLines="1"/>
<t>
<artwork><![CDATA[
<record>
<class>Protocol-Based</class>
<type>email</type>
<subtype>mailto</subtype>
<urischeme>mailto</urischeme>
<functionalspec>
<paragraph>
This Enumservice indicates that the resource
can be addressed by the associated URI in
order to send an email.
</paragraph>
</functionalspec>
<security>
See <xref type="rfc" data="rfc4355"/>, Section 6.
</security>
<usage>COMMON</usage>
<registrationdocs>
<xref type="rfc" data="rfc4355"/>
</registrationdocs>
<requesters>
<xref type="person" data="Lawrence_Conroy"/>
</requesters>
</record>
<people>
<person id="Lawrence_Conroy">
<name>Lawrence Conroy</name>
<org>Siemens Roke Manor Research</org>
<uri>mailto:lwc@roke.co.uk</uri>
<updated>2008-11-20</updated>
</person>
</people>
]]></artwork></t>
<vspace blankLines="1"/>
<t>This is the second example.</t>
<vspace blankLines="1"/>
<t>
<artwork><![CDATA[
<record>
<class>Protocol-Based</class>
<type>xmpp</type>
<urischeme>xmpp</urischeme>
<functionalspec>
<paragraph>
This Enumservice indicates that the
resource identified is an XMPP entity.
</paragraph>
</functionalspec>
<security>
See <xref type="rfc" data="rfc4979"/>, Section 6.
</security>
<usage>COMMON</usage>
<registrationdocs>
<xref type="rfc" data="rfc4979"/>
</registrationdocs>
<requesters>
<xref type="person" data="Alexander_Mayrhofer"/>
</requesters>
</record>
<people>
<person id="Alexander_Mayrhofer">
<name>Alexander Mayrhofer</name>
<org>enum.at GmbH</org>
<uri>mailto:alexander.mayrhofer@enum.at</uri>
<updated>2008-10-10</updated>
</person>
</people>
]]></artwork></t>
<vspace blankLines="1"/>
<t>This is the third example:</t>
<vspace blankLines="1"/>
<t>
<artwork><![CDATA[
<record>
<class>Application-Based</class>
<type>voicemsg</type>
<subtype>sip</subtype>
<urischeme>sip</urischeme>
<functionalspec>
<paragraph>
This Enumservice indicates that the resource
identified can be addressed by the associated
URI scheme in order to initiate a voice
communication session to a voice messaging system.
</paragraph>
</functionalspec>
<security>
See <xref type="rfc" data="rfc4279"/>, Section 3.
</security>
<usage>COMMON</usage>
<registrationdocs>
<xref type="rfc" data="rfc4279"/>
</registrationdocs>
<requesters>
<xref type="person" data="Jason_Livingood"/>
<xref type="person" data="Donald_Troshynski">
</requesters>
<additionalinfo>
<paragraph>
Implementers should review a non-exclusive list of
examples in <xref type="rfc" data="rfc4279"/>,
Section 7.
</paragraph>
</additionalinfo>
</record>
<people>
<person id="Jason_Livingood">
<name>Jason Livingood</name>
<org>Comcast Cable Communications</org>
<uri>mailto:jason_livingood@cable.comcast.com</uri>
<updated>2008-11-20</updated>
</person>
<person id="Donald_Troshynski">
<name>Donald Troshynski</name>
<org>Acme Packet</org>
<uri>mailto:dtroshynski@acmepacket.com</uri>
<updated>2008-11-20</updated>
</person>
</people>
]]></artwork></t>
<t>Note: The "voicemsg" Enumservice has several Subtypes. For
each Subtype, an individual XML chunk must be submitted to IANA,
with only the first one shown above. This is to avoid any
ambiguity of the relation between <subtype> and
<urischeme> elements.
</t>
</section> <!-- end of 'IANA XML Template and Examples' section -->
<section title='Changes Overview'>
<t>This section lists the changes applied to the Enumservice
registration process and the IANA Registry definition, compared to
RFC 3761.
</t>
<vspace blankLines='1'/>
<list style='symbols'>
<t>While RFC 3761 required "Standards track or Experimental"
RFCs for an Enumservice to be registered, this document
mandates "Specification Required", which implies the use of
a Designated Expert.</t>
<vspace blankLines='1'/>
<t>This document defines the classification of Enumservices.
The IANA Registration Template has been complemented to
contain a <class> element (Enumservice Class).
</t>
<vspace blankLines='1'/>
<t>A new element <registrationdocs> (Enumservice
Specification) has been added to the IANA Registration
Template.
</t>
<vspace blankLines='1'/>
<t>The former field "Any other information that the author
deems interesting" of the IANA Registration Template turned
into the <additionalinfo> element (Further Information).
</t>
<vspace blankLines='1'/>
<t>The Enumservice "Name" field has been removed from the IANA
Registration Template.
</t>
<vspace blankLines='1'/>
<t>The Registration Template is now a chunk of XML data,
reflecting IANA's recent work to convert registries to XML.
</t>
</list>
</section> <!-- end of 'Changes Overview' section -->
<section title='Document Changelog'>
<t>[RFC Editor: This section is to be removed before publication]</t>
<t>draft-ietf-enum-enumservices-guide-20:
<list style='symbols'>
<t>bernie: minor editorial (Feedback Alfred Hoenes)</t>
<t>bernie: updated my author's address (swisscom -> ucom.ch)</t>
<t>bernie: clarified IANA registration policy: "Specification
Required", which implies "Expert Review", i.e.
point to a single policy (Feedback Gonzalo
Camarillo)
</t>
<t>bernie: Further clarifications concerning mailing list
and experts (Feedback Gonzalo Camarillo)
</t>
<t>bernie: Rewording of recommendations for search for existing work</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-19:
<list style='symbols'>
<t>bernie: updated reference to specific RFC3761bis section</t>
<t>bernie: corrected several typos / grammar / clarity
issues reported by Alfred Hoenes</t>
<t>bernie: added long versions of DNS and NAPTR /
added DNS (incl. reference) to introduction</t>
<t>bernie: cleared out NAPTR DNS RR in Functionality Requirements</t>
<t>bernie: rewrote 2nd paragraph in Step 6</t>
<t>bernie: cleared out 3rd paragraph of
<xref target='expertReviewProcedure'></xref> </t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-18:
<list style='symbols'>
<t>bernie: corrected <requester> -> <requesters></t>
<t>bernie: changed "(sub)type name" -> "(sub)type string"
to be consistent</t>
<t>bernie: changed "element" -> "field" when referring to the old
IANA template</t>
<t>bernie: lots of small editorial/punctuation changes</t>
<t>bernie: changed my author's address</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-17:
<list style='symbols'>
<t>bernie: As per IANA feedback changed the process in a way, that
Expert Review takes place before the publication process
is started (even in RFC case)</t>
<t>bernie: Restructured IANA Considerations section</t>
<t>bernie: IANA to ensure only expert reviewed versions are published as RFC</t>
<t>bernie: Editorial changes to section 'IANA Registration (MANDATORY)' (made sub-sections)</t>
<t>bernie: Added a note that IANA is to check for clashes in type:subtype naming</t>
<t>bernie: redundant sentences about (not) skip Step 6 removed in Step 4</t>
<t>bernie: Added clarification that extended Enumservices not
complying with the new rules need to be updated</t>
<t>bernie: Added explicit Section for ABNF in references to 3761bis</t>
<t>bernie: Removed explicit hint / internal reference to appeal in
Outcome 3 of step 5</t>
<t>bernie: Reference from naming requirements to cookbook as
requirement, not only recommendation.</t>
<t>bernie: Explicit instructions to IANA to make the escrow copy</t>
<t>bernie: Lowercased vCard example for Type</t>
<t>bernie: Not that enum-svc-trans does not update compliant with this spec</t>
<t>bernie: Added Pekka Savola and Michelle Cotton to Acknowledgments.
The above changes are a result of Pekka's feedback.</t>
<t>bernie: Typo in Step 6 corrected (Step 5 -> step 6)</t>
<t>bernie: 'IANA Template' -> 'XML chunk based IANA template' (in Structure)</t>
<t>bernie: Removed reference to RFC4355 (not used)</t>
<t>bernie: Updated ipr attribute to 'pre5378Trust200902'
according to http://www.ietf.org/mail-archive/web/syslog/current/msg02333.html</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-16:
<list style='symbols'>
<t>bernie: capitalize "-based" in <class></t>
<t>bernie: consistent usage of plural for <requesters></t>
<t>bernie: changed title/naming for element <registrationdocs>
(not changing element name itself)</t>
<t>bernie: updated Changes Overview section</t>
<t>bernie: clarified Open Issues section to be removed before publication</t>
<t>bernie: whitespace changes (indentations, line-breaks) in XML chunks</t>
<t>bernie: changed drama number in the example to a non-premium
rate one (feedback Lawrence Conroy)</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-15:
<list style='symbols'>
<t>bernie: cleared out authors/requesters</t>
<t>alex: added ABNF reference + acronym expansion</t>
<t>alex: changed order of paragraphs in introduction - registry
update now in front of blah blah paragraph</t>
<t>alex: various editorial and formatting updates to the new
XML template specs. </t>
<t>alex: moved XML template to IANA considerations</t>
<t>alex: removed "identifying tag" language</t>
<t>alex: clarified "element" vs. "field" usage - "element"
now refers to XML chunk pieces of IANA registration,
while "fields" refers to other things, like fields
of a NAPTR record, etc.</t>
<t>alex: removed more subtypes from third example - one subtype
per template ensures that there is no confusion between
the URI schemes for various subtypes</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-14:
<list style='symbols'>
<t>alex: changed template information in description of fields to
XML chunk information</t>
<t>alex: added references to person information in examples</t>
<t>alex: replaced "registrant" with "requester"</t>
<t>bernie: minor editorial corrections and nits</t>
<t>jason: added the IANA XML chunk, as well as some examples</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-13:
<list style='symbols'>
<t>alex: Some minor changes - the only real open issue is
whether or not we should go to an XML template instead of the
plain text one. IANA provided a "chunk", but gave no feedback
about schema, namespace, etc. so it is deemed not "normative"
enough yet.
</t>
<t>bernie: Implemented IANA Feedback: made difference
between RFC and no-RFC specs more clear; now the both
variants slightly differ in process.</t>
<t>bernie: Implemented more feedback of Peter Koch:
<list style='symbols'>
<t>Terminology updated throughout the document:
Enumservice Specification / Registration Document</t>
<t>Changed IANA Template field 'Registration Document(s)
to 'Enumservice specification(s)'</t>
<t>Disallow dash '-' as last char of Type or Subtype </t>
<t>Removed XML2RFC template and referencing sections</t>
</list>
</t>
<t>bernie: changed "Subtype names MAY be shared between URI
Schemes that the Registration specifies as mandatory to
implement for a given Subtype." to "Subtype names MAY be
shared between URI Schemes, if all the URI Schemes within
the same Subtype are mandatory to implement."</t>
<t>bernie: Cleared out independent submission and added
reference to RFC 4846</t>
<t>jason: Per the co-chair and Peter Koch, doc changed to BCP.
Doc doesn't specify a protocol but a process. Both RFC 2026,
section 5, and section 4.3 of RFC 5226 suggest that process documents,
and IANA Guidelines in particular, usually are published as BCP RFCs.
Also, there's little to implement independently in this draft that
could help advance it on the Standards Track.
</t>
<t>jason: various nits clean-up suggested by Peter Koch.</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-12:
<list style='symbols'>
<t>bernie: Refined process, i.e. separation of Expert Review
and addition to IANA Registry (only after publication of spec):
<list style='symbols'>
<t>Split up "Further Steps" into three new sections</t>
<t>Extended ASCII Art</t>
<t>Adjusted IANA considerations</t>
</list>
</t>
<t>bernie: Updated Open Issues</t>
<t>alex: Added reference to RFC3552 (security considerations
guidance)</t>
<t>alex: Added instructions2author as informative reference -
i don't see another way (revision 439, closing ticket 25)</t>
<t>alex: Moved text about use cases from Review Guidelines
up to "other sections", slightly reworded it (revision 438,
closing ticket 66)</t>
<t>bernie: Updated own contact details</t>
<t>bernie: Implemented editorial feedback from Alfred Hoenes</t>
<t>bernie: Added some clarifications to IANA consideration as
proposed by Michelle Cotton (IANA)</t>
<t>bernie: Edited appendix "Changes Overview",
moved stuff from "Introduction" to "Changes Overview"</t>
<t>bernie: Updated IANA section "Change Control":
<list style='symbols'>
<t>Authorized Change controllers are experts and IESG</t>
<t>Removed field "Authorized Change Controller"
(was introduced in -11)</t>
</list>
</t>
<t>bernie: Replaced "number blocks" by "wildcards"
(DNS Considerations) to avoid conflict with RFC3761</t>
<t>bernie: Extended recommendations about search for previous work</t>
<t>bernie: Adjusted sections "Revision of Pre-Existing
Enumservice RFCs" and "Submit Registration Document to IANA"</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-11:
<list style='symbols'>
<t>bernie: Replaced reference rfc2434bis with rfc5226</t>
<t>bernie: Moved terminology related paragraph from
Introduction to Terminology Section</t>
<t>bernie: Added reference to transition document</t>
<t>jason: Updated my author address</t>
<t>jason: Closed out active tickets at
http://ietf.enum.at/cgi-bin/trac.cgi/report/1</t>
<t>jason: Section 8, review of pre-existing enumservices, updated with
IETF 72 feedback that this must take place</t>
<t>jason: Ticket 39: Added text to section 4.1, general enumservice
considerations, section 2, bullet 2 to address comment by Lawrence
Conroy about expired I-Ds </t>
<t>jason: Ticket 45: Added text to section 7.1, expert review / review
guidelines, bullet 3, to indicate that a use case SHOULD be included.
Also added related text to section 5.8, other sections, to address
this. This resolves comments by Lawrence Conroy</t>
<t>jason: Ticket 55: Replaced 'repository' with 'registry' throughout
the document to normalize this text and make it uniform.</t>
<t>jason: Ticket 52: Checked references to ensure rfc5226 is cited
instead of rfc2434bis, which Bernie seems to have mainly covered. I
also added a reference in the header for rfc5226, since it is a
normative reference.</t>
<t>jason: Ticket 25: Removed reference to rfc2223bis-08 as this I-D is
now listed as dead.</t>
<t>jason: Ticket 49: Have updated section 5.2, IANA registration, bullet
on authors addresses, to say that email addresses MUST NOT be
included in the IANA Registry. I opened a related ticket. Seems
there are some email addresses in the registry. Also simplified
author(s) and expert(s) to authors and experts throughout.</t>
<t>jason: Ticket 28: Minor changes to Section 10.1 and 10.2, Security
Considerations</t>
<t>jason: Ticket 30: Updated section 6.4, 6.5, on IANA registration to
include that submission must be in XML format for IANA and that the
Enumservice must have an RFC number, per discussion at IETF 72</t>
<t>jason: Ticket 42: Cleaned up section 5.7, DNS considerations, per
comments from Lawrence.</t>
<t>jason: Updated definitions to reflect IANA Designated Experts per
RFC 5226, and clean up of IANA-related terms (Registry, Template,
etc.)</t>
<t>jason: Ticket 51: added section to describe the need to have a contact
listed for updating a registration, per RFC 5226, section 5.2.</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-10:
<list style='symbols'>
<t>bernie: No longer empty field for IANA Registration
('N/A' must be used in this case)</t>
<t>bernie: Adjusted IANA Registration Template:
<list style='symbols'>
<t>Registration Document -> Registration Document(s)</t>
<t>Author -> Author(s)</t>
</list>
</t>
<t>bernie: IANA repository in alphabetical order by Type and Subtype</t>
<t>bernie: Class, Type, Subtype and URI Schema to begin with capital</t>
<t>bernie: Caption for each Enumservice</t>
<t>bernie: Consistent use of "field" for fields within IANA registration
template (no longer used are "item" or "section")</t>
<t>bernie: URI Schemes without colons and between single quotes,
no longer email address in author(s) field</t>
<t>bernie: Adjusted IANA Registration Section of XML2RFC template</t>
<t>alex: Added List of Classes to choose from</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-09:
<list style='symbols'>
<t>alex: Removed Enumservice "Name" as decided at IETF 71</t>
<t>alex: Reworded registration requirements</t>
<t>alex: Explained possible values for "Intended Usage"</t>
<t>bernie: Rewrite of section 'Change Control'</t>
<t>bernie: Cleared out scope of this document (only
ordinary, but no 'X-' registrations)</t>
<t>bernie: Cleared out naming restrictions in IANA section</t>
<t>bernie: Changed section name from 'ENUM Service Registration'
to 'IANA Registration'</t>
<t>bernie: Combined Expert Review related sections</t>
<t>bernie: Partly implemented feedback Alfred Hoenes
and added him to Acknowledgments</t>
<t>bernie: Enhanced examples for "Registration Document"</t>
<t>bernie: Enhanced examples for "IANA Considerations" (feedback from Alfred Hoenes)</t>
<t>bernie: Removed Note about RFC3761bis obsoleting RFC3761 (does not belong to this doc)</t>
<t>bernie: Rewrote Naming Requirements section (impact to IANA Considerations - Restrictions)</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-08:
<list style='symbols'>
<t>alex: new text for Subtypes of protocol class enumservices ("mandatory to implement" stuff)</t>
<t>alex: added "to be foreseen" to the application Type Subtype recommendation</t>
<t>alex: added "lowercase" recommendation to the Type names</t>
<t>bernie: Corrected various typos, clarifications,
and other editorial stuff (feedback from Lawrence Conroy)</t>
<t>bernie: IANA Registry ftp -> http (feedback from Lawrence Conroy)</t>
<t>bernie: Made steps prior to IANA submission mandatory (feedback from Lawrence Conroy)</t>
<t>bernie: Shortened abstract</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-07:
<list style='symbols'>
<t>bernie: Section DNS considerations made mandatory</t>
<t>bernie: Complete rewrite of IANA considerations</t>
<t>bernie: XML2RFC template will be downloadable at IANA</t>
<t>bernie: Complete re-write of process</t>
<t>alex: Adjusted Cook-book / classification</t>
<t>bernie: Take over chapter "Registration mechanism
for Enumservices" from RFC 3761bis</t>
<t>bernie: Changed title to adjust to new purpose</t>
<t>bernie: Intended status changed to Standards Track (was bcp)</t>
<t>bernie: Obsoletes (partly) RFC 3761</t>
<t>bernie: Adjusted section "Registration mechanism for Enumservices"</t>
<t>bernie: Updated most RFC 3761 references to either RFC3761bis or new (internal) section</t>
<t>bernie: Acknowledgment for RFC3761 contributors</t>
<t>bernie: Shortened bullet point in IANA Registration Template:
<list style='empty'>
<t>"Any other information that the author deems interesting"</t>
<t>==> "Further Information"</t>
</list>
</t>
<t>alex: Rewritten Abstract, Introduction to be consistent with
with new goal (IANA Registry description)</t>
<t>alex: Add obsoletes section 3 of RFC 3761 to Introduction</t>
<t>alex: Changed section 3 to "registration requirements",
Simplified structure</t>
<t>alex: Added examples for protocol Enumservice classification</t>
<t>alex: Added text about "other" classification</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-06:
<list style='symbols'>
<t>alex: updated Class Schemes.</t>
<t>alex: updated expert's tasks</t>
<t>alex: added experts review considerations</t>
<t>bernie: Moved Terminology section in XML2RFC template (now after Introduction)</t>
<t>bernie: Class is now part of the Enumservice registration in the IANA template</t>
<t>bernie: Individual Submission relaxed (comment Peter Koch)</t>
<t>bernie: updated vcard Ref (now RFC)</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-05:
<list style='symbols'>
<t>bernie/alex: added text for sections 'The Enumservice
Expert Selection Process' and 'The Process for Appealing
Expert Review Decisions'</t>
<t>bernie: added ASCII-art figure for registration process</t>
<t>bernie: adjusted registration process</t>
<t>jason: proposed registration process</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-04:
<list style='symbols'>
<t>bernie: added section about Extension of existing Enumservice RFCs</t>
<t>bernie: added open issue about future registration process</t>
<t>bernie: added category (bcp)</t>
<t>bernie: clean up in Security Considerations</t>
<t>bernie: editorial stuff (mainly XML issues)</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-03:
<list style='symbols'>
<t>alex: moved terminology section</t>
<t>alex: removed note asking for feedback</t>
<t>bernie: added DNS consideration section</t>
<t>bernie: added Acknowledgments section</t>
<t>bernie: editorial stuff (nicer formating, fixing too long lines)</t>
<t>alex: added security considerations from vcard draft.</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-02:
<list style='symbols'>
<t>bernie: replaced numbers in examples by "Drama Numbers"</t>
<t>bernie: moved Change and Open Issues to Appendix.</t>
<t>bernie: major rewrite of section "6. Required Sections and
Information" incl. separating explanations and examples.</t>
<t>bernie: removed section 7 (was just a repetition of referencing to XML2RFC template)</t>
<t>bernie: extended Appendix with Open Issues.</t>
</list>
</t>
<t>draft-ietf-enum-enumservices-guide-01:
<list style='symbols'>
<t>alex: added Security Considerations section for the doc itself</t>
<t>alex: added IANA Considerations section for the doc itself</t>
<t>alex: added cookbook idea</t>
</list>
</t>
</section>
<section title='Open Issues'>
<t>[RFC Editor: This section should be empty and is to be removed before publication]
<list style='symbols'>
<t>None</t>
</list>
</t>
</section>
</back>
</rfc>
<!-- LocalWords: mailto sms PSTN vpim vCard XMPP xmpp imap sbar NAPTRs PII gt
-->
<!-- LocalWords: namespace RRSet wildcards RRs arpa stantial pstn MyAddress
-->
<!-- LocalWords: MyOrganization MyCity MyCountry Myphonenumber MyEmailAddress
-->
<!-- LocalWords: MyWebpage URIs XXXX MyName MySurname myEmail fooing ITU XYZ
-->
<!-- LocalWords: enumservices vcard formating subtyped Barfoo passcodes IPv
-->
<!-- LocalWords: rfc Patrik Faltstrom Mealling Hoenes downloadable namespaces
-->
<!-- LocalWords: incl RFCXXXX MyFirstname Swisscom Hardturmstrasse bernhard
-->
<!-- LocalWords: hoeneisen swisscom com enum GmbH Karlsplatz Wien Comcast RAI
-->
<!-- LocalWords: IETF's bis ABNF interoperability HTTP tel foo Foobar BCP Pre
-->
<!-- LocalWords: IESG alex jason pre enumservice Ds ftp http bcp WG ft pres
-->
<!-- LocalWords: ietf obsoletions Conroy bernie co IANA Zuerich DNS Naur Roke
-->
<!-- LocalWords: urischeme additionalinfo registrationdocs nameserver nd svc
-->
<!-- LocalWords: Mayrhofer voicemsg Livingood Troshynski Lowercased ipr
-->
<!-- LocalWords: whitespace
-->
| PAFTECH AB 2003-2026 | 2026-04-24 04:05:04 |