<?xml version="1.0" encoding="US-ASCII"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!-- One method to get references from the online citation libraries.
     There has to be one entity for each item to be referenced. 
     An alternate method (rfc include) is described in the references. -->
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC5730 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5730.xml">
<!ENTITY RFC5733 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5733.xml">
<!ENTITY RFC5731 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5731.xml">
<!ENTITY RFC3688 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3688.xml">
<!ENTITY I-D.narten-iana-considerations-rfc2434bis SYSTEM "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.narten-iana-considerations-rfc2434bis.xml">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- used by XSLT processors -->
<!-- For a complete list and description of processing instructions (PIs), 
     please see http://xml.resource.org/authoring/README.html. -->
<!-- Below are generally applicable Processing Instructions (PIs) that most I-Ds might want to use.
     (Here they are set differently than their defaults in xml2rfc v1.32) -->
<?rfc strict="yes" ?>
<!-- give errors regarding ID-nits and DTD validation -->
<!-- control the table of contents (ToC) -->
<?rfc toc="yes"?>
<!-- generate a ToC -->
<?rfc tocdepth="4"?>
<!-- the number of levels of subsections in ToC. default: 3 -->
<!-- control references -->
<?rfc symrefs="yes"?>
<!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
<?rfc sortrefs="yes" ?>
<!-- sort the reference entries alphabetically -->
<!-- control vertical white space 
     (using these PIs as follows is recommended by the RFC Editor) -->
