draft-ietf-crisp-iris-dreg-00.txt  -->   draft-ietf-crisp-iris-dreg-01.txt

view Side-By-Side changes


Network Working Group                                          A. Newton
Internet-Draft                                            VeriSign, Inc.
Expires: February 12, May 5, 2003                               August 14,                                   November 04, 2002


                      IRIS Domain Registry Schema
                       draft-ietf-crisp-iris-dreg
                     draft-ietf-crisp-iris-dreg-01

Status of this Memo

   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as
   Internet-Drafts. Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt. http://
   www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on February 12, May 5, 2003.

Copyright Notice

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

Abstract

   This document describes an IRIS (draft-ietf-crisp-iris-core-00.txt (draft-ietf-crisp-iris-core-01.txt )
   registry schema for registered DNS information.  The schema extends
   the necessary query and result operations of IRIS to provide the
   functional information service needs for syntaxes and results used by
   domain registries and registrars.










Newton                     Expires February 12, May 5, 2003                  [Page 1]

Internet-Draft                  iris-dreg                     August                  November 2002


Table of Contents

   1.    Introduction . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.    Document Terminology . . . . . . . . . . . . . . . . . . . .  4
   3.    Schema Description . . . . . . . . . . . . . . . . . . . . .  5
   3.1   Query Derivatives  . . . . . . . . . . . . . . . . . . . . .  5
   3.1.1 <listRegistrars> Query . . . . . . . . . . . . . . . . . . .  5
   3.1.2 <findDomainByHolder> <findDomainsByRegistrant> Query  . . . . . . . . . . . . . . . . .  5
   3.1.3 <findDomainByName> <findDomainsByName> Query  . . . . . . . . . . . . . . . . . .  5
   3.1.4 <findContacts> Query . . . . . . . . . . . . . . . . . . . .  5  6
   3.1.5 <findHostsByDomain> <findDomainsByHost> Query  . . . . . . . . . . . . . . . . .  5  6
   3.2   Result Derivatives . . . . . . . . . . . . . . . . . . . . .  6
   3.2.1 <domain> Result  . . . . . . . . . . . . . . . . . . . . . .  6
   3.2.2 <host> Result  . . . . . . . . . . . . . . . . . . . . . . .  7  8
   3.2.3 <contact> Result . . . . . . . . . . . . . . . . . . . . . .  8
   3.3   Global Types  9
   3.2.4 <registrationAuthority>  . . . . . . . . . . . . . . . . . . 10
   3.3   Generic Code Derivatives . . . . . . .  9 . . . . . . . . . . . 11
   3.4   Support for <iris:lookupEntity>  . . . . . . . . . . . . . .  9 11
   4.    Domain Registry Width  . . . . . . . . . . . . . . . . . . . 11 12
   4.1   "Thick"  . . . . . . . . . . . . . . . . . . . . . . . . . . 11 12
   4.2   "Thin" . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 12
   5.    Formal XML Syntax  . . . . . . . . . . . . . . . . . . . . . 13 14
   6.    BEEP Transport Compliance  . . . . . . . . . . . . . . . . . 25
   6.1   Message Pattern  . . . . . . . . . . . . . . . . . . . . . . 25
   6.2   Authority Resolution . . . . . . . . . . . . . . . . . . . . 25
   6.3   Server Authentication  . . . . . . . . . . . . . . . . . . . 25
   7.    Internationalization Considerations  . . . . . . . . . . . . 22
   7. 26
   8.    IANA Considerations  . . . . . . . . . . . . . . . . . . . . 23
   8. 27
   9.    Security Considerations  . . . . . . . . . . . . . . . . . . 24 28
         References . . . . . . . . . . . . . . . . . . . . . . . . . 25 29
         Author's Address . . . . . . . . . . . . . . . . . . . . . . 25 30
   A.    An Example Request and Response  . . . . . . . . . . . . . . 26 31
   B.    An Example Database Serialization  . . . . . . . . . . . . . 34
         Full Copyright Statement . . . . . . . . . . . . . . . . . . 28 37

















Newton                     Expires February 12, May 5, 2003                  [Page 2]

Internet-Draft                  iris-dreg                     August                  November 2002


1. Introduction

   This document describes an IRIS registry schema for Internet domain
   registries using an XML Schema[4] Schema [4] derived from and using the IRIS[5] IRIS
   [5] schema.  The query and result types outlined in this document are
   based on the functional requirements described in CRISP[8]. CRISP [11].

   The schema given is this document is specified using the Extensible
   Markup Language (XML) 1.0 as described in XML[1], XML [1], XML Schema
   notation as described in XML_SD[3] XML_SD [3] and XML_SS[4], XML_SS [4], and XML
   Namespaces as described in XML_NS[2]. 

   It is important to note that XML is case sensitive. XML
   specifications and examples provided in this document MUST be
   interpreted in the exact character case presented to develop a
   conforming implementation. XML_NS [2].








































Newton                     Expires February 12, May 5, 2003                  [Page 3]

Internet-Draft                  iris-dreg                     August                  November 2002


2. Document Terminology

   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 RFC2119[9]. RFC2119 [13].














































Newton                     Expires February 12, May 5, 2003                  [Page 4]

Internet-Draft                  iris-dreg                     August                  November 2002


3. Schema Description

   IRIS requires the derivation of both query and result elements by a
   registry schemas.  These descriptions follow.

   References to XML elements with no namespace qualifier are from the
   schema defined in Section 5.  References to elements with the "iris"
   XML namespace qualifier are from the schema defined in IRIS[5]. IRIS [5].

   The descriptions contained within this section refer to XML elements
   and attributes and their relation to the exchange of data within the
   protocol.  These descriptions also contain specifications outside the
   scope of the formal XML syntax.  Therefore, this section will use
   terms defined by RFC 2119 [13] to describe the specification outside
   the scope of the formal XML syntax.  While reading this section,
   please reference Section 5 for needed details on the formal XML
   syntax.

3.1 Query Derivatives

3.1.1 <listRegistrars> Query

   This query returns MUST return a result set of entity references and search
   continuations of the registrars of <registrationAuthority>
   elements.  See Section 3.2.4.

3.1.2 <findDomainsByRegistrant> Query

   <findDomainsByRegistrant> finds a registry. A search constraint
   of <baseDomain> MAY restrict the list to registrars only of a
   particular domain. 

3.1.2 <findDomainByHolder> Query

   <findDomainByHolder> finds a domain entity domains by the common name of searches on fields
   associated with the domain's holder. registrant.  A search constraint of
   <baseDomain> MAY MUST restrict the results to domains only underneath the
   domain specified by its
   content. content if it is present.  The <beginsWith> <field>
   element MUST contains the name of the field associated with the registrant
   to be present and specifies used in the
   beginning search.  See  for the list of allowable content for
   this element.  The <beginsWith> element may be used to specify the common name
   beginning part of the holder. <field> target.  The <endsWith> element
   is OPTIONAL and MUST contain the end of may be
   used to specify the common name ending part of the
   holder. <field> target.

3.1.3 <findDomainByName> <findDomainsByName> Query

   Similar to <findDomainByHolder>, <findDomainByName>

   The <findDomainsByName> query finds a domain
   entity domains by the name of the
   domain as it is known in DNS.  A search constraint of <baseDomain> MAY
   MUST restrict the results to domains only underneath the domain
   specified by its content. content if it is present.  The <beginsWith>
   element MUST be present and
   specifies the beginning of the domain name.  The <endsWith> element is OPTIONAL and MUST contain
   specifies the end of the domain name.






Newton                     Expires May 5, 2003                  [Page 5]

Internet-Draft                  iris-dreg                  November 2002


3.1.4 <findContacts> Query

   <findContacts> searches for contacts given search constraints.  The
   <beginsWith>
   <field> element MUST be present and specifies the beginning data of the common name of contact to be used to
   narrow the contact. search.  See Section 3.2.3 for the allowable content of
   this element.  The <endsWith> <beginsWith> element is OPTIONAL
   and MUST contain specifies the end beginning part
   of the common name <field> target.  The <endsWith> specifies the end part of the contact.
   <field> target.

3.1.5 <findHostsByDomain> <findDomainsByHost> Query

   This query does a simple search for the name servers hosting domains being hosted by a
   domain.
   name server.  The search constraint <domainName> MUST be present. 


Newton                 Expires February 12, 2003                [Page 5]

Internet-Draft                 iris-dreg                     August 2002 is constrained using either the host name,
   host handle, IPv4 address, or IPv6 address of the name server.

3.2 Result Derivatives

3.2.1 <domain> Result

   This is the expected

   The <domain> result represents an instance of a domain lookup. This element has one
   attribute: "thisEntityURI" MUST be an IRIS URI representing this
   domain. assignment.
   The children of the <domain> element are as follows:

   o  <domainName> - the full name of the domain as it is in DNS. This  The
      contents of this element MUST be present. a domain name as specified by RFC
      1035 [12].

   o  <domainHandle> - a registry unique assigned identifier to a
      domain. This element is OPTIONAL.

   o  <nameServers> - an element containing multiple children.  Each
      child can either be is an <iris:entityURI> element as described by
      IRIS[5] or IRIS [5].
      The referent of each <iris:entityURI> element MUST be a <host>
      (Section 3.2.2) element. result.

   o  <holder>  <registrant> - an element representing containing a <iris:entityURI> reference
      to the holder registrant of the this domain.  The
      children of this element contain the contact information of the
      holder and referent MUST be identical in specification as the children of a
      <contact> (Section 3.2.3). This element is OPTIONAL. 3.2.3) result.

   o  <domainContact>  <domainContacts> - an element representing contacts associated
      with the domain. This element is OPTIONAL. It contains children  Each of either its children are <contact> container
      elements contains an <iris:entityURI> reference to a <contact>
      (Section 3.2.3) or <iris:entityURI> result coupled with a <role> element and an OPTIONAL <description> element.  The <role>
      element MAY contain contains one of the following tokens: domain-to-contact
      relationships:

      *  billing

      *  technical



