<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "http://xml.resource.org/authoring/rfc2629.dtd"
[
  <!ENTITY RFC3735 PUBLIC ''
   'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3735.xml'>
  <!ENTITY RFC3979 PUBLIC ''
   'http://xml.resource.org/public/rfc/bibxml/reference.RFC.3979.xml'>
  <!ENTITY RFC4879 PUBLIC ''
   'http://xml.resource.org/public/rfc/bibxml/reference.RFC.4879.xml'>
  <!ENTITY RFC5226 PUBLIC ''
   'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5226.xml'>
  <!ENTITY RFC5730 PUBLIC ''
   'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5730.xml'>
  <!ENTITY RFC5890 PUBLIC ''
   'http://xml.resource.org/public/rfc/bibxml/reference.RFC.5890.xml'>
]>

<?rfc toc="yes"?>
<?rfc tocompact="yes"?>
<?rfc tocdepth="4"?>
<?rfc compact="yes"?>
<?rfc subcompact="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc iprnotified="no"?>
<?rfc strict="yes" ?>

<rfc category="info" docName="draft-ietf-eppext-reg-10" ipr="trust200902">
  <front>
    <title abbrev="EPP Extension Registry">Extension Registry for the Extensible Provisioning Protocol</title>
    <author initials="S." surname="Hollenbeck" fullname="Scott Hollenbeck">
      <organization>Verisign Labs</organization>
      <address>
        <postal>
          <street>12061 Bluemont Way</street>
          <city>Reston</city>
          <region>VA</region>
          <code>20190</code>
          <country>US</country>
        </postal>
        <email>shollenbeck@verisign.com</email>
        <uri>http://www.verisignlabs.com/</uri>
      </address>
    </author>
    <date/>
    
    <abstract>
      <t>The Extensible Provisioning Protocol (EPP) includes features to add functionality by extending the protocol.
      It does not, however, describe how those extensions are managed. This document describes a procedure for the
      registration and management of extensions to EPP and it specifies a format for an IANA registry to record those
      extensions.</t>
    </abstract>
  </front>
  
  <middle>
    <section title="Introduction">      
      <t>Domain name registries implement a variety of operational and business models. The differences in these models
      made it impossible to develop a "one size fits all" provisioning protocol, so the Extensible Provisioning Protocol
      (EPP, <xref target="RFC5730"/>) was designed to focus on a minimal set of common functionality with built-in extension
      capabilities that allow new features to be specified on an "as needed" basis. Guidelines for extending EPP are documented
      in Informational RFC 3735 <xref target="RFC3735"/>.</t>
      
      <t>RFCs 3735 and 5730 do not describe how extension development can be managed and coordinated. This has led to a
      situation in which server operators can develop different extensions to address similar needs, such as the provisioning
      of Value Added Tax (VAT) information. Clients then need to support multiple extensions that serve similar purposes,
      and interoperability suffers.</t>
      
      <t>An IANA registry can be used to help manage and coordinate the development of protocol extensions. This document
      describes an IANA registry that can be used to coordinate the development of EPP extensions.</t>
    </section>

    <section anchor="spec-proc" title="Extension Specification and Registration Procedure">
      <t>This section describes the format of an IANA registry and the procedures used to populate and manage registry entries.</t>
      
      <section anchor="specs" title="Extension Specification">        
        <t>This registry uses the "Specification Required" policy described in RFC 5226 <xref target="RFC5226"/>. An English
        language version of the extension specification will referenced from the registry, though non-English versions of the
        specification can also be provided. Note that Section 2.1 of RFC 3735 <xref target="RFC3735"/> provides specific
        guidelines for documenting EPP extensions.</t>
        
        <t>Note that the "Specification Required" policy implies review by a Designated Expert. Section 3 of RFC 5226
        describes the role of Designated Experts and the function they perform.</t>
        
        <section anchor="expert" title="Designated Expert Evaluation Criteria">
          <t>A high-level description of the role of the Designated Expert is described in Section 3.2 RFC 5226. Specific
          guidelines for the appointment of Designated Experts and evaluation of EPP extensions are provided here.</t>
          
          <t>The IESG should appoint a small pool of individuals (perhaps 3 - 5) to serve as designated experts as described
          in Section 3.2 of RFC 5226. The pool should have a single administrative chair who is appointed by the IESG. The
          designated experts should use the existing eppext mailing list (eppext@ietf.org) for public discussion of
          registration requests. This implies that the mailing list should remain open after the work of the EPPEXT
          working group has concluded.</t>
          
          <t>Extensions should be evaluated for architectural soundness using the guidelines described in RFC 3735
          <xref target="RFC3735"/>, including the Security Considerations section of that document. Expert evaluation
          should explicitly include consideration of the privacy consequences of proposed extensions, and, at a minimum,
          ensure that any privacy considerations are fully documented in the relevant specification(s).</t>        
          
          <t>The results of the evaluation should be shared via email with the registrant and the eppext mailing list.
          Issues discovered during the evaluation can be corrected by the registrant and those corrections can be submitted
          to the designated experts until the designated experts explicitly decide to accept or reject the registration
          request. The designated experts must make an explicit decision and that decision must be shared via email with
          the registrant and the eppext mailing list. If the specification for an extension is an IETF Standards Track
          document, no review is required by the Designated Expert.</t>
          
          <t>Designated experts should be permissive in their evaluation of requests to register extensions that have been
          implemented and deployed by at least one registry/registrar pair. This implies that it may indeed be possible to
          register multiple extensions that provide the same functionality. Requests to register extensions that have not
          been deployed should be evaluated with a goal of reducing functional duplication. A potential registrant who
          submits a request to register a new, un-deployed extension that includes similar functionality to an existing,
          registered extension should be made aware of the existing extension. The registrant should be asked to
          reconsider their request given the existence of a similar extension. Should they decline to do so perceived
          similarity should not be a sufficient reason for rejection as long as all other requirements are met.</t>
        </section>
      </section>
      
      <section title="Registration Procedure">
        <t>The registry contains information describing each registered extension. Registry entries are created and managed by
        sending forms to IANA that describe the extension and the operation to be performed on the registry entry.</t>
        
        <section anchor="reqInfo" title="Required Information">
          <t>Name of Extension: A case-insensitive, ASCII text string that contains the name of the extension specification.
          Non-ASCII representations of the extension name can be included in the "Notes" described below.</t>
          
          <t>Document Status: The document status ("Informational", "Standards Track", etc.) of the specification document.
          For documents that are not RFCs, this will always be "Informational".</t>
          
          <t>Reference: A reference to the specification of this extension. This could be an RFC number or some other pointer
          to the document defining the extension.</t>
          
          <t>Registrant Name and Email Address: The name and email address of the person that is responsible for managing
          the registry entry. If the registration is of an IETF Standards Track document, this can simply be listed as
          "IESG, &lt;iesg@ietf.org&gt;".</t>
          
          <t>TLDs: A text string containing the top-level domain name (or domain names), including the preceding ".", for
          which the extension has been specified (e.g., ".org"). If there are multiple TLDs, they are given as a list of
          domain names separated by commas, (e.g. ".com, .net"). Internationalized Domain Name (IDN) TLDs should be specified
          in A-label <xref target="RFC5890"/> format. If the extension is not associated with a specific top-level domain,
          the case-insensitive text string "Any" can be used to indicate that.</t>
          
          <t>IPR Disclosure: A pointer to any Intellectual Property Rights (IPR) disclosure document(s) related to this extension,
          or "None" if there are no such disclosures. This can be an IPR disclosure filed with the IETF in accordance with RFC 3979
          <xref target="RFC3979"/> as updated by RFC 4879 [RFC4879] if the extension is part of an IETF Contribution, or can be
          other IPR disclosure documents identifying the claimed intellectual property rights and terms of use for extensions that
          are not part of an IETF Contribution.</t>
                 
          <t>Status: Either "Active" or "Inactive". The "Active" status is used for extensions that are currently implemented and
          in use. The "Inactive" status is used for extensions that are not implemented or are otherwise not being used.</t>
                 
          <t>Notes: Either "None" or other text that describes optional notes to be included with the registered extension.
          If the Status value is "Inactive" text should be included to describe how and when this state was reached.</t>
        </section>
        
        <section anchor="form" title="Registration Form">
          <t>The required information must be formatted consistently using the following form. Form field names and values may
          appear on the same line:</t>
          
          <t>-----BEGIN FORM-----<vspace blankLines='0'/>Name of Extension:<vspace blankLines='0'/>&lt;text string&gt;
          (quotes are optional)</t>
          
          <t>Document Status: &lt;document status&gt;</t>
          
          <t>Reference: &lt;RFC number, URL, etc.&gt;</t>
          
          <t>Registrant Name and Email Address:<vspace blankLines='0'/>&lt;registrant name&gt;, &lt;email address&gt;</t>
          
          <t>TLDs: "Any"|&lt;one or more TLD text strings separated by commas&gt;</t>
                 
          <t>IPR Disclosure: "None"|&lt;URL&gt;</t>
                 
          <t>Status: "Active"|"Inactive"</t>
                 
          <t>Notes: "None"|&lt;optional text&gt;<vspace blankLines='0'/>-----END FORM-----</t>