<?rfc compact="yes" ?>
<!-- do not start each main section on a new page -->
<?rfc subcompact="yes"?>
<!-- keep one blank line between list items -->
<?rfc comments="yes" ?>
<!-- show cref output -->
<?rfc inline="yes" ?>
<!-- inline cref output -->
<!-- end of list of popular I-D processing instructions -->
<rfc category="std" docName="draft-tan-epp-launchphase-03" ipr="trust200902">
  <!-- category values: std, bcp, info, exp, and historic
     ipr values: full3667, noModification3667, noDerivatives3667
     you can add the attributes updates="NNNN" and obsoletes="NNNN" 
     they will automatically be output with "(if approved)" -->

  <!-- ***** FRONT MATTER ***** -->

  <front>
    <title abbrev="Launch Phase Mapping for EPP">Launch Phase Mapping for the
    Extensible Provisioning Protocol (EPP)</title>

    <!-- add 'role="editor"' below for the editors if appropriate -->

    <!-- Another author who claims to be an editor -->

    <author fullname="Wil Tan" initials="W.T." surname="Tan">
      <organization>Cloud Registry</organization>

      <address>
        <postal>
          <street>Suite 32 Seabridge House</street>

          <street>377 Kent St</street>

          <city>Sydney</city>

          <region>NSW</region>

          <code>2000</code>

          <country>AU</country>
        </postal>

        <phone>+61 414 710899</phone>

        <email>wil@cloudregistry.net</email>

        <uri>http://www.cloudregistry.net</uri>
      </address>
    </author>

    <author fullname="Gavin Brown" initials="G.B." surname="Brown">
      <organization>CentralNic Ltd</organization>

      <address>
        <postal>
          <street>35-39 Mooregate</street>

          <city>London</city>

          <region>England</region>

          <code>EC2R 6AR</code>

          <country>GB</country>
        </postal>

        <phone>+44 8700 170 900</phone>

        <email>gavin.brown@centralnic.com</email>

        <uri>http://www.centralnic.com</uri>
      </address>
    </author>

    <author fullname="James Gould" initials="J.G" surname="Gould">
      <organization>VeriSign, Inc.</organization>

      <address>
        <postal>
          <street>12061 Bluemont Way</street>

          <city>Reston</city>

          <region>VA</region>

          <code>20190</code>

          <country>US</country>
        </postal>

        <email>jgould@verisign.com</email>

        <uri>http://www.verisigninc.com</uri>
      </address>
    </author>

    <date day="12" month="September" year="2012"/>

    <!-- Meta-data Declarations -->

    <area>Applications</area>

    <workgroup>Internet Engineering Task Force</workgroup>

    <keyword>EPP, Sunrise, Landrush, Trademark Clearinghouse, Trademark
    Claims, domain name registry, launch phase</keyword>

    <abstract>
      <t>This document describes an Extensible Provisioning Protocol (EPP)
      extension mapping for the provisioning and management of domain names
      during the launch phase of a domain name registry.</t>
    </abstract>
  </front>

  <middle>
    <section title="Introduction">
      <t>This document describes an extension mapping for version 1.0 of the
      <xref target="RFC5730">Extensible Provisioning Protocol (EPP)</xref>.
      This EPP mapping specifies a flexible schema that can be used to
      implement several common use cases related to the provisioning and
      management of launch phase extension in a domain name registry.</t>

      <t>It is typical for domain registries to operate in special modes
      within certain periods of time to facilitate allocation of domain names
      for a subset of the zone namespace that becomes available. This document
      uses the term "launch phase" and the shorter form "launch" to refer to
      such a period.</t>

      <t>The <xref target="RFC5731">EPP domain name mapping</xref> is designed
      for the steady state operation of a registry. During the launch, the
      interface used at each phase of the launch could be different from what
      is defined in <xref target="RFC5731">EPP domain name mapping</xref>. for
      example, registries typically accept multiple applications for a given
      domain name during the "sunrise" launch phase. In addition, the <eref
      target="http://mm.icann.org/pipermail/tmch-tech/attachments/20120629/92b95395/TMCH-Model-28jun2012-clean-0001.pdf">Trademark
      Clearinghouse Draft Implementation Model</eref> defines a registry
      interface for the Trademark Claims or "claims" launch phase that
      includes support for presenting a Trademark Claims Notice to the
      Registrant. This document proposes an extension to the domain name
      extension in order to unambiguously manage the various launch phases
      known.</t>

      <section title="Conventions Used in This Document">
        <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>XML is case sensitive. Unless stated otherwise, XML specifications
        and examples provided in this document MUST be interpreted in the
        character case presented in order to develop a conforming
        implementation.</t>

        <t>"launch-1.0" is used as an abbreviation for
        "urn:ietf:params:xml:ns:launch-1.0". The XML namespace prefix "launch"
        is used, but implementations MUST NOT depend on it and instead employ
        a proper namespace-aware XML parser and serializer to interpret and
        output the XML documents.</t>
      </section>
    </section>

    <section anchor="attrs" title="Object Attributes">
      <t>This extension adds additional elements to the <xref
      target="RFC5731">EPP domain name mapping</xref>. Only those new elements
      are described here.</t>

      <section anchor="applicationID" title="Application Identifiers">
        <t>Servers MAY allow multiple applications of a given domain name
        during its launch phase operations. Upon receiving a request to create
        a domain name, the server creates an application object corresponding
        to the request and assigns an application identifier for the application
        and returns it to the client with the &lt;launch:applicationID&gt;
        element. In order to facilitate correlation, all subsequent launch
        operations on the application object MUST be qualified by the
        previously assigned application identifier using the
        &lt;launch:applicationID&gt; element.</t>
      </section>

      <section anchor="phases" title="Launch Phases">
        <t>The server MAY support multiple launch phases sequentially or
        simultaneously. The &lt;launch:phase&gt; element MUST be included by
        the client to define the target launch phase of the command.</t>

        <t>The following launch phase values are defined: <list
            style="hanging">
            <t hangText="sunrise">Phase when trademark holders can submit
            registration applications with trademark information that can be
            validated by the server.</t>

            <t hangText="landrush">Post sunrise phase when non-trademark
            holders are allowed to register domain names.</t>

            <t hangText="claims">Trademark claims phase as defined by <eref
            target="http://mm.icann.org/pipermail/tmch-tech/attachments/20120629/92b95395/TMCH-Model-28jun2012-clean-0001.pdf">Trademark
            Clearinghouse Draft Implementation Model</eref>.</t>

            <t hangText="open">Post launch phase that is also referred to as
            "steady state". Servers MAY require additional trademark
            protection with this phase.</t>

            <t hangText="custom">A custom server launch phase that is defined
            using the "name" attribute.</t>
          </list></t>

        <t>For extensibility the &lt;launch:phase&gt; element includes an
        OPTIONAL "name" attribute that can define a sub-phase or the full name
        of the phase when the &lt;launch:phase&gt; element has the "custom"
        value.</t>
      </section>

      <section anchor="statuses" title="Status Values">
        <t>A launch application object MAY have a status value. The
        &lt;launch:status&gt; element is used to convey extended status pertaining to
        the application object, beyond what is specified in the object mapping
        for this application object.</t>

        <t>The following status values are defined using the 
        required "s" attribute: <list style="hanging">
            <t hangText="pending:">the initial state of a newly-created
            application object.</t>

            <t hangText="validated:">the application meets relevant registry
            rules.</t>

            <t hangText="invalid:">the application does not validate according
            to registry rules.</t>

            <t hangText="pendingAuction:">the application is pending based on 
            results of an auction.</t>

            <t hangText="allocated:">one of two possible end states of an
            application object; the object corresponding to the application
            has been provisioned.</t>

            <t hangText="rejected:">the other possible end state; the object
            was not provisioned.</t>

            <t hangText="custom:">A custom status that is defined using the 
            the "name" attribute.</t>
          </list></t>

       <t>Each status value MAY be accompanied by a string of human-readable 
        text that describes the rationale for the status applied to the object.
        The OPTIONAL "lang" attribute MAY be present to identify the language 
        if the negotiated value is something other than the default value of 
        "en" (English).</t>
        
        <t>For extensibility the &lt;launch:status&gt; element includes an
        OPTIONAL "name" attribute that can define a sub-status or the full name
        of the status when the status value is "custom".  The server SHOULD 
        NOT use of the "custom" status value.</t>

        <t>Certain status values MAY be combined. For example, an application
        can be invalid and rejected. Additionally certain statuses MAY be
        skipped. For example, an application MAY immediately start at the
        allocated status or an application MAY skip the pendingAuction status
        if server does not support an auction. If a &lt;domain:create&gt; processes a request
        synchronously without the use of an intermediate application, than an
        <xref target="applicationID">Application Identifier</xref> is not
        needed along with the application status.</t>

        <section title="State Transition">
          <figure align="center" anchor="fsm">
            <artwork align="left"><![CDATA[

                            | request
                            v
                       +---------+
                       | pending |
                       +----+----+
                            |
                            |
       +--------------+-----+-----------+--------------+
       |              |                 |              |
       v              v                 v              v
 +-----------+   +---------+        +-------+      +-------+
 |           |   |         |       /         \    /         \
 | validated |   | invalid +----->| rejected  |  | allocated |
 |           |   |         |       \         /    \         /
 +----+------+   +----+----+        +-------+      +-------+
      |               |                 ^              ^
      |               |                 |              |
      |               +-----------------+              |
      |                                 |              |
      +---------------------------------+              |
      |                                 ^              |
      |                                 |              |      
      |                        +--------+-------+      | 
      |                        |                |      |
      +----------------------->| pendingAuction +------+
                               |                |       
                               +----------------+        

            ]]></artwork>
          </figure>
        </section>
      </section>

      <section anchor="validationModels" title="Mark Validation Models">
        <t>A server MUST support one of four models for validating the trademark 
        information:</t>

        <t><list style="hanging">
            <t hangText="code">Use of a mark code by itself to validate that
            the mark matches the domain name. The code is the "sunrise code" as
            defined in <eref
            target="http://mm.icann.org/pipermail/tmch-tech/attachments/20120629/92b95395/TMCH-Model-28jun2012-clean-0001.pdf">Trademark
            Clearinghouse Draft Implementation Model</eref> that is validated
            by the server using its local sunrise code data. This model is
            supported using the &lt;launch:codeMark&gt; element with just the
            &lt;launch:code&gt; element.</t>

            <t hangText="mark">The mark information is passed without any
            other validation element. The server will use some custom form of
            validation to validate that the mark information is authentic. This
            model is supported using the &lt;launch:codeMark&gt; element with
            just the &lt;launch:mark&gt; element.</t>

            <t hangText="code with mark:">A code is used along with the mark
            information by the server to validate the mark utilizing an external party
            like a Trademark Clearinghouse. The code represents some form of
            secret that matches the mark information passed. This model is
            supported using the &lt;launch:codeMark&gt; element with both the
            &lt;launch:code&gt; and the &lt;launch:mark&gt; element.</t>

            <t hangText="signed mark:">The mark information is digitally
            signed as described in the <xref target="digitalsignature">Digital Signature</xref>
            section.  The digital signature can be directly validated by the 
            server using the public key
            of the external party that created the signed mark. This model is 
            supported using the
            <xref target="signedMark">&lt;launch:signedMark&gt;</xref> and 
            <xref target="signedNotice">&lt;launch:signedNotice&gt;</xref> 
            elements.</t>
          </list></t>

        <t>More than one &lt;launch:codeMark&gt; element or more than one
        &lt;launch:signedMark&gt; element MAY be specified. The maximum
        number of marks per domain name is up to server policy.</t>
        
        <section anchor="codeMark" title="&lt;launch:codeMark&gt; element">
           <t>The &lt;launch:codeMark&gt; element that is used by the "code", 
           "mark", and "code with mark" validation models has the following child 
           elements:</t>
           <t><list style="hanging">
              <t hangText="&lt;launch:code&gt;:">OPTIONAL mark code used to 
              validate the &lt;launch:mark&gt; information or to directly 
              validate the mark against the domain name.  The mark code 
              can be a mark specific secret value that the server can verify 
              against a third party or can be directly combined with the 
              domain name to verify against a server code file.</t>
              <t hangText="&lt;launch:mark&gt;:">OPTIONAL mark information 
              with child elements defined in the <xref target="mark">Mark</xref> 
              section.</t>
           </list></t>
                   <figure>
            <preamble>The following is an example &lt;launch:codeMark&gt;
            element with both a &lt;launch:code&gt; and a 
            &lt;launch:mark&gt; element.</preamble>

            <artwork><![CDATA[
<launch:codeMark>
  <launch:code>49FD46E6C4B45C55D4AC</launch:code>
  <launch:mark>
    <launch:name>Example One</launch:name>
    <launch:label>example-one</launch:label>
    <launch:label>exampleone</launch:label>
    <launch:issuer>IP Clearinghouse</launch:issuer>
    <launch:number>GE 3933232</launch:number>
    <launch:type>REG-TM-WORD</launch:type>
    <launch:entitlement>owner</launch:entitlement>
    <launch:regDate>2011-09-09</launch:regDate>
    <launch:exDate>2013-09-09</launch:exDate>
    <launch:country>AU</launch:country>
    <launch:region>VIC</launch:region>
    <launch:owner>
      <launch:org>Example Inc.</launch:org>
    </launch:owner>
    <launch:contact>
      <launch:name>John Doe</launch:name>
      <launch:org>Example Inc.</launch:org>
      <launch:addr>
        <launch:street>123 Example Dr.</launch:street>
        <launch:street>Suite 100</launch:street>
        <launch:city>Reston</launch:city>
        <launch:sp>VA</launch:sp>
        <launch:pc>20190</launch:pc>
        <launch:cc>US</launch:cc>
      </launch:addr>
      <launch:voice x="1234">+1.7035555555</launch:voice>
      <launch:fax>+1.7035555556</launch:fax>
      <launch:email>jdoe@example.tld</launch:email>
    </launch:contact>
  </launch:mark>
</launch:codeMark>
]]></artwork>
          </figure>
           
        </section>
      </section>

      <section anchor="mark" title="Mark">
        <t>A &lt;launch:mark&gt; element describes an applicant's prior right
        to a given domain name.</t>

        <t>The child elements of the &lt;launch:mark&gt; element include:</t>
        <t><list style="hanging">
            <t hangText="&lt;launch:id&gt;:">an identifier for the mark. This
            identifier MUST be unique among all marks associated with an
            application object.</t>

            <t hangText="&lt;launch:name&gt;:">The registered trademark text string.  This 
            value is free-form text that MAY be mapped to one or more &lt;launch:label&gt; values.</t>
            
            <t hangText="&lt;launch:label&gt;:">Zero or more domain name labels that corresponds 
            to the &lt;launch:name&gt;.  Each &lt;launch:label&gt; can match 
            directly to the domain name after adding the parent zone.</t>            

            <t hangText="&lt;launch:issuer&gt;:">name of the authority which issued
            the right (trademark clearinghouse, trademark office, company registration bureau, etc.)</t>

            <t hangText="&lt;launch:number&gt;:">the registration number of the right
            (trademark number, company registration number, etc.)</t>

            <t hangText="&lt;launch:type&gt;:">indicates the type of mark being made
            (trademark, symbol, combined mark, company name, etc.)</t>

            <t hangText="&lt;launch:entitlement&gt;:">indicates the applicant's
            entitlement to the mark (owner, licensee, etc.)</t>

            <t hangText="&lt;launch:regDate&gt;:">the date of registration of the
            mark</t>

            <t hangText="&lt;launch:exDate&gt;:">the date of expiration of the
            mark</t>

            <t hangText="&lt;launch:country&gt;:">indicates the country in which the
              mark is valid. This may be a two-character code from <xref target="WIPO.ST3" /></t>

            <t hangText="&lt;launch:region&gt;:">indicates the name of a city, state,
            province or other geographic region in which the mark is valid.</t>

            <t hangText="&lt;launch:owner&gt;:">Owner information using the <xref target="contact">Contact</xref> 
            elements.</t>

            <t hangText="&lt;launch:contact&gt;:">Contact for the owner using the 
            <xref target="contact">Contact</xref> element.</t>
          </list></t>
          <t>All of the child elements are OPTIONAL. Server policy may 
          place additional constraints on the format and requirements of such elements.</t>
      </section>
      
      <section anchor="contact" title="Contact">
        <t>The contact information contained within the <xref target="mark">Mark</xref> cannot 
        be defined via a contact identifier as defined in the <xref target="RFC5733">EPP contact mapping</xref> since 
        it is contact information defined outside of the server.  Some of the contact elements defined in 
        <xref target="RFC5733">EPP contact mapping</xref> are replicated in this extension.</t>  

        <t>The child elements of a contact using either the &lt;launch:owner&gt; or 
        &lt;launch:contact&gt; elements include:
        <list hangIndent="4" style="hanging">
            <t hangText="&lt;launch:id&gt;:">identifier of contact that MUST be unique among all contacts of the external third party.</t>

            <t hangText="&lt;launch:name&gt;:">name of the individual or role represented by the contact.</t>

            <t hangText="&lt;launch:org&gt;:">name of the organization with which the contact is affiliated.</t>

            <t hangText="&lt;launch:addr&gt;:">address information associated with the contact.  the &lt;launch:addr&gt; element contains 
            the following child elements:</t>

              <t><list hangIndent="4" style="hanging">
                  <t hangText="&lt;launch:street&gt;">one, two, or three &lt;launch:street&gt; elements that contain 
                  the contact's street address.</t>

                  <t hangText="&lt;launch:city&gt;">contact's city</t>

                  <t hangText="&lt;launch:sp&gt;">contact's state or province</t>

                  <t hangText="&lt;launch:cc&gt;">contact's country code</t>
                </list></t>


            <t hangText="&lt;launch:voice&gt;:">contact's voice telephone number</t>

            <t hangText="&lt;launch:fax&gt;:">contact's facsimile telephone number</t>

            <t hangText="&lt;launch:email&gt;:">contact's email address</t>

          </list></t>
          <t>All of the child elements are OPTIONAL.  Server policy may place additional constraints
        on the format and requirements of such elements.</t>
      </section>
      
      <section anchor="digitalsignature" title="Digital Signature">
        <t>Digital signatures can be used by the server to validate either 
        the mark information, when using the signed mark model with the 
        &lt;launch:signedMark&gt; element, or the claims notice with the 
        &lt;launch:signedNotice&gt; element.  The digital signatures are   
        handled using an <eref target="http://www.w3.org/TR/xmldsig-core/">XML
            Signature</eref> around the entire &lt;launch:signedMark&gt; 
         or &lt;launch:signedNotice&gt; elements.  Once the digital signature 
         is validated using the appropriate public key, the server can trust 
         all of the information included in the &lt;launch:signedMark&gt; 
         or &lt;launch:signedNotice&gt; elements.  It's up to server policy how 
         the public key is transferred.</t>  
         <t>To have the digital signature cover all of the elements of the 
         &lt;launch:signedMark&gt; and &lt;launch:signedNotice&gt; elements, 
         the <eref target="http://www.w3.org/TR/xmldsig-core/">XML
            Signature</eref> Reference URI is set to "#pointer(..)" and the 
            Transform "http://www.w3.org/2000/09/xmldsig#enveloped-signature" is 
            used.  Both of these has the digital signature cover the parent 
            element of the Signature element and to specify that the Signature 
            element is embedded in the parent element.
        </t>

     <section anchor="signedMark" title="&lt;launch:signedMark&gt; element">
        <t>The child elements of the &lt;launch:signedMark&gt; element include:</t>
        <t><list style="hanging">
            <t hangText="&lt;launch:serial&gt;:">Signature serial number that 
            that can be compared with a revocation list by the server.</t>

            <t hangText="&lt;launch:zone&gt;:">Zero or more DNS zones 
            the &lt;launch:signedMark&gt; can be used with.  No &lt;launch:zone&gt; 
            element indicates that the &lt;launch:signedMark&gt; can be used 
            within any DNS zone.</t>
            
            <t hangText="&lt;launch:exDate&gt;:">OPTIONAL date and time that the 
            &lt;launch:signedMark&gt; expires.  The server MUST NOT accept 
            a &lt;launch:signedMark&gt; that has expired.  No &lt;launch:exDate&gt; 
            element indicates that there is no expiry.</t>            

            <t hangText="&lt;launch:mark&gt;:">Trademark information as defined in the  
            <xref target="mark">Mark</xref> section.</t>

            <t hangText="&lt;Signature&gt;:">
            <eref target="http://www.w3.org/TR/xmldsig-core/">XML
            Signature</eref> for the &lt;launch:signedMark&gt;</t>

          </list></t>
          
                   <figure>
            <preamble>The following is an example &lt;launch:signedMark&gt;
            using the <eref target="http://www.w3.org/TR/xmldsig-core/">XML
            Signature</eref> to sign all of the elements of 
            &lt;launch:signedMark&gt; element.</preamble>

            <artwork><![CDATA[
<launch:signedMark>
  <launch:serial>123456</launch:serial>
  <launch:zone>newtld</launch:zone>
  <launch:exDate>2012-08-16T09:00:00.0Z</launch:exDate>
  <launch:mark>
    <launch:name>Example One</launch:name>
    <launch:label>example-one</launch:label>
    <launch:label>exampleone</launch:label>
    <launch:issuer>IP Clearinghouse</launch:issuer>
    <launch:number>GE 3933232</launch:number>
    <launch:type>REG-TM-WORD</launch:type>
    <launch:entitlement>owner</launch:entitlement>
    <launch:regDate>2011-09-09</launch:regDate>
    <launch:exDate>2013-09-09</launch:exDate>
    <launch:country>AU</launch:country>
    <launch:region>VIC</launch:region>
    <launch:owner>
      <launch:org>Example Inc.</launch:org>
    </launch:owner>
    <launch:contact>
      <launch:name>John Doe</launch:name>
      <launch:org>Example Inc.</launch:org>
      <launch:addr>
        <launch:street>123 Example Dr.</launch:street>
        <launch:street>Suite 100</launch:street>
        <launch:city>Reston</launch:city>
        <launch:sp>VA</launch:sp>
        <launch:pc>20190</launch:pc>
        <launch:cc>US</launch:cc>
      </launch:addr>
      <launch:voice x="1234">+1.7035555555</launch:voice>
      <launch:fax>+1.7035555556</launch:fax>
      <launch:email>jdoe@example.tld</launch:email>
    </launch:contact>
  </launch:mark>
  <Signature xmlns=
    "http://www.w3.org/2000/09/xmldsig#">
    <SignedInfo>
      <CanonicalizationMethod 
        Algorithm=
        "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
      <SignatureMethod 
        Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/> 
      <Reference URI="#pointer(..)">
        <Transforms>
          <Transform
            Algorithm=
            "http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
          </Transforms>
        <DigestMethod 
          Algorithm=
          "http://www.w3.org/2000/09/xmldsig#sha1"/>
        <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> 
      </Reference>
    </SignedInfo>
    <SignatureValue>
      cID8yqvR60QYQVhOpBDUmPiIxplV/fM7lj9RKF+fswSjJAklUrgf2w==
    </SignatureValue>
  </Signature>
</launch:signedMark>
]]></artwork>
          </figure>

        </section>
         
     <section anchor="signedNotice" title="&lt;launch:signedNotice&gt; element">
        <t>The child elements of the &lt;launch:signedNotice&gt; element include:</t>
        <t><list style="hanging">
            <t hangText="&lt;launch:noticeID&gt;:">Unique notice identifier 
            generated by the third party.  The &lt;launch:noticeID&gt; can be 
            compared with a revocation list by the server.</t>

            <t hangText="&lt;launch:name&gt;:">Domain name that the 
            claims notice is for.</t>

            <t hangText="&lt;launch:crDate&gt;:">Date and time that the 
            &lt;launch:signedNotice&gt; was created.</t>            

            <t hangText="&lt;launch:exDate&gt;:">OPTIONAL date and time that the 
            &lt;launch:signedNotice&gt; expires.  The server MUST NOT accept 
            a &lt;launch:signedNotice&gt; that has expired.  No &lt;launch:exDate&gt; 
            element indicates that there is no expiry.</t>            
            
            <t hangText="&lt;Signature&gt;:">
            <eref target="http://www.w3.org/TR/xmldsig-core/">XML
            Signature</eref> for the &lt;launch:signedNotice&gt;</t>

          </list></t>      
         
         <figure>
            <preamble>The following is an example &lt;launch:signedNotice&gt;
            using the <eref target="http://www.w3.org/TR/xmldsig-core/">XML
            Signature</eref> to sign all of the elements of 
            &lt;launch:signedNotice&gt; element.</preamble>

            <artwork><![CDATA[
<launch:signedNotice>
  <launch:noticeID>49FD46E6C4B45C55D4AC</launch:noticeID>
  <launch:name>example.tld</launch:name>
  <launch:crDate>2012-09-07T22:00:00.0Z</launch:crDate>
  <launch:exDate>2012-09-08T22:00:00.0Z</launch:exDate>
  <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
    <SignedInfo>
      <CanonicalizationMethod 
        Algorithm=
        "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
      <SignatureMethod 
        Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/> 
      <Reference URI="#pointer(..)">
        <Transforms>
          <Transform
            Algorithm=
            "http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
        </Transforms>
        <DigestMethod 
          Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
        <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> 
      </Reference>
    </SignedInfo>
    <SignatureValue>
     cID8yqvR60QYQVhOpBDUmPiIxplV/fM7lj9RKF+fswSjJAklUrgf2w==
    </SignatureValue>
  </Signature>
</launch:signedNotice>
]]></artwork>
          </figure>

        </section>

      </section>
      
    </section>

    <section anchor="commands" title="EPP Command Mapping">
      <t>A detailed description of the EPP syntax and semantics can be found
      in the EPP core protocol specification <xref target="RFC5730"/>. The
      command mappings described here are specifically for use in the Launch
      Phase Extension.</t>

      <t>This mapping is designed to be flexible, requiring only a minimum set
      of required elements.</t>

      <t>While it is meant to serve several use cases, it does not prescribe
      any interpretation by the client or server. Such processing is typically
      highly policy-dependent and therefore specific to implementations.</t>

      <t>Operations on application objects are done via one or more of the
      existing EPP verbs defined in the <xref target="RFC5731">EPP domain name
      mapping</xref>. Registries may choose to support a subset of the
      operations.</t>

      <section anchor="checkCommand" title="EPP &lt;check&gt; Command">
        <t>This extension defines additional elements to extend the EPP
        &lt;check&gt; command and response to be used in conjunction with the
        <xref target="RFC5731">EPP domain name mapping</xref>.</t>
        
        <t>This extension defines a new command called the Claims Check Command 
        that is used to determine whether or not there are any matching 
        trademarks for each domain name passed in the command. Instead of 
        returning whether the domain name is available it will return whether 
        or not at least one matching trademark exists for the domain name.  
        If there is at least one matching trademark that exists for the 
        domain name a &lt;launch:claimKey&gt; element is returned.  
        The value of that the &lt;launch:claimKey&gt; element can 
        be used with a info service of a third party trademark provider like 
        the Trademark Clearinghouse (TMCH) for getting the information needed 
        to generate the trademark claims notice.  The third party trademark 
        provider should also return a <xref target="signedNotice">Signed Notice</xref> 
        that can be passed in the extension to the extension to the 
        <xref target="createCommand">Create Command</xref> for the server 
        to validate that the correct trademark claims notice was presented.
        
        The &lt;domain:name&gt; elements in the EPP &lt;check&gt; 
        command of <xref target="RFC5731">EPP domain name mapping</xref> define 
        the domain names to check for matching trademarks.  
        The &lt;launch:check&gt; element contains the following child elements:</t>

          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">The phase with the value of
              "claims" to indicate that this is a Claims Check Command.</t>
            </list></t>
          <figure>
            <preamble>Example Claims Check Command using the &lt;check&gt;
            domain command and the &lt;launch:check&gt; extension to 
            determine if "example1.tld" and "example2.tld" have any 
            matching trademarks.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
   <check>
    <domain:check
     xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
      <domain:name>example1.tld</domain:name>
      <domain:name>example2.tld</domain:name>
    </domain:check>
   </check>
   <extension>
    <launch:check
     xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>claims</launch:phase>
    </launch:check>
   </extension>
   <clTRID>ABC-12345</clTRID>
  </command>