Newton                     Expires May 5, 2003                  [Page 6]

Internet-Draft                  iris-dreg                  November 2002


      *  administrative

      *  legal

      *  zone

      *  other

   o  <lastContactModificationDateTime> - an OPTIONAL element
      specifying specifies the last time a
      contact for the domain was added or removed.

   o  <lastContactModificationBy> - an OPTIONAL element with a child of
      either
      <iris:entityURI>.  The referent is a <contact> (Section 3.2.3) or <iris:entityURI>. Either
      child element specifies the entity
      result responsible for the last addition or removal of a contact
      for this domain.

   o  <activationStatus> - an OPTIONAL element specifying the status of the
      domain.  This element MAY contain contains one of the following tokens:



Newton                 Expires February 12, 2003                [Page 6]

Internet-Draft                 iris-dreg                     August 2002 following:

      *  reservedDelegation - permanently inactive

      *  assignedAndActive - normal state

      *  assignedAndInactive - new delegation

      *  assignedAndOnHold - dispute

      *  revoked - database purge pending

      *  unspecified

   o  <delegationReference> - an element containing an <iris:entityURI>
      element, the referent of which is a <domain> (Section 3.2.1).  The
      intention of this element is to point to the downstream delegation
      reference.  Therefore, if this is a result given back by a domain
      registry, it should point to the domain in the domain registrar or
      registrant service.

   o  <registry> - contains a child of either <contact> (Section 3.2.3)
      or <iris:entityURI> specifying the
      domain registry operator for this domain. This element MUST be present. domain represented by a
      <registrationAuthority> (Section 3.2.4) result.

   o  <registrar> - contains a child of either <contact> (Section
      3.2.3) or <iris:entityURI> specifying the
      domain registrar operator for this domain. This element is OPTIONAL. domain represented by a
      <registrationAuthority> (Section 3.2.4).

   o  <initialDelegationDateTime> - an OPTIONAL element containing the date and
      time of the initial delegation of this domain.



Newton                     Expires May 5, 2003                  [Page 7]

Internet-Draft                  iris-dreg                  November 2002


   o  <lastRenewalDateTime> - an OPTIONAL element containing the date and time of
      last renewal of this domain.

   o  <expirationDateTime> - an OPTIONAL element containing the date and time of
      the expiration of this domain.

   o  <lastDelegationModificationDateTime> - an OPTIONAL element containing the
      date and time of the last time one of the nameservers was added or
      removed for the delegation of this domain.

   o  <lastDelegationModificationBy> - an OPTIONAL element with a child of either
      <iris:entityURI>.  The referent MUST be a <contact> (Section
      3.2.3) or <iris:entityURI>. Either
      child element specifies the entity result and be responsible for the last addition or removal
      of a nameserver for this domain.

   o  <lastVerificationDateTime> - an element containing the date and
      time of the last time the data for this domain was verified by the
      responsible registration authority.

   o  <iris:seeAlso> - an OPTIONAL element containing <iris:entityURI> elements
      specifying entities that are indirectly associated with this
      domain.


3.2.2 <host> Result

   The <host> element is the expected result represents an instance of a nameserver lookup. It
   has an "thisEntityURI" attribute which MUST be an IRIS URI
   representing this host. host registration.
   The children of the <host> element are as follows:


Newton                 Expires February 12, 2003                [Page 7]