<!-- Add blank lines to push the examples to a new page so they are fully displayed on one page. !-->
          
          <t><vspace blankLines='100'/>Example form with RFC specification:</t>
          
          <t><figure>
              <artwork xml:space="preserve">
-----BEGIN FORM-----
Name of Extension:
"An Extension RFC for the Extensible Provisioning Protocol (EPP)"

Document Status:
Standards Track
	                
Reference:
http://tools.ietf.org/html/rfcXXXX
	                
Registrant Name and Email Address:
IESG, &lt;iesg@ietf.org&gt;
	                
TLDs: Any
	                       
IPR Disclosure: None

Status: Active

Notes: None
-----END FORM-----
              </artwork>
            </figure></t>
     
          <t>Example form with non-RFC specification:</t>
          
          <t><figure>
              <artwork xml:space="preserve">
-----BEGIN FORM-----
Name of Extension:
"An Example Extension for the .example Top-Level Domain"

Document Status:
Informational
	                
Reference:
http://www.example.com/html/example-epp-ext.txt
	                
Registrant Name and Email Address:
John Doe, jdoe@example.com
	                
TLDs: .example
	                       
IPR Disclosure:
http://www.example.com/ipr/example-epp-ext-ipr.html

Status: Active

Notes: None
-----END FORM-----
              </artwork>
            </figure></t>
        </section>
        
        <section title="Registration Processing">
          <t>Registrants should send each registration form to IANA with a single record for incorporation
          into the registry. Send the form via email to &lt;iana@iana.org&gt;, and include a subject line
          indicating whether the enclosed form represents an insertion of a new record (indicated by
          the word "INSERT" in the subject line) or a replacement of an existing record (indicated by the word
          "MODIFY" in the subject line). At no time can a record be deleted from the registry. On receipt of the
          registration request, IANA will initiate review by the designated expert(s), who will evaluate the
          request using the criteria in <xref target="expert"/>, in consultation with the eppext mailing
          list.</t>
        </section>
        
        <section title="Updating Registry Entries">
          <t>When submitting changes to existing registry entries, include text in the "Notes" field of the
          registration form describing the change. Under normal circumstances, registry entries are only be
          updated by the registrant. If the registrant becomes unavailable or otherwise unresponsive, the
          designated expert can submit a registration form to IANA to update the registrant information.
          Entries can change state from "Active" to "Inactive" and back again as long as state change requests
          conform to the processing requirements identified in this document. In addition to entries that become
          "Inactive" due to a lack of implementation, entries for which a specification becomes consistently
          unavailable over time should be marked "Inactive" by the designated expert until such time as the
          specification again becomes reliably available.</t>
        </section>
      </section>
    </section>

    <section anchor="IANA" title="IANA Considerations">
      <t>IANA is requested to create a new protocol registry to manage EPP extensions. This registry should
      appear under its own heading on IANA's protocol listings, using the same title as the name of the registry.
      The information to be registered and the procedures to be followed in populating the registry are described
      in <xref target="spec-proc"/>.</t>
      
      <t>Name of registry: Extensions for the Extensible Provisioning Protocol</t>
      
      <t><figure>
        <artwork>
 Section at http://www.iana.org/protocols:
   Registry Title: Extensions for the Extensible Provisioning Protocol
   Registry Name: Extensions for the Extensible Provisioning Protocol
   Registration Procedure: Specification Required
   Reference: this draft
        </artwork>
      </figure></t>
      
      <t>Required information: See <xref target="reqInfo"/>.</t>
           
      <t>Review process: "Specification Required" as described in RFC 5226 <xref target="RFC5226"/>.</t>
      
      <t>Size, format, and syntax of registry entries: See <xref target="reqInfo"/>.</t>
      
      <t>Initial assignments and reservations:</t>
      
      <t><figure>
        <artwork>
   -----BEGIN FORM-----
   Name of Extension:
   "Domain Registry Grace Period Mapping for the
   Extensible Provisioning Protocol (EPP)"
   
   Document Status:
   Standards Track
   	                
   Reference:
   http://tools.ietf.org/html/rfc3915
   	                
   Registrant Name and Email Address:
   IESG, &lt;iesg@ietf.org&gt;
   	                
   TLDs: Any
   	                       
   IPR Disclosure: None

   Status: Active

   Notes: None
   -----END FORM-----
        </artwork>
      </figure></t>
      
      <t><figure>
        <artwork>
   -----BEGIN FORM-----
   Name of Extension:
   "E.164 Number Mapping for the
   Extensible Provisioning Protocol (EPP)"
   
   Document Status:
   Standards Track
   	                
   Reference:
   http://tools.ietf.org/html/rfc4114
   	                
   Registrant Name and Email Address:
   IESG, &lt;iesg@ietf.org&gt;
   	                
   TLDs: Any
   	                       
   IPR Disclosure: None

   Status: Active

   Notes: None
   -----END FORM-----
        </artwork>
      </figure></t>
      
      <t><figure>
        <artwork>
   -----BEGIN FORM-----
   Name of Extension:
   "ENUM Validation Information Mapping for the
   Extensible Provisioning Protocol"
   
   Document Status:
   Standards Track
   	                
   Reference:
   http://tools.ietf.org/html/rfc5076
   	                
   Registrant Name and Email Address:
   IESG, &lt;iesg@ietf.org&gt;
   	                
   TLDs: Any
   	                       
   IPR Disclosure: None

   Status: Active

   Notes: None
   -----END FORM-----
        </artwork>
      </figure></t>
      
      <t><figure>
        <artwork>
   -----BEGIN FORM-----
   Name of Extension:
   "Domain Name System (DNS) Security Extensions Mapping for the
   Extensible Provisioning Protocol (EPP)"
   
   Document Status:
   Standards Track
   	                
   Reference:
   http://tools.ietf.org/html/rfc5910
   	                
   Registrant Name and Email Address:
   IESG, &lt;iesg@ietf.org&gt;
   	                
   TLDs: Any
   	                       
   IPR Disclosure: None

   Status: Active

   Notes: None
   -----END FORM-----
        </artwork>
      </figure></t>
      
      <t>In addition, the form used to populate and manage the registry is to be added to the table of
      Protocol Registration Forms maintained by IANA.</t>
    </section>

    <section anchor="Security" title="Security Considerations">      
      <t>This document introduces no new security considerations to EPP. However, extensions should be evaluated
      according to the Security Considerations of RFC 3735 <xref target="RFC3735"/>.</t>
    </section>

      <section title="Acknowledgements">
        <t>The information described in the registry is based on a suggestion posted to the provreg mailing list
        by Jay Daley in August 2013.</t>
      </section>
  </middle>

  <back>
    <references title="Normative References">
      &RFC3979;
      &RFC4879;
      &RFC5226;
      &RFC5730;
      &RFC5890;
    </references>

    <references title="Informative References">
      &RFC3735;
    </references>
    
    <section title="Change Log">
      <t>
        <list style="hanging">
          <t hangText="Initial -00:">First working group version.</t>
          <t hangText="-01:">Added initial registry entries to <xref target="IANA"/>.</t>
          <t hangText="-02:">Spelling corrections. Added <xref target="expert"/>. Added "Notes" field to the registration template.</t>
          <t hangText="-03:">Added reference to Section 2.1 of RFC 3735 in <xref target="specs"/>.</t>
          <t hangText="-04:">Added "Status" field to the registration template. Fixed typo in <xref target="expert"/>. Reformatted examples and
          initial registry entries.</t>
          <t hangText="-05:">Added text to clarify how existing registry entries can and can't be edited.</t>
          <t hangText="-06:">Modified text in <xref target="expert"/> to make it clear that it is possible to register functionally similar extensions.</t>
          <t hangText="-07:">Address WG last call comments.</t>
          <t hangText="-08:">Address AD review comments.</t>
          <t hangText="-09:">Address IETF last call and IESG review comments.</t>
          <t hangText="-10:">Re-address IETF last call and IESG review comments. Added text to note that the extension name must be represented using ASCII characters.</t>
        </list>
      </t>
    </section>    
  </back>
</rfc>