</epp>
]]></artwork>
          </figure>

          <t>If the &lt;check&gt; command has been processed successfully, the EPP 
          &lt;resData&gt; element MUST contains a child &lt;launch:chkData&gt; element 
          that identifies the launch namespace.  The &lt;launch:chkData&gt; element 
          contains the following child elements:</t>

          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">the phase with a value of
              "claims".</t>

              <t hangText="&lt;launch:cd&gt;">One or more &lt;launch:cd&gt; 
              elements that contain the following child elements:</t>
              
              <t><list hangIndent="4" style="hanging">
            <t hangText="&lt;launch:name&gt;">Contains the fully 
            qualified name of the queried domain name.  This element 
            MUST contain an "exists" attribute whose value 
            indicates if a matching trademark exists for the domain 
            name.  A value of "1" or "true" means that a matching 
            trademark does exist.  A value of "0" or "false" means that 
            a matching trademark does not exist.</t>
            <t hangText="&lt;launch:claimKey&gt;">An OPTIONAL claim key 
            that can be passed to a info service of a third party 
            trademark provider like the Trademark Clearinghouse (TMCH) 
            for getting the information needed to generate the 
            trademark claims notice.  The &lt;claimKey&gt; is used 
            as the key for the query in place of the domain name 
            to securely query the service without using a well-known 
            value like a domain name.</t>  
              </list></t>

            </list></t>

          <figure>
            <preamble>Example Claims Check Response when no matching trademarks
             are found for the domain name example1.tld and matching 
             trademarks are found for the domain name example2.tld.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
     <msg>Command completed successfully</msg>
    </result>
    <resData>
     <launch:chkData
      xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>claims</launch:phase>
      <launch:cd>
        <launch:name exists="0">example1.tld</launch:name>
      </launch:cd>
      <launch:cd>
        <launch:name exists="1">example2.tld</launch:name>
        <launch:claimKey>abc123</launch:claimKey>
      </launch:cd>
     </launch:chkData>
    </resData>
    <trID>
     <clTRID>ABC-12345</clTRID>
     <svTRID>54322-XYZ</svTRID>
    </trID>
  </response>