Internet-Draft                 iris-dreg                     August 2002


      <handle>

      <hostHandle> - a registry unique assigned identifier for the host.
      This element is OPTIONAL.

      <hostName> - the fully qualified domain name of the host. This  The
      contents of this element are a domain name and MUST be present. conform to RFC
      1035 [12].

      <ipV4Addresses> - contains a list of <ipv4Address> and <ipv6Address> elements specifying <ipV4Address> elements, the
      IP addresses
      content of this host. which MUST conform to the a list of either <contact> (Section 3.2.3) or <iris:entityURI>
      elements specifying contacts valid IP version 4 host
      address as specified by RFC 791 [8].

      <ipV6Addresses> - contains a list of <ipV6Address> elements, the
      content of which MUST conform to the a valid IP version 6 host
      address as specified by RFC 2373 [7].

      <hostContact> - a list of <iris:entityURI> elements specifying
      contacts associated with this host.  The referents MUST be
      <contact> (Section 3.2.3) results.

      <createdDateTime> - an OPTIONAL element containing the date and time this



Newton                     Expires May 5, 2003                  [Page 8]

Internet-Draft                  iris-dreg                  November 2002


      host was created.

      <lastModificationDateTime> - an OPTIONAL element containing the date and
      time this host was last modified.

      <iris:seeAlso> - an OPTIONAL element containing <iris:entityURI> elements
      specifying entities that are indirectly associated with this host.


3.2.3 <contact> Result

   The <contact> element is the expected result represents an instance of a contact lookup or
   query. This element has one attribute, "thisEntityURI" which MUST be
   an IRIS URI representing this contact.
   registration.  The children of the <contact> element are as follows:

      <handle>

      <contactHandle> - a registry unique assigned identifier for this
      contact. This element MUST be present.

      <commonName> - the name of the contact. This element MUST be
      present.

      <language> - a specification of the language code to use to
      localize the data in this result.

      <organization> - an OPTIONAL element containing the organization name of
      the contact.

      <e-mail>

      <eMail> - an OPTIONAL element elements containing the e-mail address for this contact.

      <address> - an OPTIONAL element containing the street address for this
      contact.

      <city> - an OPTIONAL element containing the city for this contact.

      <region> - an OPTIONAL element containing the national region for this
      contact.



Newton                 Expires February 12, 2003                [Page 8]

Internet-Draft                 iris-dreg                     August 2002

      <postalCode> - an OPTIONAL element containing the postal code for this
      contact.

      <country> - an OPTIONAL element containing the country for this contact.

      <phone> - an OPTIONAL element containing the voice phone number for this
      contact.

      <fax> - an OPTIONAL element containing the facsimile phone number for this
      contact.

      <createdDateTime> - an OPTIONAL element containing the date and time this
      contact was created.



Newton                     Expires May 5, 2003                  [Page 9]

Internet-Draft                  iris-dreg                  November 2002


      <lastModificationDateTime> - an OPTIONAL element containing the date and
      time this contact was last modified.

      <tranlatedContact>

      <lastVerificationDateTime> - an OPTIONAL element containing
      <iris:entityURI> elements. This element has an attribute of
      "language" the date and a datatype of "language" as specified by
      XML_SD[3]. This element references an entity which is assumed
      time this data for this contact was last verified to be identical but for which the information in the above elements
      has been translated into correct by
      the language given. appropriate registration authority.

      <iris:seeAlso> - an OPTIONAL element containing <iris:entityURI> elements
      specifying entities that are indirectly associated with this
      contact.

3.3 Global Types

   Some

   The "contactSearchFieldType" definition specifies a list of the global types defined by the schema specified in this
   document are expressed using regular expressions. The regular
   expressions used for these definitions do not fully represent every above
   fields allowable syntax to be used for the intended type, but meet a standard purpose of
   reasonableness for the expression narrowing searches
   that may yield contact or contact-related results.  Searches MUST use
   only these fields.  The field list is:

   o  contactHandle

   o  commonName

   o  organization

   o  eMail

   o  city

   o  region

   o  postalCode

   o  country


3.2.4 <registrationAuthority>

   The <registrationAuthority> result represents an entity capable of
   registering domains.

   The <serviceInstance> element contains an <entityURI> element
   pointing to the types. 

3.4 Support for <iris:lookupEntity> entity "id" in the entity class "service-definition".
   The following types of named entities authority areas found in the referent MUST be domains and are recognized by the
   <lookupEntity> query of IRIS via
   domains for which a given registration authority has control.

   The <type> child element determines the role in which this
   registration authority plays in the process of registering domains.
   The intent of this element is to explain the various roles a
   registration authority may have with regards to the authority areas
   pointed to by the <serviceInstance> element.  A client MAY understand



Newton                     Expires May 5, 2003                 [Page 10]

Internet-Draft                  iris-dreg                  November 2002


   the relationship of a registration authority with respect to a domain
   by the placement of the reference in the domain (e.g.  <registry> or
   <registrar>).

3.3 Generic Code Derivatives

   This schema defines only one <genericCode> derivative,
   <searchTooWide>.  Servers MUST use this error code when a query
   capable of using the "contactSearchFieldType" (see Section 3.2.3)
   must be narrowed to yield a result.

3.4 Support for <iris:lookupEntity>

   The following types of named entities are recognized by the
   <lookupEntity> query of IRIS via derivation of the <entityClass>
   element:

   o  hostName  host-name - the fully qualified domain name of a nameserver.
      Yields a <host> (Section 3.2.2) in the response.

   o  hostHandle  host-handle - the registry unique identifier given a nameserver.
      Yields a <host> (Section 3.2.2) in the response.



Newton                 Expires February 12, 2003                [Page 9]

Internet-Draft                 iris-dreg                     August 2002

   o  domainName  domain-name - the fully qualified name of a domain.  Yields a
      <domain> (Section 3.2.1) in the response.

   o  domainHandle  domain-handle - the registry unique identifier given a domain.
      Yields a <domain> (Section 3.2.1) in the response.

   o  contactHandle  contact-handle - the registry unique identifier given a contact.
      Yields a <contact> (Section 3.2.3) in the response.

   o  ipv4Address  ipv4-address - the IPv4 address of a nameserver.  Yields a <host>
      (Section 3.2.2) in the response.

   o  ipv6Address  ipv6-address - the IPv6 address of a nameserver.  Yields a <host>
      (Section 3.2.2) in the response.














Newton                     Expires February 12, May 5, 2003                 [Page 10] 11]

Internet-Draft                  iris-dreg                     August                  November 2002


4. Domain Registry Width

   As described in CRISP[8], CRISP [11], domain registries have differing widths.
   Some are "thick" and some are "thin." Regardless of the domain
   registry width, it is important for all levels of the hierarchy of
   the domain delegation tree to have the same appearance from a schema
   perspective.  This allows clients to traverse this tree with only the
   need to know the fingerprint of a "domain registry" and without the
   need to know separate fingerprints for what is a domain registry, a
   domain registrar, or even a domain registrant.  Therefore, the schema
   defined in this document MUST be used at all levels despite the width
   of the domain registry model.

   However, implementers will need to take into consideration the
   instances where search continuations and entity references either
   defined in this document or defined as part of the base result, as
   layed out
   defined in IRIS[5], IRIS [5], will need to be employed to support the
   appropriate registry width.  The following sections are only
   guidelines and the language specified in Section 2 does not apply and
   is not used.  Implementers should determine the appropriate results
   for their particular implementation as the two following sections are
   generalized and may not be appropriate to all models of registries.
   All guidelines noted in the following sections are subject to policy
   settings of the operators involved.