</epp>
 ]]></artwork>
          </figure>
      </section>

      <!-- end CHECK command -->

      <section anchor="infoCommand" title="EPP &lt;info&gt; Command">
        <t>This extension defines additional elements to extend the EPP
        &lt;info&gt; command and response to be used in conjunction with the
        <xref target="RFC5731">EPP domain name mapping</xref>.</t>

        <t>There are two forms of the extension to the EPP &lt;info&gt;
        command that are dependent on the supported <xref
        target="phases">launch phases</xref> as defined below:</t>

        <t><list style="hanging">
            <t hangText="sunrise">The EPP &lt;info&gt; command with the
            "sunrise" phase is used to retrieve information for a specific
            "sunrise" application based on an <xref
            target="applicationID">Application Identifier</xref>. This form of
            the EPP &lt;info&gt; extension is referred to as the Sunrise Info
            Form and is defined in the <xref target="sunriseInfoForm">Sunrise
            Info Form</xref> section.</t>

            <t hangText="landrush">The EPP &lt;info&gt; command with the
            "landrush" phase is undefined but the form supported is up to
            server policy.</t>

            <t hangText="claims">The EPP &lt;info&gt; command with the
            "claims" phase is used to retrieve the trademark claims
            information associated with a non-existing domain name that is
            referred to as the Claims Info Command. The response to the Claims
            Info Command does not extend the Domain Info Response as defined
            in <xref target="RFC5731">EPP domain name mapping</xref>. This
            form of the EPP &lt;info&gt; extension is referred to as the
            Claims Info Form and defined in the <xref
            target="claimsInfoForm">Claims Info Form</xref> section.</t>

            <t hangText="open">The EPP &lt;info&gt; command with the "open"
            phase is undefined but the form supported is up to server
            policy.</t>

            <t hangText="custom">The EPP &lt;info&gt; command with the
            "custom" phase is undefined but the form supported is up to server
            policy.</t>
          </list></t>

        <section anchor="sunriseInfoForm" title="Sunrise Info Form">
          <t>The Sunrise Info Form of the extension to the <xref
          target="RFC5731">EPP domain name mapping</xref> gets information on
          an application created with the &lt;launch:create&gt; using the
          <xref target="applicationID">Application Identifier</xref> returned
          in the &lt;launch:creData&gt; element of the 
          <xref target="createCommand">Create Response</xref>. A &lt;launch:info&gt; element
          is sent along with the regular &lt;info&gt; domain command. The
          &lt;launch:info&gt; element contains the following child
          elements:</t>

          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">The phase during which the
              application was submitted or is associated with. Server policy 
              defines what phases that are supported for the Sunrise Info
              Form.</t>

              <t hangText="&lt;launch:applicationID&gt;">the application
              identifier of the application.</t>
            </list></t>

          <figure>
            <preamble>Example &lt;info&gt; domain command with the Sunrise
            Info Form &lt;launch:info&gt; extension.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
   <info>
    <domain:info
     xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
      <domain:name>example.tld</domain:name>
    </domain:info>
   </info>
   <extension>
    <launch:info
     xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>sunrise</launch:phase>
      <launch:applicationID>abc123</launch:applicationID>
    </launch:info>
   </extension>
   <clTRID>ABC-12345</clTRID>
  </command>
</epp>
]]></artwork>
          </figure>

          <t>If the query was successful, the server replies with an
          &lt;launch:infData&gt; element along with the regular EPP
          &lt;resData&gt;. The &lt;launch:infData&gt; contains the following
          child elements:</t>
          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">the phase during which the
              application was submitted or is associated with.</t>

              <t hangText="&lt;launch:applicationID&gt;">the application
              identifier of the returned application.</t>

              <t hangText="&lt;launch:status&gt;">status of the application
              using one of the supported <xref target="statuses">status
              values</xref>.</t>

              <t
              hangText="&lt;launch:codeMark&gt; or &lt;launch:signedMark&gt;">
                  <list hangIndent="4" style="hanging">

              <t hangText="&lt;launch:codeMark&gt;">zero or more
              &lt;launch:codeMark&gt; elements.  The &lt;launch:codeMark&gt;
              child elements are defined in the 
              <xref target="codeMark">&lt;launch:codeMark&gt; element</xref> 
              section.</t>

              <t hangText="&lt;launch:signedMark&gt;">zero or more
              &lt;launch:signedMark&gt; elements.  The &lt;launch:signedMark&gt; 
              child elements are defined in 
              the <xref target="signedMark">&lt;launch:signedMark&gt; element</xref> 
              section.</t>
              
              </list></t>
            </list></t>

          <figure>
            <preamble>Example &lt;info&gt; domain response using the Sunrise
            Info Form &lt;launch:infData&gt; extension with multiple
            codes.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   <response>
     <result code="1000">
       <msg>Command completed successfully</msg>
     </result>
     <resData>
       <domain:infData
        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
         <domain:name>example.tld</domain:name>
         <domain:roid>EXAMPLE1-REP</domain:roid>
         <domain:status s="pendingCreate"/>
         <domain:registrant>jd1234</domain:registrant>
         <domain:contact type="admin">sh8013</domain:contact>
         <domain:contact type="tech">sh8013</domain:contact>
         <domain:clID>ClientX</domain:clID>
         <domain:crID>ClientY</domain:crID>
         <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
         <domain:authInfo>
           <domain:pw>2fooBAR</domain:pw>
         </domain:authInfo>
       </domain:infData>
     </resData>
     <extension>
       <launch:infData
        xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
         <launch:phase>sunrise</launch:phase>
          <launch:applicationID>abc123</launch:applicationID>
          <launch:status s="pending"/>
         <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AC</launch:code>
         </launch:codeMark>
         <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AD</launch:code>
         </launch:codeMark>
         <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AE</launch:code>
         </launch:codeMark>
       </launch:infData>
     </extension>
     <trID>
       <clTRID>ABC-12345</clTRID>
       <svTRID>54322-XYZ</svTRID>
     </trID>
   </response>
 </epp>
 ]]></artwork>
          </figure>

          <figure>
            <preamble>Example &lt;info&gt; domain response using the Sunrise
            Info Form &lt;launch:infData&gt; extension with code and mark
            information.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   <response>
     <result code="1000">
       <msg>Command completed successfully</msg>
     </result>
     <resData>
       <domain:infData
        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
         <domain:name>exampleone.tld</domain:name>
         <domain:roid>EXAMPLE1-REP</domain:roid>
         <domain:status s="pendingCreate"/>
         <domain:registrant>jd1234</domain:registrant>
         <domain:contact type="admin">sh8013</domain:contact>
         <domain:contact type="tech">sh8013</domain:contact>
         <domain:clID>ClientX</domain:clID>
         <domain:crID>ClientY</domain:crID>
         <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
         <domain:authInfo>
           <domain:pw>2fooBAR</domain:pw>
         </domain:authInfo>
       </domain:infData>
     </resData>
     <extension>
       <launch:infData
        xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
         <launch:phase>sunrise</launch:phase>
          <launch:applicationID>abc123</launch:applicationID>
          <launch:status s="rejected" name="rejectedAuction" lang="en">
            Application rejected due to result of auction.
          </launch:status>
          <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AC</launch:code>
            <launch:mark>
              <launch:name>Example One</launch:name>
              <launch:label>example-one</launch:label>
              <launch:label>exampleone</launch:label>
              <launch:issuer>IP Clearinghouse</launch:issuer>
              <launch:number>GE 3933232</launch:number>
              <launch:type>REG-TM-WORD</launch:type>
              <launch:entitlement>owner</launch:entitlement>
              <launch:regDate>2011-09-09</launch:regDate>
              <launch:exDate>2013-09-09</launch:exDate>
              <launch:country>AU</launch:country>
              <launch:region>VIC</launch:region>
              <launch:owner>
                <launch:org>Example Inc.</launch:org>
              </launch:owner>
              <launch:contact>
                <launch:name>John Doe</launch:name>
                <launch:org>Example Inc.</launch:org>
                <launch:addr>
                  <launch:street>123 Example Dr.</launch:street>
                  <launch:street>Suite 100</launch:street>
                  <launch:city>Reston</launch:city>
                  <launch:sp>VA</launch:sp>
                  <launch:pc>20190</launch:pc>
                  <launch:cc>US</launch:cc>
                </launch:addr>
                <launch:voice x="1234">+1.7035555555</launch:voice>
                <launch:fax>+1.7035555556</launch:fax>
                <launch:email>jdoe@example.tld</launch:email>
              </launch:contact>
            </launch:mark>
          </launch:codeMark>
       </launch:infData>
     </extension>
     <trID>
       <clTRID>ABC-12345</clTRID>
       <svTRID>54322-XYZ</svTRID>
     </trID>
   </response>
 </epp>
]]></artwork>
          </figure>

          <figure>
            <preamble>Example &lt;info&gt; domain response using the Sunrise
            Info Form &lt;launch:infData&gt; extension signed mark
            information.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   <response>
     <result code="1000">
       <msg>Command completed successfully</msg>
     </result>
     <resData>
       <domain:infData
        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
         <domain:name>exampleone.tld</domain:name>
         <domain:roid>EXAMPLE1-REP</domain:roid>
         <domain:status s="pendingCreate"/>
         <domain:registrant>jd1234</domain:registrant>
         <domain:contact type="admin">sh8013</domain:contact>
         <domain:contact type="tech">sh8013</domain:contact>
         <domain:clID>ClientX</domain:clID>
         <domain:crID>ClientY</domain:crID>
         <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
         <domain:authInfo>
           <domain:pw>2fooBAR</domain:pw>
         </domain:authInfo>
       </domain:infData>
     </resData>
     <extension>
       <launch:infData
        xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
         <launch:phase>sunrise</launch:phase>
          <launch:applicationID>abc123</launch:applicationID>
          <launch:status s="pending"/>
          <launch:signedMark>
            <launch:serial>123456</launch:serial>
            <launch:zone>newtld</launch:zone>
            <launch:exDate>2012-08-16T09:00:00.0Z</launch:exDate>
            <launch:mark>
              <launch:name>Example One</launch:name>
              <launch:label>example-one</launch:label>
              <launch:label>exampleone</launch:label>
              <launch:issuer>IP Clearinghouse</launch:issuer>
              <launch:number>GE 3933232</launch:number>
              <launch:type>REG-TM-WORD</launch:type>
              <launch:entitlement>owner</launch:entitlement>
              <launch:regDate>2011-09-09</launch:regDate>
              <launch:exDate>2013-09-09</launch:exDate>
              <launch:country>AU</launch:country>
              <launch:region>VIC</launch:region>
              <launch:owner>
                <launch:org>Example Inc.</launch:org>
              </launch:owner>
              <launch:contact>
                <launch:name>John Doe</launch:name>
                <launch:org>Example Inc.</launch:org>
                <launch:addr>
                  <launch:street>123 Example Dr.</launch:street>
                  <launch:street>Suite 100</launch:street>
                  <launch:city>Reston</launch:city>
                  <launch:sp>VA</launch:sp>
                  <launch:pc>20190</launch:pc>
                  <launch:cc>US</launch:cc>
                </launch:addr>
                <launch:voice x="1234">+1.7035555555</launch:voice>
                <launch:fax>+1.7035555556</launch:fax>
                <launch:email>jdoe@example.tld</launch:email>
              </launch:contact>
            </launch:mark>
            <Signature xmlns=
              "http://www.w3.org/2000/09/xmldsig#">
              <SignedInfo>
                <CanonicalizationMethod 
                  Algorithm=
                  "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
                 <SignatureMethod 
               Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/> 
                <Reference URI="#pointer(..)">
                  <Transforms>
                    <Transform
                      Algorithm=
               "http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
                  </Transforms>
                  <DigestMethod 
                    Algorithm=
                "http://www.w3.org/2000/09/xmldsig#sha1"/>
                <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> 
                </Reference>
              </SignedInfo>
              <SignatureValue>
            cID8yqvR60QYQVhOpBDUmPiIxplV/fM7lj9RKF+fswSjJAklUrgf2w==
              </SignatureValue>
            </Signature>
          </launch:signedMark>
       </launch:infData>
     </extension>
     <trID>
       <clTRID>ABC-12345</clTRID>
       <svTRID>54322-XYZ</svTRID>
     </trID>
   </response>
 </epp>
]]></artwork>
          </figure>
        </section>

        <section anchor="claimsInfoForm" title="Claims Info Form">
          <t>The Claims Info Form of the extension to the <xref
          target="RFC5731">EPP domain name mapping</xref> gets trademark
          claims information for a non-existing domain name that is referred
          to as a Claims Info Command. The &lt;launch:info&gt; element
          contains the following child elements:</t>

          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">The phase with the value of
              "claims" to indicate that this is a Claims Info Command.</t>
            </list></t>
          <figure>
            <preamble>Example Claims Info Command using the &lt;info&gt;
            domain command and the Claims Info Form &lt;launch:info&gt;
            extension.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
   <info>
    <domain:info
     xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
      <domain:name>example.tld</domain:name>
    </domain:info>
   </info>
   <extension>
    <launch:info
     xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>claims</launch:phase>
    </launch:info>
   </extension>
   <clTRID>ABC-12345</clTRID>
  </command>