4.1 "Thick"

   For thick registries, searches for and lookups of domains should
   result in a <domain> element.  This element should contain most of
   the contact information if privileges allow for it.  To reference the
   equivalent domain entity in a registrants service instance, an entity
   URI should be returned following using the <domainReference> element of the
   <domain> element. object.

   Searches for contacts or holders should not yield search
   continuations.

4.2 "Thin"

   When <domain> elements are returned in a result, thin registries
   should also return an entity URI to the equivalent domain entity in
   the registrars service instance. instance using the <domainReference> child.
   Likewise, when a registrar's service instance returns a <domain>
   instance, it should be followed
   by an entity URI SHOULD use the same element to reference the domain
   entity in the registrant's service instance, if one is available.

   Because thin registries do not contain contact information, certain
   searches will yield nothing but search continuations.  These are
   listed here:



Newton                     Expires February 12, May 5, 2003                 [Page 11] 12]

Internet-Draft                  iris-dreg                     August                  November 2002


   listed here:

   o  <findDomainByHolder>  <findDomainsByRegistrant>

   o  <findContacts>

   o  entity lookups in the "contactHandle" "contact-handle" class

   Because handles for hosts and domains can be assigned by both
   registries and registrars, entity lookups in the registry in the
   "hostHandle"
   "host-handle" and "domainHandle" "domain-handle" classes can yield both a <result>
   derivative, in this case <host> and <domain> respectively, and search
   continuations.






































Newton                     Expires February 12, May 5, 2003                 [Page 12] 13]

Internet-Draft                  iris-dreg                     August                  November 2002


5. Formal XML Syntax

   This registry schema is specified in the XML Schema notation.  The
   formal syntax presented here is a complete schema representation
   suitable for automated validation of an XML instance when combined
   with the formal schema syntax of IRIS. Due to document formatting
   restrictions, readers should note that the regular expressions
   expressed in this schema DO NOT contain whitespace within the quotes
   containing the regular expression.


   <?xml version="1.0"?>
   <schema xmlns="http://www.w3.org/2001/XMLSchema"
           xmlns:dreg="urn:ietf:params:xml:ns:dreg1"
           xmlns:iris="urn:ietf:params:xml:ns:iris1"
           targetNamespace="urn:ietf:params:xml:ns:dreg1"
           elementFormDefault="qualified" >

     <import namespace="urn:ietf:params:xml:ns:iris1" />

     <annotation>
       <documentation>
         Domain registry schema
         derived from IRIS schema
       </documentation>
     </annotation>

     <!--             -->
     <!-- Query types -->
     <!--             -->

     <complexType name="listRegistrarsType">
       <complexContent>
         <extension base="iris:queryType">
           <sequence>
             <element name="baseDomain"
               type="dreg:domainNameType"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
           </sequence>
         </extension>
       </complexContent>
     </complexType>

     <element name="listRegistrars"
       type="dreg:listRegistrarsType"
       substitutionGroup="iris:query" />

     <complexType name="findDomainByHolderType"> name="findDomainsByRegistrantType">
       <complexContent>
         <extension base="iris:queryType">
           <sequence>



Newton                     Expires February 12, May 5, 2003                 [Page 13] 14]

Internet-Draft                  iris-dreg                     August                  November 2002


         <extension base="iris:queryType">
           <sequence>


             <element name="baseDomain"
               type="dreg:domainNameType"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
             <element name="field"
               type="dreg:contactSearchFieldsType" />
             <element name="beginsWith"
               minOccurs="1"
               minOccurs="0" maxOccurs="1">
               <simpleType>
                 <restriction base="token">
                   <minLength value="3"/>
                 </restriction>
               </simpleType>
             </element>
             <element name="endsWith"
               minOccurs="0" maxOccurs="1">
               <simpleType>
                 <restriction base="token">
                   <minLength value="2"/>
                 </restriction>
               </simpleType>
             </element>
           </sequence>
         </extension>
       </complexContent>
     </complexType>

     <element name="findDomainByHolder"
       type="dreg:findDomainByHolderType" name="findDomainsByRegistrant"
       type="dreg:findDomainsByRegistrantType"
       substitutionGroup="iris:query" />

     <complexType name="findDomainByNameType"> name="findDomainsByNameType">
       <complexContent>
         <extension base="iris:queryType">
           <sequence>
             <element name="baseDomain"
               type="dreg:domainNameType"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
             <element name="beginsWith"
               minOccurs="1" maxOccurs="1" >
               <simpleType>
                 <restriction base="token">
                   <minLength value="3"/>
                 </restriction>
               </simpleType>
             </element>
             <element name="endsWith"
               minOccurs="0" maxOccurs="1" >
               <simpleType>
                 <restriction base="token">



Newton                     Expires February 12, May 5, 2003                 [Page 14] 15]

Internet-Draft                  iris-dreg                     August                  November 2002


                 <restriction base="token">
                   <minLength value="2"/>
                 </restriction>
               </simpleType>
             </element>
           </sequence>
         </extension>
       </complexContent>
     </complexType>

     <element name="findDomainByName"
       type="dreg:findDomainByNameType" name="findDomainsByName"
       type="dreg:findDomainsByNameType"
       substitutionGroup="iris:query" />

     <complexType name="findContactsType">
       <complexContent>
         <extension base="iris:queryType">
           <sequence>
             <element name="field"
               type="dreg:contactSearchFieldsType" />
             <element name="beginsWith"
               minOccurs="1"
               minOccurs="0" maxOccurs="1" >
               <simpleType>
                 <restriction base="token">
                   <minLength value="3"/>
                 </restriction>
               </simpleType>
             </element>
             <element name="endsWith"
               minOccurs="0" maxOccurs="1" >
               <simpleType>
                 <restriction base="token">
                   <minLength value="2"/>
                 </restriction>
               </simpleType>
             </element>
           </sequence>
         </extension>
       </complexContent>
     </complexType>

     <element name="findContacts"
       type="dreg:findContactsType"
       substitutionGroup="iris:query" />

     <complexType name="findHostsByDomainType"> name="findDomainsByHostType">
       <complexContent>
         <extension base="iris:queryType">
           <sequence>
             <element name="domainName"
               type="dreg:domainNameType" />
           </sequence>



Newton                     Expires February 12, May 5, 2003                 [Page 15] 16]

Internet-Draft                  iris-dreg                     August                  November 2002


           <choice>
             <element name="hostName"
               type="normalizedString" />
             <element name="hostHandle"
               type="normalizedString" />
             <element name="ipV4Address"
               type="normalizedString" />
             <element name="ipV6Address"
               type="normalizedString" />
           </choice>
         </extension>
       </complexContent>
     </complexType>

     <element name="findHostsByDomain"
       type="dreg:findHostsByDomainType" name="findDomainsByHost"
       type="dreg:findDomainsByHostType"
       substitutionGroup="iris:query" />

     <!--              -->
     <!-- Result types -->
     <!--              -->

     <complexType name="domainType">
       <complexContent>
         <extension base="iris:resultType">
           <sequence>
             <element name="domainName"
               type="dreg:domainNameType"
               type="normalizedString" />
             <element name="domainHandle"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
             <element name="nameServers"
               minOccurs="1" maxOccurs="1" >
               <complexType>
                 <choice
                   minOccurs="0" maxOccurs="unbounded" >
                 <sequence>
                   <element ref="iris:entityURI"
                     minOccurs="0" maxOccurs="unbounded" />
                   <element ref="dreg:host" />
                 </choice>
                 </sequence>
               </complexType>
             </element>
             <element name="holder"
               type="dreg:contactType"
               minOccurs="0" maxOccurs="1" />
             <element name="domainContact"
               minOccurs="0" maxOccurs="unbounded"> name="registrant"
               minOccurs="1" maxOccurs="1">
               <complexType>
                 <sequence>
                   <choice>
                   <element ref="iris:entityURI"
                     minOccurs="0" maxOccurs="1" />
                     <element ref="dreg:contact" />
                   </choice>
                   <element name="role">
                     <simpleType>
                       <restriction base="token">
                         <enumeration
                 </sequence>
               </complexType>



Newton                     Expires May 5, 2003                 [Page 17]

Internet-Draft                  iris-dreg                  November 2002


             </element>
             <element name="domainContacts"
               minOccurs="1" maxOccurs="1">
               <complexType>
                 <sequence>
                   <element name="contact"
                     minOccurs="0" maxOccurs="unbounded">
                     <complexType>
                       <sequence>
                         <element ref="iris:entityURI" />
                         <element name="role"
                           minOccurs="0" maxOccurs="1">
                           <simpleType>
                             <restriction base="token">
                               <enumeration value="billing" />
                               <enumeration value="technical" />
                               <enumeration value="administrative" />
                               <enumeration value="legal" />
                               <enumeration value="zone" />
                               <enumeration value="other" />


Newton                 Expires February 12, 2003               [Page 16]

Internet-Draft                 iris-dreg                     August 2002
                             </restriction>
                           </simpleType>
                         </element>
                   <element name="description"
                     minOccurs="0" maxOccurs="1"
                     type="string" />
                       </sequence>
                     </complexType>
                   </element>
                 </sequence>
               </complexType>
             </element>
             <element name="lastContactModificationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="lastContactModificationBy"
               minOccurs="0" maxOccurs="1">
               <complexType>
                 <choice>
                 <sequence>
                   <element ref="iris:entityURI" />
                   <element ref="dreg:contact" />
                 </choice>
                 </sequence>
               </complexType>
             </element>
             <element name="activationStatus"
               minOccurs="0" maxOccurs="1">
               <simpleType>
                 <restriction base="token">
                   <enumeration value="reservedDelegation" />
                   <enumeration value="assignedAndActive" />
                   <enumeration value="assignedAndInactive" />
                   <enumeration value="assignedAndOnHold" />



Newton                     Expires May 5, 2003                 [Page 18]

Internet-Draft                  iris-dreg                  November 2002


                   <enumeration value="revoked" />
                   <enumeration value="unspecified" />
                 </restriction>
               </simpleType>
             </element>
             <element name="registry"
               minOccurs="1" name="delegationReference"
               minOccurs="0" maxOccurs="1">
               <complexType>
                 <choice>
                 <sequence>
                   <element ref="iris:entityURI" />
                 </sequence>
               </complexType>
             </element>
             <element ref="dreg:contact" name="registry"
               minOccurs="0" maxOccurs="1">
               <complexType>
                 <sequence>
                   <element ref="iris:entityURI" />
                 </choice>
                 </sequence>
               </complexType>
             </element>
             <element name="registrar"
               minOccurs="0" maxOccurs="1">
               <complexType>
                 <choice>
                 <sequence>
                   <element ref="iris:entityURI"
                     minOccurs="0" maxOccurs="1" />
                   <element ref="dreg:contact" />


Newton                 Expires February 12, 2003               [Page 17]

Internet-Draft                 iris-dreg                     August 2002


                 </choice>
                 </sequence>
               </complexType>
             </element>
             <element name="initialDelegationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="lastRenewalDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="expirationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="lastDelegationModificationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="lastDelegationModificationBy"
               minOccurs="0" maxOccurs="1">
               <complexType>
                 <choice>
                 <sequence>
                   <element ref="iris:entityURI" />
                   <element ref="dreg:contact" />
                 </choice>
                 </sequence>



Newton                     Expires May 5, 2003                 [Page 19]

Internet-Draft                  iris-dreg                  November 2002


               </complexType>
             </element>
             <element name="lastVerificationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element ref="iris:seeAlso"
               minOccurs="0" maxOccurs="1" />
           </sequence>
           <attribute name="thisEntityURI"
             type="iris:entityURIType" />
         </extension>
       </complexContent>
     </complexType>

     <element name="domain"
       type="dreg:domainType"
       substitutionGroup="iris:result" />

     <complexType name="hostType">
       <complexContent>
         <extension base="iris:resultType">
           <sequence>
             <element name="hostHandle"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
             <element name="hostName"
               type="dreg:domainNameType"
               type="normalizedString" />
             <element name="ipV4Addresses">
               <complexType>
                 <sequence>
                   <element name="ipV4Address"
               type="dreg:dotQuadIPv4Type"
                     type="normalizedString"
                     minOccurs="0" maxOccurs="unbounded" />


Newton                 Expires February 12, 2003               [Page 18]

Internet-Draft                 iris-dreg                     August 2002
                 </sequence>
               </complexType>
             </element>
             <element name="ipV6Addresses">
               <complexType>
                 <sequence>
                   <element name="ipV6Address"
               type="dreg:textIPv6AddressType"
                     type="normalizedString"
                     minOccurs="0" maxOccurs="unbounded" />
             <choice
               minOccurs="0" maxOccurs="unbounded" >
                 </sequence>
               </complexType>
             </element>
             <element name="hostContacts">
               <complexType>
                 <sequence>
                   <element ref="iris:entityURI"
                     minOccurs="0" maxOccurs="unbounded" />



Newton                     Expires May 5, 2003                 [Page 20]