</epp>
]]></artwork>
          </figure>

          <t>If the query was successful, the server replies with an
          &lt;launch:infData&gt; element containing the trademark claims
          information expected to be used by the client to generate the claims notice. The
          &lt;launch:infData&gt; has the following child elements:</t>

          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">the phase with a value of
              "claims".</t>

              <t hangText="&lt;launch:notice&gt;">The information used for the
              trademark claims notice. The &lt;launch:notice&gt; element has
              the following child elements:</t>

              <t><list hangIndent="4" style="hanging">
                  <t hangText="&lt;launch:name&gt;">The domain name that the
                  claim notice information is associated with.</t>

                  <t hangText="&lt;launch:none&gt;">OPTIONAL element included
                  if there are no trademark claims associated with the
                  &lt;launch:name&gt;</t>

                  <t hangText="&lt;launch:noticeID&gt;">OPTIONAL server generated 
                  identifier for the claims notice that is passed in 
                  the &lt;launch:create&gt; extension of the <xref target="createCommand">Create Command</xref>.   
                  This MUST be included if there is at least one trademark claim 
                  associated with the &lt;launch:notice&gt; &lt;launch:name&gt; element. 
                  </t>

                  <t hangText="&lt;launch:mark&gt;">Zero or more
                  &lt;launch:mark&gt; elements containing the trademark
                   information as defined in the <xref
                  target="mark">Mark</xref> section.</t>
                </list></t>
            </list></t>

          <figure>
            <preamble>Example Claims Info Response when no matching trademark
            claims are found for the domain name example.tld.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
     <msg>Command completed successfully</msg>
    </result>
    <resData>
     <launch:infData
      xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>claims</launch:phase>
      <launch:notice>
        <launch:name>example.tld</launch:name>
        <launch:none/>
      </launch:notice>
     </launch:infData>
    </resData>
    <trID>
     <clTRID>ABC-12345</clTRID>
     <svTRID>54322-XYZ</svTRID>
    </trID>
  </response>
</epp>
 ]]></artwork>
          </figure>

          <figure>
            <preamble>Example Claims Info Response when two matching trademark
            claims are found for the domain name exampleone.tld.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
     <msg>Command completed successfully</msg>
    </result>
    <resData>
     <launch:infData
      xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>claims</launch:phase>
      <launch:notice>
        <launch:name>exampleone.tld</launch:name>
            <launch:noticeID>49FD46E6C4B45C55D4AC</launch:noticeID>
        <launch:mark>
          <launch:name>Example One</launch:name>
          <launch:label>example-one</launch:label>
          <launch:label>exampleone</launch:label>
          <launch:issuer>IP Clearinghouse</launch:issuer>
          <launch:number>GE 3933232</launch:number>
          <launch:type>REG-TM-WORD</launch:type>
          <launch:entitlement>owner</launch:entitlement>
          <launch:regDate>2011-09-09</launch:regDate>
          <launch:exDate>2013-09-09</launch:exDate>
          <launch:country>AU</launch:country>
          <launch:region>VIC</launch:region>
          <launch:owner>
            <launch:org>Example Inc.</launch:org>
          </launch:owner>
          <launch:contact>
            <launch:name>John Doe</launch:name>
            <launch:org>Example Inc.</launch:org>
            <launch:addr>
              <launch:street>123 Example Dr.</launch:street>
              <launch:street>Suite 100</launch:street>
              <launch:city>Reston</launch:city>
              <launch:sp>VA</launch:sp>
              <launch:pc>20190</launch:pc>
              <launch:cc>US</launch:cc>
            </launch:addr>
            <launch:voice x="1234">+1.7035555555</launch:voice>
            <launch:fax>+1.7035555556</launch:fax>
            <launch:email>jdoe@example.tld</launch:email>
          </launch:contact>
        </launch:mark>
        <launch:mark>
          <launch:name>Example Two</launch:name>
          <launch:label>example-two</launch:label>
          <launch:label>exampletwo</launch:label>
          <launch:issuer>IP Clearinghouse</launch:issuer>
          <launch:number>GE 3933233</launch:number>
          <launch:type>REG-TM-WORD</launch:type>
          <launch:entitlement>owner</launch:entitlement>
          <launch:regDate>2011-09-09</launch:regDate>
          <launch:exDate>2013-09-09</launch:exDate>
          <launch:country>AU</launch:country>
          <launch:region>VIC</launch:region>
          <launch:owner>
            <launch:org>Example Inc.</launch:org>
          </launch:owner>
          <launch:contact>
            <launch:name>John Doe</launch:name>
            <launch:org>Example Inc.</launch:org>
            <launch:addr>
              <launch:street>123 Example Dr.</launch:street>
              <launch:street>Suite 100</launch:street>
              <launch:city>Reston</launch:city>
              <launch:sp>VA</launch:sp>
              <launch:pc>20190</launch:pc>
              <launch:cc>US</launch:cc>
            </launch:addr>
            <launch:voice x="1234">+1.7035555555</launch:voice>
            <launch:fax>+1.7035555556</launch:fax>
            <launch:email>jdoe@example.tld</launch:email>
          </launch:contact>
        </launch:mark>
      </launch:notice>
     </launch:infData>
    </resData>
    <trID>
     <clTRID>ABC-12345</clTRID>
     <svTRID>54322-XYZ</svTRID>
    </trID>
  </response>