Internet-Draft                  iris-dreg                  November 2002


                 </sequence>
               </complexType>
             </element>
             <element ref="dreg:contact" name="createdDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             </choice>
             <element name="createdDateTime" name="lastModificationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="lastModifiedDateTime" name="lastVerificationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element ref="iris:seeAlso"
               minOccurs="0" maxOccurs="1" />
           </sequence>
           <attribute name="thisEntityURI"
             type="iris:entityURIType" />
         </extension>
       </complexContent>
     </complexType>

     <element name="host"
       type="dreg:hostType"
       substitutionGroup="iris:result" />

     <complexType name="translatedContactType">
       <complexContent>
         <extension base="iris:seeAlsoType">
           <attribute name="language" type="language" />
         </extension>
       </complexContent>
     </complexType>

     <element name="translatedContact"
       type="dreg:translatedContactType"
       substitutionGroup="iris:seeAlso" />

     <complexType name="contactType">
       <complexContent>
         <extension base="iris:resultType">
           <sequence>
             <element name="contactHandle"
               type="normalizedString" />
             <element name="commonName"
               type="normalizedString" />
             <element name="language"
               type="language"
               minOccurs="0" maxOccurs="1" />
             <element name="organization"
               type="normalizedString"


Newton                 Expires February 12, 2003               [Page 19]

Internet-Draft                 iris-dreg                     August 2002
               minOccurs="0" maxOccurs="1" />
             <element name="e-mail" name="eMail"
               type="string"
               minOccurs="0" maxOccurs="1" maxOccurs="2" />
             <element name="address"
               type="string"
               minOccurs="0" maxOccurs="1" />
             <element name="city"
               type="string"
               minOccurs="0" maxOccurs="1" />
             <element name="region"
               type="string"



Newton                     Expires May 5, 2003                 [Page 21]

Internet-Draft                  iris-dreg                  November 2002


               minOccurs="0" maxOccurs="1" />
             <element name="postalCode"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
             <element name="country"
               type="token"
               minOccurs="0" maxOccurs="1" />
             <element name="phone"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
             <element name="fax"
               type="normalizedString"
               minOccurs="0" maxOccurs="1" />
             <element name="createdDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="lastModifiedDateTime" name="lastModificationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element name="lastVerificationDateTime"
               type="dateTime"
               minOccurs="0" maxOccurs="1" />
             <element ref="iris:translatedContact" name="translatedContacts"
               type="iris:seeAlsoType"
               minOccurs="0" maxOccurs="unbounded" />
             <element ref="iris:seeAlso"
               minOccurs="0" maxOccurs="1" />
           </sequence>
           <attribute name="thisEntityURI"
             type="iris:entityURIType" />
         </extension>
       </complexContent>
     </complexType>

     <element name="contact"
       type="dreg:contactType"
       substitutionGroup="iris:result" />

     <simpleType name="contactSearchFieldsType">
       <restriction base="token">
         <enumeration value="contactHandle" />
         <enumeration value="commonName" />
         <enumeration value="organization" />
         <enumeration value="eMail" />
         <enumeration value="city" />
         <enumeration value="region" />
         <enumeration value="postalCode" />
         <enumeration value="country" />
       </restriction>
     </simpleType>



Newton                     Expires May 5, 2003                 [Page 22]

Internet-Draft                  iris-dreg                  November 2002


     <complexType name="registrationAuthorityType">
       <complexContent>
         <extension base="iris:resultType">
           <sequence>
             <element name="serviceInstance">
               <complexType>
                 <sequence>
                   <element ref="iris:entityURI" />
                 </sequence>
               </complexType>
             </element>
             <element name="organizationName"
               type="string"
               minOccurs="0" maxOccurs="1" />
             <element name="type"
               minOccurs="0" maxOccurs="3">
               <simpleType>
                 <restriction base="token">
                   <enumeration value="registry" />
                   <enumeration value="registrar" />
                   <enumeration value="other" />
                 </restriction>
               </simpleType>
             </element>
           </sequence>
         </extension>
       </complexContent>
     </complexType>

     <element name="registrationAuthority"
       type="dreg:registrationAuthorityType"
       substitutionGroup="iris:result" />

     <!--             -->
     <!-- Global Error types -->
     <!--             -->

     <complexType name="searchTooWideType">
       <complexContent>
         <extension base="iris:codeType">
           <sequence>
             <element name="useField"
               type="dreg:contactSearchFieldsType"
               minOccurs="0" maxOccurs="unbounded" />
           </sequence>
         </extension>
       </complexContent>
     </complexType>



Newton                     Expires February 12, May 5, 2003                 [Page 20] 23]

Internet-Draft                  iris-dreg                     August                  November 2002


     <simpleType name="domainNameType">
       <restriction base="token">
         <pattern
           value="([a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]\.)*([a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])?" />
         <maxLength value="255"


     <element name="searchTooWide"
       type="dreg:searchTooWideType"
       substitutionGroup="iris:genericCode" />
       </restriction>
     </simpleType>

     <!--              -->
     <!-- Global types -->
     <!--              -->

     <simpleType name="entityClassType">
       <restriction base="iris:entityClassType">
         <enumeration value="domainName" value="domain-name" />
         <enumeration value="domainHandle" value="domain-handle" />
         <enumeration value="hostName" value="host-name" />
         <enumeration value="hostHandle" value="host-handle" />
         <enumeration value="contactHandle" value="contact-handle" />
         <enumeration value="ipv4Address" value="ipv4-address" />
         <enumeration value="ipv6Address" value="ipv6-address" />
       </restriction>
     </simpleType>

     <element name="entityClass"
       type="dreg:entityClassType"
       substitutionGroup="iris:entityClass" />

     <simpleType name="dotQuadIPv4Type">
       <restriction base="string">
         <pattern value="([\d]{1,3}.){3}[\d]{1,3}" />
         <minLength value="7" />
         <maxLength value="15" />
       </restriction>
     </simpleType>

     <!-- does not support '::' -->
     <simpleType name="textIPv6AddressType">
       <restriction base="string">
         <pattern value="(([\dA-Fa-f]{1,4}:){7}[\dA-Fa-f]{1,4})(:([\d]{1,3}.){3}[\d]{1,3})?"/>
         <minLength value="16"/>
         <maxLength value="39"/>
       </restriction>
     </simpleType>

   </schema>


























Newton                     Expires February 12, May 5, 2003                 [Page 24]

Internet-Draft                  iris-dreg                  November 2002


6. BEEP Transport Compliance

   IRIS allows several extensions of the core capabilities.  This
   section outlines those extensions allowable by IRIS-BEEP [6].

6.1 Message Pattern

   This registry type uses the default message pattern as described in
   IRIS-BEEP [6].

6.2 Authority Resolution

   The authority resolution for this registry type is similar to the
   default resolution spelled out in IRIS-BEEP [6].  The default
   authority resolution process allows for the authority to be

   o  a domain name

   o  a domain name accompanied by a port number

   o  an IP address

   o  an IP address accompanied by a port number

   The resolution process for this registry only differs if the
   authority is only a domain name (i.e.  without the port number).  The
   process for this condition is as follows:

   1.  The SRV algorithm is used with a service parameter of "iris" and
       a protocol parameter of "tcp" to determine the IP/TCP addressing
       information.

   2.  If no SRV records are found (e.g.  for "_iris._tcp.example.com"),
       then the left-most component of the domain name is removed, and
       the first step is repeated again (e.g.  for "_iris._tcp.com").

   3.  If all the components of the domain name are removed and no SRV
       records are found, then the DNS is queried for the A records
       corresponding to the original domain name and the port number
       used is the well-known port assigned by the IANA for IRIS using
       BEEP.


6.3 Server Authentication

   This registry type uses the default server authentication method as
   described in IRIS-BEEP [6].




Newton                     Expires May 5, 2003                 [Page 21] 25]

Internet-Draft                  iris-dreg                     August                  November 2002


6.


7. Internationalization Considerations

   Implementers should be aware of considerations for
   internationalization in IRIS[5]. IRIS [5].

   In addition, this document specifies the lookup of domain names.
   Current efforts are under way to provide "internationalized" domain
   names.  This document does not yet strive to make distinctions
   between the two.  However, because XML may be specified in UTF-8, it
   is possible to support internationalization efforts for domain names.









































Newton                     Expires February 12, May 5, 2003                 [Page 22] 26]

Internet-Draft                  iris-dreg                     August                  November 2002


7.


8. IANA Considerations

   The following URN will need to be registered with IANA according to
   the IANA considerations defined in IRIS[5]: IRIS [5]:

      urn:ietf:params:xml:ns:dreg1













































Newton                     Expires February 12, May 5, 2003                 [Page 23] 27]

Internet-Draft                  iris-dreg                     August                  November 2002


8.


9. Security Considerations

   This document lays out no new considerations for security precautions
   beyond that specified in IRIS[5]. IRIS [5].















































Newton                     Expires February 12, May 5, 2003                 [Page 24] 28]

Internet-Draft                  iris-dreg                     August                  November 2002


References

   [1]   World Wide Web Consortium, "Extensible Markup Language (XML)
         1.0", W3C XML, February 1998, 
        <http://www.w3.org/TR/1998/REC-xml-19980210>. <http://www.w3.org/TR/1998/REC-
         xml-19980210>.

   [2]   World Wide Web Consortium, "Namespaces in XML", W3C XML
         Namespaces, January 1999, 
        <http://www.w3.org/TR/1999/REC-xml-names-19990114>. <http://www.w3.org/TR/1999/REC-xml-
         names-19990114>.

   [3]   World Wide Web Consortium, "XML Schema Part 2: Datatypes", W3C
         XML Schema, October 2000, 
        <http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/>. <http://www.w3.org/TR/2001/REC-
         xmlschema-2-20010502/>.

   [4]   World Wide Web Consortium, "XML Schema Part 1: Structures", W3C
         XML Schema, October 2000, 
        <http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/>. <http://www.w3.org/TR/2001/REC-
         xmlschema-1-20010502/>.

   [5]   Newton, A, A., "Internet Registry Information Service",
        draft-ietf-crisp-iris-core-00 draft-
         ietf-crisp-iris-core-01 (work in progress), February November 2002.

   [6]   Newton, A., "Internet Registry Information Service (IRIS) over
         Blocks Exstensible Exchange Protocol (BEEP)", draft-ietf-crisp-
         iris-beep-01 (work in progress), November 2002.

   [7]   Hinden, R. and S. Deering, "IP Version 6 Addressing
         Architecture", RFC 2373, July 1998.

   [8]   Postel, J., "Internet Protocol", STD 5, RFC 791, September
         1981.

   [9]   Reynolds, J. and J. Postel, "ASSIGNED NUMBERS", RFC 1700, STD
         2, October 1994.

   [7]

   [10]  Narten, T. and H.T. H. Alvestrand, "Guidelines for Writing an IANA
         Considerations Section in RFCs", RFC 2434, BCP 26, October
         1998.

   [8]

   [11]  Newton, A, A., "Cross Registry Internet Service Protocol (CRISP)
         Requirements", draft-ietf-crisp-requirements-00 (work in
         progress), August 2002.

   [9]

   [12]  Mockapetris, P., "Domain names - implementation and
         specification", STD 13, RFC 1035, November 1987.

   [13]  Bradner, S., "Key words for use in RFCs to Indicate Requirement
         Levels", RFC 2119, BCP 14, March 1997.




Newton                     Expires May 5, 2003                 [Page 29]

Internet-Draft                  iris-dreg                  November 2002


Author's Address

   Andrew L. Newton
   VeriSign, Inc.
   21345 Ridgetop Circle
   Sterling, VA  20166
   USA

   Phone: +1 703 948 3382
   EMail: anewton@verisignlabs.com anewton@ecotroph.net
   URI:   http://www.verisignlabs.com/








































Newton                     Expires February 12, May 5, 2003                 [Page 25] 30]

Internet-Draft                  iris-dreg                     August                  November 2002


Appendix A. An Example Request and Response

   The following is an example of an IRIS request and response using
   this registry schema.

   ---------------------------------------------------------------------

    This XML instance is a request to search for domains by the
   holder's
   registrant's name.


   <?xml version="1.0"?>
   <iris
   <request xmlns="urn:ietf:params:xml:ns:iris1"
         xmlns:iris="urn:ietf:params:xml:ns:iris1"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="urn:ietf:params:xml:ns:iris1 iris.xsd" >

     <request>
       <registrySearch>
         <dreg:findDomainByHolder

     <searchSet>
       <dreg:findDomainsByRegistrant
         xmlns:dreg="urn:ietf:params:xml:ns:dreg1"
         xsi:schemaLocation="urn:ietf:params:xml:ns:dreg1 dreg.xsd" >
         <dreg:baseDomain>com</dreg:baseDomain>
         <dreg:field>commonName</dreg:field>
         <dreg:beginsWith>
           The Cobbler Shoppe
         </dreg:beginsWith>
         </dreg:findDomainByHolder>
       </registrySearch>
       </dreg:findDomainsByRegistrant>
     </searchSet>

   </request>

   </iris>


                       Figure 2: dreg-request.xml

   ---------------------------------------------------------------------

   ---------------------------------------------------------------------

    This XML instance is a response from Figure 2.


   <?xml version="1.0"?>
   <iris
   <response xmlns="urn:ietf:params:xml:ns:iris1"
             xmlns:iris="urn:ietf:params:xml:ns:iris1"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="urn:ietf:params:xml:ns:iris1 iris.xsd" >

     <response>
       <registryResult>

     <resultSet>
       <answer>



Newton                     Expires May 5, 2003                 [Page 31]

Internet-Draft                  iris-dreg                  November 2002


         <dreg:domain
           xmlns="urn:ietf:params:xml:ns:dreg1"
           xmlns:dreg="urn:ietf:params:xml:ns:dreg1"
           xsi:schemaLocation="urn:ietf:params:xml:ns:dreg1 dreg.xsd"
           thisEntityURI="iris://com/dreg1/domainHandle/tcs-com-1">
           <domainName>thecobblershoppe.com</domainName>
           <nameServers>
             <iris:entityURI>
               iris://com/dreg1/hostHandle/research7
               iris://com/dreg1/host-handle/research7
             </iris:entityURI>


Newton                 Expires February 12, 2003               [Page 26]