</epp>
 ]]></artwork>
          </figure>
        </section>

        <!-- example info cmd -->
      </section>

      <!-- end INFO command -->

      <section anchor="createCommand" title="EPP &lt;create&gt; Command">
        <t>There are two forms of the extension to the EPP &lt;create&gt;
        command that are dependent on the supported <xref
        target="phases">launch phases</xref> as defined below:</t>

        <t><list style="hanging">
            <t hangText="sunrise">The EPP &lt;create&gt; command with the
            "sunrise" phase is used to submit an application with trademark
            information that can be verified by the server with the
            &lt;domain:name&gt; value. The <xref target="sunriseCreateForm">
            Sunrise Create Form</xref> is used for the "sunrise" phase.
            Optionally, the server can support multiple overlapping
            applications that are chosen asynchronously with a server
            generated <xref target="applicationID">Application
            Identifier</xref> for later reference.</t>

            <t hangText="landrush">The EPP &lt;create&gt; command with the
            "landrush" phase is undefined but the form supported is up to
            server policy.</t>

            <t hangText="claims">The EPP &lt;create&gt; command with the
            "claims" phase is used to pass the information that can be used to
            validate that the claims notice information was retrieved via the
            Claims Info Command and was accepted by the registrant. The <xref
            target="claimsCreateForm">Claims Create Form</xref> is used for
            the "claims" phase.</t>

            <t hangText="open">The EPP &lt;create&gt; command with the "open"
            phase is undefined but the form supported is up to server
            policy.</t>

            <t hangText="custom">The EPP &lt;create&gt; command with the
            "custom" phase is undefined but the form supported is up to server
            policy.</t>
          </list></t>

        <section anchor="sunriseCreateForm" title="Sunrise Create Form">
          <t>The Sunrise Create Form of the extension to the <xref
          target="RFC5731">EPP domain name mapping</xref> includes the
          verifiable trademark information that the server uses to match
          against the domain name to authorize the domain create. A server
          MUST support one of four models in <xref
          target="validationModels">Claim Validation Models</xref> for the
          verifiable trademark information passed by the client.</t>

          <t>A &lt;launch:create&gt; element is sent along with the regular
          &lt;create&gt; domain command. The &lt;launch:create&gt; element
          contains the following child elements:</t>

          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">The phase the application is
              associated with.</t>

              <t
              hangText="&lt;launch:codeMark&gt; or &lt;launch:signedMark&gt;">
                  <list hangIndent="4" style="hanging">

              <t hangText="&lt;launch:codeMark&gt;">zero or more
              &lt;launch:codeMark&gt; elements.  The &lt;launch:codeMark&gt;
              child elements are defined in the 
              <xref target="codeMark">&lt;launch:codeMark&gt; element</xref> 
              section.</t>

              <t hangText="&lt;launch:signedMark&gt;">zero or more
              &lt;launch:signedMark&gt; elements.  The &lt;launch:signedMark&gt; 
              child elements are defined in 
              the <xref target="signedMark">&lt;launch:signedMark&gt; element</xref> 
              section.</t>
              
              </list></t>
            </list></t>

          <figure>
            <preamble>Following is an example &lt;create&gt; domain command
            using the &lt;launch:create&gt; extension with multiple sunrise
            codes.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.tld</domain:name>
        <domain:registrant>jd1234</domain:registrant>
        <domain:contact type="admin">sh8013</domain:contact>
        <domain:contact type="tech">sh8013</domain:contact>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <launch:create
       xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
        <launch:phase>sunrise</launch:phase>
        <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AC</launch:code>
        </launch:codeMark>
        <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AD</launch:code>
        </launch:codeMark>
        <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AE</launch:code>
        </launch:codeMark>
      </launch:create>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>
    ]]></artwork>
          </figure>

          <figure>
            <preamble>Following is an example &lt;create&gt; domain command
            using the &lt;launch:create&gt; extension with a code and mark
            information.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>exampleone.tld</domain:name>
        <domain:registrant>jd1234</domain:registrant>
        <domain:contact type="admin">sh8013</domain:contact>
        <domain:contact type="tech">sh8013</domain:contact>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <launch:create
       xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
          <launch:phase>sunrise</launch:phase>
          <launch:codeMark>
            <launch:code>49FD46E6C4B45C55D4AC</launch:code>
            <launch:mark>
              <launch:name>Example One</launch:name>
              <launch:label>example-one</launch:label>
              <launch:label>exampleone</launch:label>
              <launch:issuer>IP Clearinghouse</launch:issuer>
              <launch:number>GE 3933232</launch:number>
              <launch:type>REG-TM-WORD</launch:type>
              <launch:entitlement>owner</launch:entitlement>
              <launch:regDate>2011-09-09</launch:regDate>
              <launch:exDate>2013-09-09</launch:exDate>
              <launch:country>AU</launch:country>
              <launch:region>VIC</launch:region>
              <launch:owner>
                <launch:org>Example Inc.</launch:org>
              </launch:owner>
              <launch:contact>
                <launch:name>John Doe</launch:name>
                <launch:org>Example Inc.</launch:org>
                <launch:addr>
                  <launch:street>123 Example Dr.</launch:street>
                  <launch:street>Suite 100</launch:street>
                  <launch:city>Reston</launch:city>
                  <launch:sp>VA</launch:sp>
                  <launch:pc>20190</launch:pc>
                  <launch:cc>US</launch:cc>
                </launch:addr>
                <launch:voice x="1234">+1.7035555555</launch:voice>
                <launch:fax>+1.7035555556</launch:fax>
                <launch:email>jdoe@example.tld</launch:email>
              </launch:contact>
            </launch:mark>
          </launch:codeMark>
      </launch:create>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>    
]]></artwork>
          </figure>

          <figure>
            <preamble>Following is an example &lt;create&gt; domain command
            using the &lt;launch:create&gt; extension with signed mark
            information.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.tld</domain:name>
        <domain:registrant>jd1234</domain:registrant>
        <domain:contact type="admin">sh8013</domain:contact>
        <domain:contact type="tech">sh8013</domain:contact>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <launch:create
        xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
          <launch:phase>sunrise</launch:phase>
          <launch:signedMark>
            <launch:serial>123456</launch:serial>
            <launch:zone>newtld</launch:zone>
            <launch:label>example-and-example</launch:label>
            <launch:label>example</launch:label>
        <launch:mark>
          <launch:name>Hello</launch:name>
          <launch:issuer>IP Clearinghouse</launch:issuer>
          <launch:number>GE 3933232</launch:number>
          <launch:type>REG-TM-WORD</launch:type>
          <launch:entitlement>owner</launch:entitlement>
          <launch:regDate>2011-09-09</launch:regDate>
          <launch:exDate>2013-09-09</launch:exDate>
          <launch:country>AU</launch:country>
          <launch:region>VIC</launch:region>
          <launch:owner>
            <launch:org>Example Inc.</launch:org>
          </launch:owner>
          <launch:contact>
            <launch:name>John Doe</launch:name>
            <launch:org>Example Inc.</launch:org>
            <launch:addr>
              <launch:street>123 Example Dr.</launch:street>
              <launch:street>Suite 100</launch:street>
              <launch:city>Reston</launch:city>
              <launch:sp>VA</launch:sp>
              <launch:pc>20190</launch:pc>
              <launch:cc>US</launch:cc>
            </launch:addr>
            <launch:voice x="1234">+1.7035555555</launch:voice>
            <launch:fax>+1.7035555556</launch:fax>
            <launch:email>jdoe@example.tld</launch:email>
          </launch:contact>
        </launch:mark>
            <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
              <SignedInfo>
            <CanonicalizationMethod 
             Algorithm=
             "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
            <SignatureMethod 
             Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/> 
            <Reference URI="#pointer(..)">
              <Transforms>
                <Transform
                  Algorithm=
               "http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
              </Transforms>
              <DigestMethod 
                Algorithm=
                "http://www.w3.org/2000/09/xmldsig#sha1"/>
              <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> 
            </Reference>
          </SignedInfo>
          <SignatureValue>
            cID8yqvR60QYQVhOpBDUmPiIxplV/fM7lj9RKF+fswSjJAklUrgf2w==
          </SignatureValue>
        </Signature>
          </launch:signedMark>
      </launch:create>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>
]]></artwork>
          </figure>

          <t>If the create was successful, the server MAY reply with the
          &lt;launch:creData&gt; element along with the regular EPP
          &lt;resData&gt; to indicate the server generated <xref
          target="applicationID">Application Identifier</xref> when multiple
          applications of a given domain name is supported; otherwise no
          extension is included with the regular EPP &lt;resData&gt;. The
          &lt;launch:creData&gt; element contains the following child
          elements:</t>
          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">The phase of the application
              that mirrors the &lt;launch:phase&gt; element included in the
              &lt;launch:create&gt;.</t>

              <t hangText="&lt;launch:applicationID&gt;">the application
              identifier of the application.</t>
            </list></t>

          <figure>
            <preamble>An example response when multiple overlapping
            applications are supported by the server.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <resData>
      <domain:creData
         xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
       <domain:name>example.tld</domain:name>
       <domain:crDate>2010-08-10T15:38:26.623854Z</domain:crDate>
       <domain:exDate>2012-08-10T15:38:26.623854Z</domain:exDate>
      </domain:creData>
    </resData>
    <extension>
      <launch:creData xmlns:lp="urn:ietf:params:xml:ns:launchphase-1.0">
        <launch:phase>sunrise</launch:phase>
        <launch:applicationID>2393-9323-E08C-03B1</launch:applicationID>
      </launch:creData>
    </extension>
    <trID>
      <clTRID>example:epp:239332</clTRID>
      <svTRID>server-8551292e23b</svTRID>
    </trID>
  </response>
</epp>
    ]]></artwork>
          </figure>

          <!-- end example sunrise create cmd -->
        </section>

        <section anchor="claimsCreateForm" title="Claims Create Form">
          <t>The Claims Create Form of the extension to the <xref
          target="RFC5731">EPP domain name mapping</xref> includes the
          information related to the acceptance of the claims notice that is
          based on the contents of the Claims Info Response defined in the
          <xref target="claimsInfoForm">Claims Info Form</xref> section or is based 
          on a signed notice by a trusted third party like the Trademark Clearinghouse (TMCH).</t>

          <t>A &lt;launch:create&gt; element is sent along with the regular
          &lt;create&gt; domain command. The &lt;launch:create&gt; element
          contains the following child elements:</t>

          <t><list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:phase&gt;">Must contain the value of
              "claims" to indicate it is the Claims Create Form</t>
              <t hangText="&lt;launch:notice&gt;">
                  <list hangIndent="4" style="hanging">
              <t hangText="&lt;launch:timestamp&gt;">Contains the
              date and time that the claims notice was accepted.</t>

              <t hangText="&lt;launch:clientAddr&gt;">Contains the
              client IP address of the client that accepted the
              claims notice.</t>
                  
                    <t hangText="&lt;launch:noticeID&gt; or &lt;launch:signedNotice&gt;">
                    
                      <list hangIndent="4" style="hanging">
                      
                        <t hangText="&lt;launch:noticeID&gt;">Server generated
                        identifier for the claim notice information returned
                        in the &lt;launch:infData&gt; element. The server MUST
                        validate the noticeID either matches the exact claims
                        information returned in the &lt;launch:infData&gt; or
                        the current claims information associated with the
                        domain name. The method of validation is up to server
                        policy. If the launchID does not pass the validation
                        the server MUST return an EPP error result code of
                        2202.</t>
                        
                <t hangText="&lt;launch:signedNotice&gt;">Signed claims
                notice reference information generated by a trusted third party
                like the Trademark Clearinghouse (TMCH). The child elements 
                of &lt;signedNotice&gt; are defined in the 
                <xref target="signedNotice">&lt;launch:signedNotice&gt; element</xref>
                section.</t>  
                
                      </list>
                    </t>
                  </list>
                </t>
            </list></t>

          <figure>
            <preamble>Following is an example &lt;create&gt; domain command
            using the &lt;launch:create&gt; extension with the trademark
            claims notice reference information and a &lt;launch:noticeID&gt;.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.tld</domain:name>
        <domain:registrant>jd1234</domain:registrant>
        <domain:contact type="admin">sh8013</domain:contact>
        <domain:contact type="tech">sh8013</domain:contact>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <launch:create
       xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
        <launch:phase>claims</launch:phase>
        <launch:notice>
          <launch:timestamp>2012-06-19T09:00:00.0Z</launch:timestamp>
          <launch:clientAddr ip="v4">192.0.2.29</launch:clientAddr>
          <launch:noticeID>49FD46E6C4B45C55D4AC</launch:noticeID>
        </launch:notice>
      </launch:create>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>
    ]]></artwork>
          </figure>

          <figure>
            <preamble>Following is an example &lt;create&gt; domain command
            using the &lt;launch:create&gt; extension with the signed notice
            reference information.</preamble>

            <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <create>
      <domain:create
        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.tld</domain:name>
        <domain:registrant>jd1234</domain:registrant>
        <domain:contact type="admin">sh8013</domain:contact>
        <domain:contact type="tech">sh8013</domain:contact>
        <domain:authInfo>
          <domain:pw>2fooBAR</domain:pw>
        </domain:authInfo>
      </domain:create>
    </create>
    <extension>
      <launch:create
        xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
        <launch:phase>claims</launch:phase>
        <launch:notice>
          <launch:timestamp>2012-06-19T09:00:00.0Z</launch:timestamp>
          <launch:clientAddr ip="v4">192.0.2.29</launch:clientAddr>
          <launch:signedNotice>
            <launch:noticeID>49FD46E6C4B45C55D4AC</launch:noticeID>
            <launch:name>example.tld</launch:name>
            <launch:crDate>2012-09-07T22:00:00.0Z</launch:crDate>
            <launch:exDate>2012-09-08T22:00:00.0Z</launch:exDate>
            <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
            <SignedInfo>
              <CanonicalizationMethod 
               Algorithm=
               "http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
              <SignatureMethod 
               Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/> 
              <Reference URI="#pointer(..)">
                <Transforms>
                  <Transform
                    Algorithm=
               "http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
                </Transforms>
                <DigestMethod 
                  Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue> 
              </Reference>
            </SignedInfo>
            <SignatureValue>
              cID8yqvR60QYQVhOpBDUmPiIxplV/fM7lj9RKF+fswSjJAklUrgf2w==
            </SignatureValue>
            </Signature>
          </launch:signedNotice>
        </launch:notice>
      </launch:create>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>
]]></artwork>
          </figure>

          <!-- end example claims create cmd -->
        </section>
      </section>

      <!-- end CREATE command -->

      <section anchor="updateCommand" title="EPP &lt;update&gt; Command">
        <t>This extension defines additional elements to extend the EPP
        &lt;update&gt; command to be used in conjunction with the domain name
        mapping.</t>

        <t>A server that does not support allow multiple applications of a
        given domain name with a <xref target="applicationID">Application
        Identifier</xref> during its launch phase operations MUST return an
        EPP error result code of 2102.</t>

        <t>Registry policies permitting, clients may update an application
        object by submitting an EPP &lt;update&gt; command along with an
        &lt;launch:update&gt; element to indicate the application object to be
        updated. The &lt;launch:update&gt; element contains the following
        child elements:</t>
        <t><list hangIndent="4" style="hanging">
            <t hangText="&lt;launch:phase&gt;">the phase during which the
            application was submitted or is associated with.</t>

            <t hangText="&lt;launch:applicationID&gt;">the application
            identifier for which the client wishes to update.</t>
          </list></t>

        <t>This extension does not define any extension to the response of an
        &lt;update&gt; domain command. After processing the command, the
        server replies with a standard EPP response as defined in the EPP
        domain mapping.</t>

        <figure>
          <preamble>Following is an example &lt;update&gt; domain command with
          the &lt;launch:update&gt; extension to add and remove a name server
          of a sunrise application with the application identifier
          "abc123".</preamble>

          <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
    <update>
      <domain:update
       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
        <domain:name>example.tld</domain:name>
        <domain:add>
            <domain:ns>
              <domain:hostObj>ns2.example.tld</domain:hostObj>
            </domain:ns>
          </domain:add>
          <domain:rem>
            <domain:ns>
              <domain:hostObj>ns1.example.tld</domain:hostObj>
            </domain:ns>
          </domain:rem>
      </domain:update>
    </update>
    <extension>
    <launch:update
     xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>sunrise</launch:phase>
      <launch:applicationID>abc123</launch:applicationID>
    </launch:update>
    </extension>
    <clTRID>ABC-12345</clTRID>
  </command>