Internet-Draft                 iris-dreg                     August 2002
             <iris:entityURI>
               iris://com/dreg1/hostHandle/nso1184
               iris://com/dreg1/host-handle/nso1184
             </iris:entityURI>
           </nameServers>
           <holder>
           <registrant>
             <iris:entityURI
               displayName="Bill Eckels" language="en">
               iris://com/dreg1/contact-handle/beb140
             </iris:entityURI>
           </registrant>
           <domainContacts>
             <contact>
               <iris:entityURI
                 displayName="Mark Kosters" language="en">
                 iris://com/dreg1/contact-handle/mak21
               </iris:entityURI>
               <role>technical</role>
             </contact>
           </domainContacts>
           <iris:seeAlso>
             <iris:entityURI>
               iris://com/dreg1/service-definition/notice
             </iris:entityURI>
           </iris:seeAlso>
         </dreg:domain>
       </answer>
       <additional>
         <dreg:contact
           xmlns="urn:ietf:params:xml:ns:dreg1"
           xmlns:dreg="urn:ietf:params:xml:ns:dreg1"
           xsi:schemaLocation="urn:ietf:params:xml:ns:dreg1 dreg.xsd"
           thisEntityURI="iris://com/dreg1/contact-handle/beb140">
           <contactHandle>beb140</contactHandle>
           <commonName>
             Bill Eckels
           </commonName>
           <organization>
             The Cobbler Shoppe



Newton                     Expires May 5, 2003                 [Page 32]

Internet-Draft                  iris-dreg                  November 2002


           </organization>
             <e-mail>
           <eMail>
             bille@bjmk.com
             </e-mail>
           </eMail>
           <address>
             21 North Main Street
           </address>
           <city>
             Britt
           </city>
           <region>
             IA
           </region>
           <postalCode>
             50423
           </postalCode>
           <country>
             US
           </country>
           <phone>
             515-843-3521
           </phone>
           </holder>
           <registry>
         </dreg:contact>
         <simpleEntity
           thisEntityURI="iris://com/dreg1/service-definition/notice" >
           <property name="legal" language="en">
             It is illegal to use information from this service
             for the purposes of sending unsolicited bulk email.
           </property>
         </simpleEntity>
       </additional>
     </resultSet>

   </response>


                      Figure 3: dreg-response.xml

   ---------------------------------------------------------------------












Newton                     Expires May 5, 2003                 [Page 33]

Internet-Draft                  iris-dreg                  November 2002


Appendix B. An Example Database Serialization

   The following is an example of serializing domain data.

   ---------------------------------------------------------------------

   This example shows the serialization of a domain, a host, and some
   named queries.


   <iris:serialization
     xmlns:iris="urn:ietf:params:xml:ns:iris1"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="urn:ietf:params:xml:ns:iris1 iris.xsd" >

     <dreg:domain
       xmlns:dreg="urn:ietf:params:xml:ns:dreg1"
       xmlns="urn:ietf:params:xml:ns:dreg1"
       xsi:schemaLocation="urn:ietf:params:xml:ns:dreg1 dreg.xsd"
       thisEntityURI="iris://com/dreg1/domain-handle/tcs-com-1" >
       <domainName>thecobblershoppe.com</domainName>
       <nameServers>
         <iris:serializedEntityURI>
           iris://com/dreg1/host-handle/research7
         </iris:serializedEntityURI>
         <iris:serializedEntityURI>
           iris://com/dreg1/host-handle/nso1184
         </iris:serializedEntityURI>
       </nameServers>
       <registrant>
         <iris:entityURI>
               iris://com/dreg1/contactHandle/VGRS
           iris://net/dreg1/contact-handle/beb140
         </iris:entityURI>
       </registrant>
       <domainContacts>
         <contact>
           <iris:entityURI
             displayName="Mark Kosters" language="en">
             iris://net/dreg1/contact-handle/mak21
           </iris:entityURI>
           </registry>
           <role>technical</role>
         </contact>
       </domainContacts>
     </dreg:domain>
       </registryResult>
     </response>

   </iris>

     <dreg:host
       xmlns:dreg="urn:ietf:params:xml:ns:dreg1"
       xmlns="urn:ietf:params:xml:ns:dreg1"



Newton                     Expires February 12, May 5, 2003                 [Page 27] 34]

Internet-Draft                  iris-dreg                     August                  November 2002


       xsi:schemaLocation="urn:ietf:params:xml:ns:dreg1 dreg.xsd"
       thisEntityURI="iris://com/dreg1/host-handle/nsol184" >
       <hostHandle>nsol184</hostHandle>
       <hostName>ns1.netsol.com</hostName>
       <ipV4Addresses>
         <ipV4Address>216.168.224.200</ipV4Address>
       </ipV4Addresses>
       <ipV6Addresses>
       </ipV6Addresses>
       <hostContacts>
         <iris:serializedEntityURI
           displayName="David Blacka" language="en">
           iris://com/dreg1/contact-handle/dblacka
         </iris:serializedEntityURI>
       </hostContacts>
     </dreg:host>

     <iris:searchContinuation
       thisEntityURI="iris://com/dreg1/contact-handle/dblacka">
       <iris:authority> net </iris:authority>
       <iris:searchSet>

         <iris:lookupEntity registryID="dreg1">
           <iris:entityName>dblacka</iris:entityName>
           <dreg:entityClass
             xmlns:dreg="urn:ietf:params:xml:ns:dreg1"
             xsi:schemaLocation="urn:ietf:params:xml:ns:dreg1 dreg.xsd" >
             contact-handle
           </dreg:entityClass>
         </iris:lookupEntity>

       </iris:searchSet>
     </iris:searchContinuation>

     <iris:serializedNamedQuery
       registryID="dreg1" entityName="my-servers" >
       <iris:resultSet>
         <iris:answer>

           <iris:serializedEntityURI>
             iris://verisignlabs.com/dreg1/host-handle/nsol184
           </iris:serializedEntityURI>

           <iris:serializedEntityURI>
             iris://verisignlabs.com/dreg1/host-handle/research7
           </iris:serializedEntityURI>

           <iris:serializedEntityURI>



Newton                     Expires May 5, 2003                 [Page 35]

Internet-Draft                  iris-dreg                  November 2002


             iris://verisignlabs.com/dreg1/host-handle/scooter
           </iris:serializedEntityURI>

         </iris:answer>
       </iris:resultSet>
     </iris:serializedNamedQuery>

   </iris:serialization>


                    Figure 4: dreg-serialization.xml

   ---------------------------------------------------------------------






































Newton                     Expires May 5, 2003                 [Page 36]

Internet-Draft                  iris-dreg                  November 2002


Full Copyright Statement

   Copyright (C) The Internet Society (2002).  All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works.  However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.

   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
   BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
   HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
   MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

   Funding for the RFC editor Editor function is currently provided by the
   Internet Society.



















Newton                     Expires February 12, May 5, 2003                 [Page 28] 37]

----