</epp>
]]></artwork>
        </figure>

        <figure>
          <preamble>An example response that corresponds to the above
          command.</preamble>

          <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>example:epp:239333</clTRID>
      <svTRID>server-8551292e23c</svTRID>
    </trID>
  </response>
</epp>
    ]]></artwork>
        </figure>

        <!-- example update cmd -->
      </section>

      <!-- end UPDATE command -->

      <section anchor="deleteCommand" title="EPP &lt;delete&gt; Command">
        <t>This extension defines additional elements to extend the EPP
        &lt;delete&gt; command to be used in conjunction with the domain name
        mapping.</t>

        <t>A server that does not support allow multiple applications of a
        given domain name with a <xref target="applicationID">Application
        Identifier</xref> during its launch phase operations MUST return an
        EPP error result code of 2102.</t>

        <t>Registry policies permitting, clients MAY withdraw an application
        by submitting an EPP &lt;delete&gt; command along with an
        &lt;launch:delete&gt; element to indicate the application object to be
        deleted. The &lt;launch:delete&gt; element contains the following
        child elements:</t>
        <t><list hangIndent="4" style="hanging">
            <t hangText="&lt;launch:phase&gt;">the phase during which the
            application was submitted or is associated with.</t>

            <t hangText="&lt;launch:applicationID&gt;">the application
            identifier for which the client wishes to delete.</t>
          </list></t>

        <t>This extension does not define any extension to the response of an
        &lt;delete&gt; domain command. After processing the command, the
        server replies with a standard EPP response as defined in the EPP
        domain mapping.</t>

        <figure>
          <preamble>Following is an example &lt;delete&gt; domain command with
          the &lt;launch:delete&gt; extension.</preamble>

          <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <command>
   <delete>
    <domain:delete
     xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
      <domain:name>example.tld</domain:name>
    </domain:delete>
   </delete>
   <extension>
    <launch:delete
     xmlns:launch="urn:ietf:params:xml:ns:launch-1.0">
      <launch:phase>sunrise</launch:phase>
      <launch:applicationID>abc123</launch:applicationID>
    </launch:delete>
   </extension>
   <clTRID>ABC-12345</clTRID>
  </command>
</epp>    
]]></artwork>
        </figure>

        <figure>
          <preamble>An example response that corresponds to the above
          command.</preamble>

          <artwork><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
  <response>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
    <trID>
      <clTRID>example:epp:239334</clTRID>
      <svTRID>server-8551292e23d</svTRID>
    </trID>
  </response>
</epp>
    ]]></artwork>
        </figure>

        <!-- example delete cmd -->
      </section>

      <!-- end DELETE command -->

      <section anchor="renewCommand" title="EPP &lt;renew&gt; Command">
        <t>This extension does not define any extension to the EPP
        &lt;renew&gt; command or response described in the <xref
        target="RFC5731">EPP domain name mapping</xref>.</t>
      </section>

      <!-- end RENEW command -->

      <section anchor="transferCommand" title="EPP &lt;transfer&gt; Command">
        <t>This extension does not define any extension to the EPP
        &lt;transfer&gt; command or response described in the <xref
        target="RFC5731">EPP domain name mapping</xref>.</t>
      </section>

      <!-- end TRANSFER command -->
    </section>

    <!-- EPP command mapping -->

    <section anchor="syntax" title="Formal Syntax">
      <t>An EPP object mapping is specified in XML Schema notation. The formal
      syntax presented here is a complete schema representation of the object
      mapping suitable for automated validation of EPP XML instances. The
      BEGIN and END tags are not part of the schema; they are used to note the
      beginning and ending of the schema for URI registration purposes.</t>

      <t>Copyright (c) 2012 IETF Trust and the persons identified as authors
      of the code. All rights reserved.</t>

      <t>Redistribution and use in source and binary forms, with or without
      modification, are permitted provided that the following conditions are
      met:</t>

      <t><list style="symbols">
          <t>Redistributions of source code must retain the above copyright
          notice, this list of conditions and the following disclaimer.</t>

          <t>Redistributions in binary form must reproduce the above copyright
          notice, this list of conditions and the following disclaimer in the
          documentation and/or other materials provided with the
          distribution.</t>

          <t>Neither the name of Internet Society, IETF or IETF Trust, nor the
          names of specific contributors, may be used to endorse or promote
          products derived from this software without specific prior written
          permission.</t>
        </list></t>

      <t>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
      "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
      LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
      PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
      OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
      EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
      PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
      PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
      LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
      NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
      SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</t>

      <figure>
        <artwork><![CDATA[
BEGIN
<?xml version="1.0" encoding="UTF-8"?>
<schema 
  targetNamespace="urn:ietf:params:xml:ns:launch-1.0" 
  xmlns:launch="urn:ietf:params:xml:ns:launch-1.0" 
   xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
   xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
  xmlns="http://www.w3.org/2001/XMLSchema" 
  elementFormDefault="qualified">
  
<!--
Import common element types.
-->
  <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
          schemaLocation="eppcom-1.0.xsd"/> 
  
  <import namespace="http://www.w3.org/2000/09/xmldsig#"
          schemaLocation="xmldig-core-schema.xsd"/> 
  
  
  <annotation>
    <documentation> 
      Extensible Provisioning Protocol v1.0 
      domain name extension schema 
      for the launch phase processing.  
    </documentation>
  </annotation>
  
  <!-- 
  Child elements found in EPP commands.  
  -->
  <element name="check" type="launch:checkType"/>
  <element name="info" type="launch:infoType"/>
  <element name="create" type="launch:createType"/>
  <element name="update" type="launch:idContainerType"/>
  <element name="delete" type="launch:idContainerType"/>
  
  <!-- 
  Common container of id (identifier) element
  -->
  <complexType name="idContainerType">
    <sequence>
      <element name="phase" type="launch:phaseType"/>
      <element name="applicationID" type="token"/>
    </sequence>
  </complexType>
  
  <!-- 
  Definition for application identifier
  -->
  <simpleType name="applicationIDType">
    <restriction base="token"/>
  </simpleType>
  
  <!-- 
  Definition for launch phase.  Name is an optional attribute
  used to extend the phase type.  For example, when 
  using the phase type value of &qt;custom&gt;, the name 
  can be used to specify the custom phase.  
  -->
  <complexType name="phaseType">
    <simpleContent>
      <extension base="launch:phaseTypeValue">
        <attribute name="name" type="token"/>
      </extension>
    </simpleContent>
  </complexType>
  
  <!-- 
  Enumeration of for launch phase values.  
  -->
  <simpleType name="phaseTypeValue">
      <restriction base="token">
        <enumeration value="sunrise"/>
        <enumeration value="landrush"/>
        <enumeration value="claims"/>
        <enumeration value="open"/>
        <enumeration value="custom"/>
    </restriction>
  </simpleType>
  
  
  <!-- 
  Definition for the sunrise code   
  -->
  <simpleType name="codeType">
    <restriction base="base64Binary">
      <minLength value="1"/>
    </restriction>
  </simpleType>
  
  <!-- 
  Definition for the notice identifier   
  -->
  <simpleType name="noticeIDType">
    <restriction base="base64Binary">
      <minLength value="1"/>
    </restriction>
  </simpleType>
  
  <simpleType name="ccType">
    <restriction base="token">
      <length value="2"/>
    </restriction>
  </simpleType>
  
  <simpleType name="pcType">
    <restriction base="token">
      <maxLength value="16"/>
    </restriction>
  </simpleType>
  
  
  <!-- 
  Definition of the IP address taken from host-1.0.
  --> 
   <complexType name="ipAddrType">
     <simpleContent>
       <extension base="launch:addrStringType">
         <attribute name="ip" type="launch:ipType"
          default="v4"/>
       </extension>
     </simpleContent>
   </complexType>

   <simpleType name="addrStringType">
     <restriction base="token">
       <minLength value="3"/>
       <maxLength value="45"/>
     </restriction>
   </simpleType>

   <simpleType name="ipType">
     <restriction base="token">
       <enumeration value="v4"/>
       <enumeration value="v6"/>
     </restriction>
   </simpleType>
  
  <!-- Possible status values for sunrise application -->
    <simpleType name="statusValueType">
    <restriction base="token">
        <enumeration value="pending"/>
        <enumeration value="validated"/>
        <enumeration value="invalid"/>
        <enumeration value="pendingAuction"/>
        <enumeration value="allocated"/>
        <enumeration value="rejected"/>
        <enumeration value="custom"/>
      </restriction>
    </simpleType>
  
  <complexType name="statusType">
    <simpleContent>
      <extension base="normalizedString">
        <attribute name="s" type="launch:statusValueType" 
          use="required"/>
        <attribute name="lang" type="language" 
          default="en"/>
        <attribute name="name" type="token"/>
      </extension>
    </simpleContent>
  </complexType>
  
    <complexType name="signedMarkType">
    <sequence>
      <element name="serial" type="token"/>
      <element name="zone" type="eppcom:labelType"
      minOccurs="0" maxOccurs="unbounded"/>
      <element name="exDate" type="dateTime" 
      minOccurs="0"/>
      <element name="mark" type="launch:markType"/>
      <element ref="ds:Signature"/>
    </sequence>
  </complexType>

  <complexType name="codeMarkType">
    <sequence>
      <element name="code" type="launch:codeType" 
        minOccurs="0"/> 
      <element name="mark" type="launch:markType" 
        minOccurs="0"/>
    </sequence>
  </complexType>

  <!-- 
  Child elements of create for both Sunrise and Claims periods
  -->
  <complexType name="createType">
    <sequence>
      <element name="phase" type="launch:phaseType"/>
      <choice>
        <element name="codeMark" 
          type="launch:codeMarkType" 
         maxOccurs="unbounded"/>
        <element name="signedMark" 
          type="launch:signedMarkType" 
         maxOccurs="unbounded"/>
        <element name="notice" 
          type="launch:createNoticeType"/> 
      </choice>
    </sequence>
  </complexType>
  
  <!-- 
  Child elements of the create notice element. 
  -->
  <complexType name="createNoticeType">
    <sequence>
      <element name="timestamp" type="dateTime"/>
      <element name="clientAddr" type="launch:ipAddrType"/>
      <choice>
        <element name="noticeID" type="launch:noticeIDType"/>
         <element name="signedNotice" 
          type="launch:signedNoticeType"/> 
      </choice>
    </sequence>
  </complexType>

  <complexType name="signedNoticeType">
    <sequence>
      <element name="noticeID" type="launch:noticeIDType"/>
      <element name="name" type="eppcom:labelType"/>
      <element name="crDate" type="dateTime"/>
      <element name="exDate" type="dateTime" 
      minOccurs="0"/>
      <element ref="ds:Signature"/>
    </sequence>
  </complexType>


  <!-- 
  Child elements of check (Claims Info Command).  
  -->
  <complexType name="checkType">
    <sequence>
      <element name="phase" type="launch:phaseType"/>
    </sequence>
  </complexType>


  <!-- 
  Child elements of info for both Sunrise and Claims periods.  
  -->
  <complexType name="infoType">
    <sequence>
      <element name="phase" type="launch:phaseType"/>
      <element name="applicationID" 
        type="launch:applicationIDType" 
        minOccurs="0"/>
    </sequence>
  </complexType>

  <!-- 
  Child response elements.  
  -->
  <element name="chkData" type="launch:chkDataType"/>    
  <element name="creData" type="launch:idContainerType"/>
  <element name="infData" type="launch:infDataType"/>
  
<!--
<check> response elements.
-->
  <complexType name="chkDataType">
    <sequence>
      <element name="phase" type="launch:phaseType"/>
      <element name="cd" type="launch:cdType"
       maxOccurs="unbounded"/>
    </sequence>
  </complexType>

  <complexType name="cdType">
    <sequence>
      <element name="name" type="launch:cdNameType"/>
      <element name="claimKey" type="token"
       minOccurs="0"/>
    </sequence>
  </complexType>

  <complexType name="cdNameType">
    <simpleContent>
      <extension base="eppcom:labelType">
        <attribute name="exists" type="boolean"
         use="required"/>
      </extension>
    </simpleContent>
  </complexType>
  
  
  <complexType name="infDataType">
    <sequence>
      <element name="phase" type="launch:phaseType"/>
      <choice>
        <sequence>
          <element name="applicationID" 
            type="launch:applicationIDType"/>
          <element name="status" type="launch:statusType" 
            minOccurs="0"/>
          <choice>
              <element name="codeMark" 
                type="launch:codeMarkType" 
                maxOccurs="unbounded"/>
             <element name="signedMark" 
                type="launch:signedMarkType" 
                maxOccurs="unbounded"/>
          </choice>
        </sequence>
        <element name="notice" type="launch:claimsNoticeType" 
          minOccurs="0"/>
      </choice>
    </sequence>
  </complexType>
  
  <!--
  Child elements of the info (inf) notice response element.   
  -->
  <complexType name="claimsNoticeType">
    <sequence>
      <element name="name" type="eppcom:labelType"/>
      <choice>
        <element name="none"/>
        <sequence>
          <element name="noticeID" 
            type="launch:noticeIDType"/>
          <element name="mark" 
            type="launch:markType" 
            maxOccurs="unbounded"/>
        </sequence>
      </choice> 
    </sequence>
  </complexType>
  
  <complexType name="e164Type">
    <simpleContent>
      <extension base="launch:e164StringType">
        <attribute name="x" type="token"/>
      </extension>
    </simpleContent>
  </complexType>

  <simpleType name="e164StringType">
    <restriction base="token">
      <pattern value="(\+[0-9]{1,3}\.[0-9]{1,14})?"/>
      <maxLength value="17"/>
    </restriction>
  </simpleType>
    
  <complexType name="addrType">
    <sequence>
      <element name="street" type="token"
       minOccurs="0" maxOccurs="3"/>
      <element name="city" type="token"/>
      <element name="sp" type="token"
       minOccurs="0"/>
      <element name="pc" type="launch:pcType"
       minOccurs="0"/>
      <element name="cc" type="launch:ccType"/>
    </sequence>
  </complexType>
  
  <complexType name="contactType">
    <sequence>
      <element name="name" type="token" 
        minOccurs="0"/>
      <element name="org" type="token" 
        minOccurs="0"/>
      <element name="addr" type="launch:addrType" 
        minOccurs="0"/>
      <element name="voice" type="launch:e164Type" 
        minOccurs="0"/>
      <element name="fax" type="launch:e164Type" 
        minOccurs="0"/>
      <element name="email" type="eppcom:minTokenType" 
        minOccurs="0"/>
    </sequence>
  </complexType>
    
  
  <!--
  Child elements of mark element.  
  -->
  <complexType name="markType">
      <sequence>
        <element name="id" type="token" 
          minOccurs="0"/>
        <element name="name" type="token"
           minOccurs="0"/>
        <element name="label" type="eppcom:labelType"
           minOccurs="0" maxOccurs="unbounded"/>
        <element name="issuer" type="token" 
          minOccurs="0"/>
        <element name="number" type="token" 
          minOccurs="0"/>
        <element name="type" type="token" 
          minOccurs="0"/>
        <element name="entitlement" type="token" 
          minOccurs="0"/>
        <element name="regDate" type="date" 
          minOccurs="0"/>
        <element name="exDate" type="date" 
          minOccurs="0"/>
        <element name="country" type="launch:ccType" 
          minOccurs="0"/>
        <element name="region" type="token" 
          minOccurs="0"/>
        <element name="owner" type="launch:contactType" 
          minOccurs="0"/>
        <element name="contact" type="launch:contactType" 
          minOccurs="0"/>
    </sequence>
  </complexType>

</schema>
END]]></artwork>
      </figure>
    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
      <t>[to be filled in]</t>
    </section>

    <section anchor="IANA" title="IANA Considerations">
      <t>This document uses URNs to describe XML namespaces and XML schemas
      conforming to a registry mechanism described in <xref
      target="RFC3688"/>.</t>

      <t>Registration request for the extension namespace:</t>

      <t>URI: urn:ietf:params:xml:ns:launch-1.0</t>

      <t>Registrant Contact: IESG</t>

      <t>XML: None. Namespace URIs do not represent an XML specification.</t>

      <t>Registration request for the extension XML schema:</t>

      <t>URI: urn:ietf:params:xml:schema:launch-1.0</t>
    </section>

    <section anchor="Security" title="Security Considerations">
      <t>The mapping extensions described in this document do not provide any
      security services beyond those described by <xref
      target="RFC5730">EPP</xref>, the <xref target="RFC5731">EPP domain name
      mapping</xref>, and protocol layers used by EPP. The security
      considerations described in these other specifications apply to this
      specification as well.</t>

      <t>Updates to, and deletion of an application object must be restricted
      to clients authorized to perform the said operation on the object.</t>

      <t>As information contained within an application, or even the mere fact
      that an application exists may be confidential. Any attempt to operate
      on an application object by an unauthorized client MUST be rejected with
      an EPP 2303 (object does not exist) or an appropriate auhorization
      error. Server policy may allow &lt;info&gt; operation with filtered
      output by clients other than the sponsoring client, in which case the
      &lt;domain:infData&gt; and &lt;launch:infData&gt; response SHOULD be
      filtered to include only fields that are publicly accessible.</t>
    </section>

    <!-- sec cons -->
  </middle>

  <!--  *****BACK MATTER ***** -->

  <back>
    <!-- References split into informative and normative -->

    <!-- There are 2 ways to insert reference entries from the citation libraries:
     1. define an ENTITY at the top, and use "ampersand character"RFC2629; here (as shown)
     2. simply use a PI "less than character"?rfc include="reference.RFC.2119.xml"?> here
        (for I-Ds: include="reference.I-D.narten-iana-considerations-rfc2434bis.xml")

     Both are cited textually in the same manner: by using xref elements.
     If you use the PI option, xml2rfc will, by default, try to find included files in the same
     directory as the including file. You can also define the XML_LIBRARY environment variable
     with a value containing a set of directories to search.  These can be either in the local
     filing system or remote ones accessed by http (http://domain/dir/... ).-->

    <references title="Normative References">
      <!--?rfc include="http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml"?-->

      &RFC2119;

      &RFC5730;

      &RFC5731;

      &RFC5733;

      &RFC3688;


      <reference anchor="WIPO.ST3">
        <front>
          <title abbrev='Two-Letter Codes for the Representation of States, Other Entities and Organizations'>Recommended standard on two-letter codes for the representation of states, other entities and intergovernmental organizations</title>
          <author>
            <organization>WIPO</organization>
          </author>
          <date year='2007' month='March' />
          <keyword>WIPO</keyword>
        </front>
        <format type='PDF' target='http://www.wipo.int/standards/en/pdf/03-03-01.pdf' />
      </reference>
    </references>
  </back>

  <!-- vim: set ts=2 sw=2 expandtab: -->
</rfc>
