draft-ietf-crisp-iris-dchk-05.txt   draft-ietf-crisp-iris-dchk-06.txt 
Network Working Group A. Newton Network Working Group A. Newton
Internet-Draft VeriSign, Inc. Internet-Draft VeriSign, Inc.
Expires: November 26, 2006 May 25, 2006 Intended status: Standards Track M. Sanz
Expires: June 8, 2007 DENIC eG
Dec 5, 2006
A Domain Availability Check (dchk) Registry Type for the Internet A Domain Availability Check (dchk) Registry Type for the Internet
Registry Information Service (IRIS) Registry Information Service (IRIS)
draft-ietf-crisp-iris-dchk-05 draft-ietf-crisp-iris-dchk-06
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 34 skipping to change at page 1, line 36
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at 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 The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on November 26, 2006. This Internet-Draft will expire on June 8, 2007.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2006). Copyright (C) The Internet Society (2006).
Abstract Abstract
This document describes a lightweight domain availability service This document describes a lightweight domain availability service
using the IRIS framework and the data model of the IRIS Domain using the IRIS framework and the data model of the IRIS Domain
Registry service. Registry service.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Document Terminology . . . . . . . . . . . . . . . . . . . . . 4 2. Document Terminology . . . . . . . . . . . . . . . . . . . . . 4
3. DCHK Registry . . . . . . . . . . . . . . . . . . . . . . . . 5 3. DCHK Registry . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1. Schema Description . . . . . . . . . . . . . . . . . . . . 5 3.1. Schema Description . . . . . . . . . . . . . . . . . . . . 5
3.1.1. The <domain> Result . . . . . . . . . . . . . . . . . 5 3.1.1. The <domain> Result . . . . . . . . . . . . . . . . . 5
3.1.2. Support for <iris:lookupEntity> . . . . . . . . . . . 10 3.1.2. Support for <iris:lookupEntity> . . . . . . . . . . . 8
3.2. DCHK Formal XML Syntax . . . . . . . . . . . . . . . . . . 10 3.2. DCHK Formal XML Syntax . . . . . . . . . . . . . . . . . . 8
3.3. BEEP Transport Compliance . . . . . . . . . . . . . . . . 17 3.3. BEEP Transport Compliance . . . . . . . . . . . . . . . . 13
3.3.1. Message Pattern . . . . . . . . . . . . . . . . . . . 18 3.3.1. Message Pattern . . . . . . . . . . . . . . . . . . . 13
3.3.2. Server Authentication . . . . . . . . . . . . . . . . 18 3.3.2. Server Authentication . . . . . . . . . . . . . . . . 13
3.4. URI Resolution . . . . . . . . . . . . . . . . . . . . . . 18 3.4. URI Resolution . . . . . . . . . . . . . . . . . . . . . . 13
3.4.1. Application Service Label . . . . . . . . . . . . . . 18 3.4.1. Application Service Label . . . . . . . . . . . . . . 13
3.4.2. Bottom-Up Resolution . . . . . . . . . . . . . . . . . 18 3.4.2. Bottom-Up Resolution . . . . . . . . . . . . . . . . . 14
3.4.3. Top-Down Resolution . . . . . . . . . . . . . . . . . 18 3.4.3. Top-Down Resolution . . . . . . . . . . . . . . . . . 14
4. Internationalization Considerations . . . . . . . . . . . . . 19 4. Internationalization Considerations . . . . . . . . . . . . . 15
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 16
5.1. XML Namespace URN Registration . . . . . . . . . . . . . . 20 5.1. XML Namespace Registration . . . . . . . . . . . . . . . . 16
5.2. S-NAPTR Registration . . . . . . . . . . . . . . . . . . . 20 5.2. XML Schema Registration . . . . . . . . . . . . . . . . . 16
5.3. BEEP Registration . . . . . . . . . . . . . . . . . . . . 20 5.3. S-NAPTR Registration . . . . . . . . . . . . . . . . . . . 16
6. Security Considerations . . . . . . . . . . . . . . . . . . . 21 5.4. BEEP Registration . . . . . . . . . . . . . . . . . . . . 17
7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 22 6. Security Considerations . . . . . . . . . . . . . . . . . . . 18
7.1. Normative References . . . . . . . . . . . . . . . . . . . 22 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 19
7.2. Informative References . . . . . . . . . . . . . . . . . . 22 7.1. Normative References . . . . . . . . . . . . . . . . . . . 19
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 23 7.2. Informative References . . . . . . . . . . . . . . . . . . 19
Intellectual Property and Copyright Statements . . . . . . . . . . 24 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 20
Intellectual Property and Copyright Statements . . . . . . . . . . 21
1. Introduction 1. Introduction
This document describes a lightweight service for checking the This document describes a lightweight service for checking the
availability of domain names. This service is based on the IRIS availability of domain names. This service is based on the IRIS
framework and uses the data model defined by DREG2 [4]. By doing framework and uses the data model defined by DREG2 [10]. By doing
this, the domain availability service has the advantages provided by this, the domain availability service has the advantages provided by
IRIS and DREG2, such as well-known methods for server navigation, IRIS and DREG2, such as well-known methods for server navigation,
structured queries and results, and layered extensibility. structured queries and results, and layered extensibility.
The use of IRIS for this service also allows seamless integration The use of IRIS for this service also allows seamless integration
between the domain availability service and the service provided by between the domain availability service and the service provided by
DREG2. This allows a user to find the availability status of domain DREG2. This allows a user to find the availability status of domain
and reference the full registration information in DREG2. and reference the full registration information in DREG2.
The data model in this service (called a registry schema in IRIS The data model in this service (called a registry schema in IRIS
skipping to change at page 3, line 34 skipping to change at page 3, line 34
(different port) or machine (different host). (different port) or machine (different host).
As an example, an operator may wish to deploy both types of service As an example, an operator may wish to deploy both types of service
on the same set of machines. As time goes on, the operator may then on the same set of machines. As time goes on, the operator may then
decide to segregate the services, placing the domain availability decide to segregate the services, placing the domain availability
service on one set of machines and the DREG2 service on a separate service on one set of machines and the DREG2 service on a separate
set of machines with a stricter set of controls. Either deployment set of machines with a stricter set of controls. Either deployment
scenario is transparent to the end user and always appear to be scenario is transparent to the end user and always appear to be
seamlessly complementary. seamlessly complementary.
When coupled with [12], this domain availability service is When coupled with [11], this domain availability service is
lightweight and extremely effecient for high-volume, public-facing lightweight and extremely effecient for high-volume, public-facing
service. service.
2. Document Terminology 2. Document Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC2119 [8]. document are to be interpreted as described in RFC2119 [2].
3. DCHK Registry 3. DCHK Registry
The data model used for the domain availability check (DCHK) service The data model used for the domain availability check (DCHK) service
is a strict subset of the DREG2 data model. This section describes is a strict subset of the DREG2 data model. This section describes
the DCHK registry type. See [3]. the DCHK registry type.
3.1. Schema Description 3.1. Schema Description
References to XML elements with no namespace qualifier are from the References to XML elements with no namespace qualifier are from the
schema defined in Section 3.2. References to elements and attributes schema defined in Section 3.2. References to elements and attributes
with the "iris" XML namespace qualifier are from the schema defined with the "iris" XML namespace qualifier are from the schema defined
in IRIS [3]. in IRIS [6].
The descriptions contained within this section refer to XML elements The descriptions contained within this section refer to XML elements
and attributes and their relation to the exchange of data within the and attributes and their relation to the exchange of data within the
protocol. These descriptions also contain specifications outside the protocol. These descriptions also contain specifications outside the
scope of the formal XML syntax. Therefore, this section will use scope of the formal XML syntax. Therefore, this section will use
terms defined by RFC 2119 [8] to describe the specification outside terms defined by RFC 2119 [2] to describe the specification outside
the scope of the formal XML syntax. While reading this section, the scope of the formal XML syntax. While reading this section,
please reference Section 3.2 for needed details on the formal XML please reference Section 3.2 for needed details on the formal XML
syntax. syntax.
3.1.1. The <domain> Result 3.1.1. The <domain> Result
An example of a <domain> result: An example of a <domain> result:
<domain <domain
authority="iana.org" registryType="dchk1" authority="iana.org" registryType="dchk1"
entityClass="domain-name" entityName="example.com"> entityClass="domain-name" entityName="example.com">
<domainName>example.com</domainName> <domainName>example.com</domainName>
<status><activeAndAssigned/></status> <status><active/></status>
</domain> </domain>
&lt;domain&gt; Example
The <domain> result represents an instance of a domain assignment. The <domain> result represents an instance of a domain assignment.
The children of the <domain> element are as follows: The children of the <domain> element are as follows:
o <domainName> - the full name of the domain as it is in DNS. The o <domainName> - the full name of the domain as it is in DNS. The
contents of this element MUST be a domain name as specified by RFC contents of this element MUST be a domain name as specified by RFC
1035 [7]. 1035 [1].
o <idn> - the name of the domain in nameprep form if applicable. o <idn> - the name of the domain in nameprep form if applicable.
See RFC 3491 [9]. See RFC 3491 [3].
o <status> - may contain at least one of the following elements of
type 'domainStatusType' (see Section 3.1.1.1), but none of these
elements may appear more than once.
* <reservedDelegation> - permanently inactive
* <assignedAndActive> - normal state
* <assignedAndInactive> - registration assigned but delegation
inactive
* <assignedAndOnHold> - dispute
* <revoked> - database purge pending
* <transferPending> - change of authority pending
* <registryLock> - on hold by registry
* <registrarLock> - on hold by registrar
o <enhancedStatus> - this element contains child elements o <status> - this element contains child elements representing
representing enhanced status information. It defines the domain status information. It defines the following status types:
following additional status types:
* <active> - available via DNS (either via delegation or direct * <active> - available via DNS (either via delegation or direct
publication) publication)
* <inactive> - unavailable via DNS * <inactive> - unavailable via DNS
* <lame> - the domain has been found to be lame (see
Section 3.1.1.3). This element is of "lameEnhancedStatusType".
* <resolvable> - the domain is not lame (see Section 3.1.1.3).
* <dispute> - registrant assignment is in dispute * <dispute> - registrant assignment is in dispute
* <renew> - renewal of domain registration * <renew> - renewal of domain registration
* <addPeriod> - period at the creation or activation of this * <addPeriod> - period at the creation or activation of this
domain (see RFC 3915 [6]) domain (see RFC 3915 [5])
* <renewPeriod> - period at the renewal of this domain (see RFC * <renewPeriod> - period at the renewal of this domain (see RFC
3915 [6]) 3915 [5])
* <autoRenewPeriod> - period at the automatic renewal of this * <autoRenewPeriod> - period at the automatic renewal of this
domain (see RFC 3915 [6]) domain (see RFC 3915 [5])
* <transferPeriod> - period at the transfer of this domain (see * <transferPeriod> - period at the transfer of this domain (see
RFC 3915 [6]) RFC 3915 [5])
* <redemptionPeriod> - period at the redemption of this domain * <redemptionPeriod> - period at the redemption of this domain
(see RFC 3915 [6]) (see RFC 3915 [5])
* <restore> - change to previous status of this domain * <restore> - change to previous status of this domain
* <policyCompliant> - this domain is considered compliant * <policyCompliant> - the domain is considered compliant
according to a given policy specified by the substatus according to a given policy specified by the substatus
identifier. identifier.
* <policyNoncompliant> - this domain is not considered compliant * <policyNoncompliant> - the domain is not considered compliant
according to a given policy specified by the substatus according to a given policy specified by the substatus
identifier. identifier.
* <reserved> - the containing result object is reserved and is * <reserved> - the domain is reserved and is not available for
not available for registration under normal registration registration under normal registration procedures.
procedures.
* <create> - specifies the creation status of the containing * <create> - specifies the creation status of the domain in the
result object in the registration system. registration system.
* <delete> - specifies the deletion status of the containing * <delete> - specifies the deletion status of the domain in the
result object in the registration system. registration system.
* <transfer> - specifies the transfer status of the containing * <transfer> - specifies the transfer status of the domain from
result object from one responsible or owning entity in the one responsible or owning entity in the registration system to
registration system to another. another.
* <update> - specifies the status of the containing result object * <update> - specifies the status of the domain as it relates to
as it relates to information in the containing result object information in the domain being modified or having the ability
being modified or having the ability to be modified. to be modified.
* <other> - specifies a registration system specific status of * <other> - specifies a registration system specific status of
the containing result object. the domain.
Both the <status> and <enhancedStatus> elements MAY appear in a
<domain> result object. However, sole use of the <enhancedStatus>
element is RECOMMENDED.
o <domainVariant> - contains an entity reference, the referent of
which MUST be a <domain> (Section 3.1.1).
o <registrationReference> - an element containing an entity o <registrationReference> - an element containing an entity
reference, the referent of which MUST be either a <domain> reference, the referent of which MUST be either a <domain>
(Section 3.1.1) or a <domain> as defined by DREG2 [4]. The intent (Section 3.1.1) or a <domain> as defined by DREG2 [10]. The
of this element is to point to the downstream registration intent of this element is to point to the downstream registration
reference. Therefore, if this is a result given back by a domain reference. Therefore, if this is a result given back by a domain
registry, it should point to the domain in the domain registrar or registry, it should point to the domain in the domain registrar or
registrant service. registrant service.
o <createdDateTime> - an element containing the date and time of the
creation of this domain
o <initialDelegationDateTime> - an element containing the date and o <initialDelegationDateTime> - an element containing the date and
time of the initial delegation of this domain. time of the initial delegation of this domain.
o <lastDelegationModificationDateTime> - an element containing the o <expirationDateTime> - an element containing the date and time of
date and time of the last time one of the nameservers was added or the expiration of this domain
removed for the delegation of this domain.
o <lastDatabaseUpdateDateTime> - an element containing the date and
time of the last actualization of the database that is source for
this result
o <iris:seeAlso> - an element containing an entity reference o <iris:seeAlso> - an element containing an entity reference
specifying a referent that is indirectly associated with this specifying a referent that is indirectly associated with this
domain. domain.
3.1.1.1. Domain Status Type 3.1.1.1. Domain Status Type
Each element that is of the 'domainStatusType' may have an optional Each element of type 'domainStatusType' has the following
<appliedDate> element and one or more <description> elements, the
text contents of which may be used to describe the status in natural
language. Each <description> element must have a 'language'
attribute describing the language of the description element.
3.1.1.2. Enhanced Domain Status Type
Each element that is of the 'enhancedStatusType' has the following
composition: composition:
o <appliedDate> - a child element containing the date applicable to o <appliedDate> - an optional child element containing the date
creation of the status. applicable to creation of the status.
o <description> - one or more child elements with text to described o <ticket> - an optional child element containing a service ticket
identifier relevant to the status.
o <description> - zero or more child elements with text to describe
the status in natural language. Each of these elements must have the status in natural language. Each of these elements must have
a 'language' attribute describing the language of the description a 'language' attribute describing the language of the description
element. element.
o <ticket> - a child element containing a service ticket identifier
relevant to the status.
o <subStatus> - a child element indicating further status o <subStatus> - a child element indicating further status
information. Values for this element are not defined by the information. Values for this element are not defined by this
specification. This child element has a required 'authority' specification. This child element has a required 'authority'
attribute to indicate the origin of the specification of the value attribute to indicate the origin of the specification of the value
of this element. of this element.
o 'actor' - an optional attribute indicating the acting entity for o 'actor' - an optional attribute indicating the acting entity for
which this status is applied. The values may be "registry", which this status is applied. The values may be "registry",
"registrar", or "registrationServiceProvider". "registrar" or "registrationServiceProvider".
o 'disposition' - an optional attribute indicating the nature of o 'disposition' - an optional attribute indicating the nature of
this status. The values may be "pending" or "prohibited". this status. The values may be "pending" or "prohibited".
o 'scope' - an optional attribute indicating the context or origin o 'scope' - an optional attribute indicating the context or origin
of the status value. of the status value.
3.1.1.3. Lameness
Some registries, registrars, or registration service providers may
periodically check to see if a domain is "lame". In DNS terms,
"lame" has a narrow definition as defined in [11], but the term is
often used in a wider context. The explanation given here covers the
wider context as is often found in registration systems and is not
meant to redefine the stricter meaning in DNS as specified in [11].
A nameserver listed as authoritative for a domain can be considered
lame for three reasons:
1. The nameserver is unresponsive.
2. The nameserver does not answer authoritatively for the domain.
See [11].
3. The address of the nameserver cannot be resolved, usually due to
the domain in which it exists being lame itself.
In a registration database, lameness may exist in three places:
1. A nameserver is lame if its address cannot be resolved or it does
not answer queries.
2. The relationship between a domain and a nameserver could be lame
if the nameserver does not authoritatively answer queries for the
domain (i.e. it could answer authoritatively for other domains).
3. A domain is lame if all of its nameservers are lame.
This specification enumerates the reasons for lameness with
"lameReasonType". The enumerated values are:
o queryTimeout - an answer was not received within a specified
duration of time.
o nonAuthoritativeAnswer - the name server queried did not return an
authoritative answer.
o unknownDomainName - the name server queried unknown the domain
name.
o unknownHostName - the name server's name is unknown.
o queryRefused - the name server refused to answer the query.
o connectionRefused - the name server refused to accept the query
connection.
o cannonicalName - the name server's name in a CNAME and not an A
record.
o soaVersionNotInSync - the SOA version is not in sync between this
server and the delegated master.
o dnsProtocolLevelError - the query resulted in a DNS protocol error
o other - lame for an unexplaned reason
A special status type also exists to describe lameness, the
"lameEnhancedStatusType". This type extends the "enhancedStatusType"
by adding an <lame> element of the "lameReasonType".
3.1.2. Support for <iris:lookupEntity> 3.1.2. Support for <iris:lookupEntity>
The following types of entity classes are recognized by the The following types of entity classes are recognized by the
<lookupEntity> query of IRIS for this registry: <lookupEntity> query of IRIS for this registry:
o domain-name - the fully qualified name of a domain. This a domain o domain-name - the fully qualified name of a domain. This a domain
name as specified by RFC 1035 [7]. Yields a <domain> name as specified by RFC 1035 [1]. Yields a <domain>
(Section 3.1.1) in the response. (Section 3.1.1) in the response.
o idn - the fully qualified name of a domain in nameprep form (see o idn - the fully qualified name of a domain in nameprep form (see
RFC 3491 [9]). Yields a <domain> (Section 3.1.1) in the response. RFC 3491 [3]). Yields a <domain> (Section 3.1.1) in the response.
3.2. DCHK Formal XML Syntax 3.2. DCHK Formal XML Syntax
This registry schema is specified in the XML Schema notation (see [1] This registry schema is specified in the XML Schema notation (see [8]
and [2]). The formal syntax presented here is a complete schema and [9]). The formal syntax presented here is a complete schema
representation suitable for automated validation of an XML instance representation suitable for automated validation of an XML instance
when combined with the formal schema syntax of IRIS. when combined with the formal schema syntax of IRIS.
<?xml version="1.0"?> <?xml version="1.0"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" <schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:dchk="urn:ietf:params:xml:ns:dchk1" xmlns:dchk="urn:ietf:params:xml:ns:dchk1"
xmlns:iris="urn:ietf:params:xml:ns:iris1" xmlns:iris="urn:ietf:params:xml:ns:iris1"
targetNamespace="urn:ietf:params:xml:ns:dchk1" targetNamespace="urn:ietf:params:xml:ns:dchk1"
elementFormDefault="qualified" > elementFormDefault="qualified" >
skipping to change at page 11, line 35 skipping to change at page 9, line 32
base="iris:resultType"> base="iris:resultType">
<sequence> <sequence>
<element <element
name="domainName" name="domainName"
type="token" /> type="token" />
<element <element
name="idn" name="idn"
type="token" type="token"
minOccurs="0" minOccurs="0"
maxOccurs="1" /> maxOccurs="1" />
<element <element name="status"
name="status"
minOccurs="0"
maxOccurs="1">
<complexType>
<all>
<element
name="reservedDelegation"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="assignedAndActive"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="assignedAndInactive"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="assignedAndOnHold"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="revoked"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="transferPending"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="registryLock"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="registrarLock"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
<element
name="other"
minOccurs="0"
maxOccurs="1"
type="dchk:domainStatusType" />
</all>
</complexType>
</element>
<element name="enhancedStatus"
minOccurs="0" minOccurs="0"
maxOccurs="1"> maxOccurs="1">
<complexType> <complexType>
<choice minOccurs="0" maxOccurs="unbounded"> <choice minOccurs="0" maxOccurs="unbounded">
<element <element
name="active" name="active"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="inactive" name="inactive"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element
name="lame"
type="dchk:lameEnhancedStatusType" />
<element
name="resolvable"
type="dchk:enhancedStatusType" />
<element <element
name="dispute" name="dispute"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="renew" name="renew"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="addPeriod" name="addPeriod"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="renewPeriod" name="renewPeriod"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="autoRenewPeriod" name="autoRenewPeriod"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="transferPeriod" name="transferPeriod"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="redemptionPeriod" name="redemptionPeriod"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="restore" name="restore"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="policyCompliant" name="policyCompliant"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="policyNoncompliant" name="policyNoncompliant"
type="dchk:enhancedStatusType" /> type="dchk:domainStatusType" />
<element <element
name="reserved" name="reserved"
type="dchk:enhancedStatusType"/> type="dchk:domainStatusType" />
<element <element
name="create" name="create"
type="dchk:enhancedStatusType"/> type="dchk:domainStatusType" />
<element <element
name="delete" name="delete"
type="dchk:enhancedStatusType"/> type="dchk:domainStatusType" />
<element <element
name="transfer" name="transfer"
type="dchk:enhancedStatusType"/> type="dchk:domainStatusType" />
<element <element
name="update" name="update"
type="dchk:enhancedStatusType"/> type="dchk:domainStatusType" />
<element <element
name="other" name="other"
type="dchk:enhancedStatusType"/> type="dchk:domainStatusType" />
</choice> </choice>
</complexType> </complexType>
</element> </element>
<element <element
name="domainVariant" name="registrationReference"
type="iris:entityType" type="iris:entityType"
minOccurs="0" minOccurs="0"
maxOccurs="unbounded" /> maxOccurs="1" />
<element <element
name="registrationReference" name="createdDateTime"
type="iris:entityType" type="dateTime"
minOccurs="0" minOccurs="0"
maxOccurs="1" /> maxOccurs="1" />
<element <element
name="initialDelegationDateTime" name="initialDelegationDateTime"
type="dateTime" type="dateTime"
minOccurs="0" minOccurs="0"
maxOccurs="1" /> maxOccurs="1" />
<element <element
name="lastDelegationModificationDateTime" name="expirationDateTime"
type="dateTime"
minOccurs="0"
maxOccurs="1" />
<element
name="lastDatabaseUpdateDateTime"
type="dateTime" type="dateTime"
minOccurs="0" minOccurs="0"
maxOccurs="1" /> maxOccurs="1" />
<element <element
ref="iris:seeAlso" ref="iris:seeAlso"
minOccurs="0" minOccurs="0"
maxOccurs="unbounded" /> maxOccurs="unbounded" />
</sequence> </sequence>
</extension> </extension>
</complexContent> </complexContent>
skipping to change at page 15, line 8 skipping to change at page 11, line 46
<complexType <complexType
name="domainStatusType"> name="domainStatusType">
<sequence> <sequence>
<element <element
name="appliedDate" name="appliedDate"
type="dateTime" type="dateTime"
minOccurs="0" minOccurs="0"
maxOccurs="1" /> maxOccurs="1" />
<element <element
name="description"
minOccurs="0"
maxOccurs="unbounded">
<complexType>
<simpleContent>
<extension
base="string">
<attribute
name="language"
type="language"
use="required" />
</extension>
</simpleContent>
</complexType>
</element>
</sequence>
<attribute
name="scope"
type="string" />
</complexType>
<complexType
name="enhancedStatusType">
<sequence>
<element
name="appliedDate"
type="dateTime"
minOccurs="0"
maxOccurs="1" />
<element
name="ticket" name="ticket"
type="token" type="token"
minOccurs="0" minOccurs="0"
maxOccurs="unbounded" /> maxOccurs="unbounded" />
<element <element
name="description" name="description"
minOccurs="0" minOccurs="0"
maxOccurs="unbounded"> maxOccurs="unbounded">
<complexType> <complexType>
<simpleContent> <simpleContent>
skipping to change at page 17, line 9 skipping to change at page 13, line 17
value="prohibited"/> value="prohibited"/>
<enumeration <enumeration
value="pending"/> value="pending"/>
</restriction> </restriction>
</simpleType> </simpleType>
</attribute> </attribute>
<attribute <attribute
name="scope" name="scope"
type="token" /> type="token" />
</complexType> </complexType>
<simpleType name="lameReasonType">
<restriction base="string">
<enumeration value="queryTimeout"/>
<enumeration value="nonAuthoritativeAnswer"/>
<enumeration value="unknownDomainName"/>
<enumeration value="unknownHostName"/>
<enumeration value="queryRefused"/>
<enumeration value="connectionRefused"/>
<enumeration value="canonicalName"/>
<enumeration value="soaVersionNotInSync"/>
<enumeration value="dnsProtocolLevelError"/>
<enumeration value="other"/>
</restriction>
</simpleType>
<complexType name="lameEnhancedStatusType">
<complexContent>
<extension base="dchk:enhancedStatusType">
<sequence>
<element name="lameReason"
type="dchk:lameReasonType" />
</sequence>
</extension>
</complexContent>
</complexType>
</schema> </schema>
Figure 2: dchk.xsd Figure 2: dchk.xsd
3.3. BEEP Transport Compliance 3.3. BEEP Transport Compliance
Though it is envisioned that a DCHK service will be deployed with a Though it is envisioned that a DCHK service will be deployed with a
lightweight transport such as [12], it is still possible to use DCHK lightweight transport such as [11], it is still possible to use DCHK
with the [5] transport. The use of this transport is completely at with the [7] transport. The use of this transport is completely at
the descretion of the server operator. the discretion of the server operator.
IRIS allows several extensions of the core capabilities. This IRIS allows several extensions of the core capabilities. This
section outlines those extensions allowable by IRIS-BEEP [5]. section outlines those extensions allowable by IRIS-BEEP [7].
3.3.1. Message Pattern 3.3.1. Message Pattern
This registry type uses the default message pattern as described in This registry type uses the default message pattern as described in
IRIS-BEEP [5]. IRIS-BEEP [7].
3.3.2. Server Authentication 3.3.2. Server Authentication
This registry type uses the default server authentication method as This registry type uses the default server authentication method as
described in IRIS-BEEP [5]. described in IRIS-BEEP [7].
3.4. URI Resolution 3.4. URI Resolution
3.4.1. Application Service Label 3.4.1. Application Service Label
The application service label associated with this registry type MUST The application service label associated with this registry type MUST
be "DCHK1". This is the abbreviated form of the URN for this be "DCHK1". This is the abbreviated form of the URN for this
registry type, urn:ietf:params:xml:ns:dchk1. registry type, urn:ietf:params:xml:ns:dchk1.
3.4.2. Bottom-Up Resolution 3.4.2. Bottom-Up Resolution
The bottom-up alternative resolution method MUST be identified as The bottom-up alternative resolution method MUST be identified as
'bottom' in IRIS URI's. Its process is identical to the 'bottom' 'bottom' in IRIS URI's. Its process is identical to the 'bottom'
process described by DREG2 [4]. process described by DREG2 [10].
3.4.3. Top-Down Resolution 3.4.3. Top-Down Resolution
The top-down alternative resolution method MUST be identified as The top-down alternative resolution method MUST be identified as
'top' in IRIS URI's. Its process is identical to the 'top' process 'top' in IRIS URI's. Its process is identical to the 'top' process
described by DREG2 [4]. described by DREG2 [10].
4. Internationalization Considerations 4. Internationalization Considerations
Implementers should be aware of considerations for Implementers should be aware of considerations for
internationalization in IRIS [3]. internationalization in IRIS [6].
Clients needing to localize the data tags in this protocol should Clients needing to localize the data tags in this protocol should
take note that localization is only needed on the names of XML take note that localization is only needed on the names of XML
elements and attributes with the exception of elements containing elements and attributes with the exception of elements containing
date and time information. The schema for this registry has been date and time information. The schema for this registry has been
designed so that clients need not interpret the content of elements designed so that clients need not interpret the content of elements
or attributes for localization, other than those elements containing or attributes for localization, other than those elements containing
date and time information. date and time information.
Clients should also make use of the <language> elements provided in Clients should also make use of the <language> elements provided in
many of the results. Results containing data that may be in Unicode many of the results. Results containing internationalized data can
are accompanied by these elements in order to aid better presentation be accompanied by these elements in order to aid better localization
of the data to the user. of the data by the user
The "appliedDate" element contains the XML Schema [1] data type All date and time elements make use of the XML Schema [8] data type
"dateTime". The contents of this element MUST be specified using the "dateTime". If their contents are Coordinated Universal Time (UTC)
'Z' indicator for Coordinated Universal Time (UTC). timestamps, they MUST be specified by using the capitalized 'Z'
indicator (instead of 'z').
5. IANA Considerations 5. IANA Considerations
5.1. XML Namespace URN Registration 5.1. XML Namespace Registration
This document makes use of a proposed XML namespace and schema This document makes use of the XML registry specified in RFC 3688
registry specified in XML_URN [10]. Accordingly, the following [4]. Accordingly, the following registration information is provided
registration information is provided for the IANA: for the IANA:
o XML Namespace URN/URI: o XML Namespace URN/URI:
* urn:ietf:params:xml:ns:dchk1 * urn:ietf:params:xml:ns:dchk1
o Contact: o Contact:
* Andrew Newton <andy@hxr.us> * Andrew Newton <andy@hxr.us>
* Marcos Sanz <sanz@denic.de>
o XML: o XML:
* None. * None.
5.2. XML Schema Registration
This document makes use of the XML registry specified in RFC 3688
[4]. Accordingly, the following registration information is provided
for the IANA:
o XML Schema URN/URI: o XML Schema URN/URI:
* urn:ietf:params:xml:ns:dchk1 * urn:ietf:params:xml:ns:dchk1
o Contact: o Contact:
* Andrew Newton <andy@hxr.us> * Andrew Newton <andy@hxr.us>
* Marcos Sanz <sanz@denic.de>
o XML: o XML:
* The XML Schema specified in Section 3.2 * The XML Schema specified in Section 3.2
5.2. S-NAPTR Registration 5.3. S-NAPTR Registration
The following S-NAPTR application service label will need to be The following S-NAPTR application service label will need to be
registered with IANA according to the IANA considerations defined in registered with IANA according to the IANA considerations defined in
IRIS [3]: IRIS [6]:
DCHK1 DCHK1
5.3. BEEP Registration 5.4. BEEP Registration
The following BEEP Profile URI is to be registeried with IANA, in The following BEEP Profile URI is to be registeried with IANA, in
addition to the registration provided in IRIS-BEEP [5]. addition to the registration provided in IRIS-BEEP [7].
http://iana.org/beep/iris1/dchk1 http://iana.org/beep/iris1/dchk1
6. Security Considerations 6. Security Considerations
Being a proper subset of DREG2 [4], the registry described in this Being a proper subset of DREG2 [10], the registry described in this
document has the same security considerations. document has the same security considerations.
7. References 7. References
7.1. Normative References 7.1. Normative References
[1] World Wide Web Consortium, "XML Schema Part 2: Datatypes", [1] Mockapetris, P., "Domain names - implementation and
W3C XML Schema, October 2004, specification", STD 13, RFC 1035, November 1987.
<http://www.w3.org/TR/xmlschema-2/>.
[2] World Wide Web Consortium, "XML Schema Part 1: Structures",
W3C XML Schema, October 2004,
<http://www.w3.org/TR/xmlschema-1/>.
[3] Newton, A. and M. Sanz, "Internet Registry Information [2] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Service", RFC 3981, January 2005. Levels", BCP 14, RFC 2119, March 1997.
[4] Newton, A. and F. Neves, "Domain Registry Version 2 for the [3] Hoffman, P. and M. Blanchet, "Nameprep: A Stringprep Profile
Internet Registry Information Service", for Internationalized Domain Names (IDN)", RFC 3491,
draft-ietf-crisp-iris-dreg2-01 (work in progress), May 2006. March 2003.
[5] Newton, A. and M. Sanz, "Internet Registry Information Service [4] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
(IRIS) over Blocks Extensible Exchange Protocol (BEEP)", January 2004.
RFC 3983, January 2005.
[6] Hollenbeck, S., "Domain Registry Grace Period Mapping for the [5] Hollenbeck, S., "Domain Registry Grace Period Mapping for the
Extensible Provisioning Protocol (EPP)", RFC 3915, Extensible Provisioning Protocol (EPP)", RFC 3915,
September 2004. September 2004.
[7] Mockapetris, P., "Domain names - implementation and [6] Newton, A. and M. Sanz, "IRIS: The Internet Registry
specification", STD 13, RFC 1035, November 1987. Information Service (IRIS) Core Protocol", RFC 3981,
January 2005.
[8] Bradner, S., "Key words for use in RFCs to Indicate Requirement [7] Newton, A. and M. Sanz, "Using the Internet Registry
Levels", RFC 2119, BCP 14, March 1997. Information Service (IRIS) over the Blocks Extensible Exchange
Protocol (BEEP)", RFC 3983, January 2005.
[9] Hoffman, P. and M. Blanchet, "Nameprep: A Stringprep Profile [8] World Wide Web Consortium, "XML Schema Part 2: Datatypes",
for Internationalized Domain Names (IDN)", RFC 3491, W3C XML Schema, October 2004,
March 2003. <http://www.w3.org/TR/xmlschema-2/>.
[10] Mealling, M., "The IETF XML Registry", [9] World Wide Web Consortium, "XML Schema Part 1: Structures",
draft-mealling-iana-xmlns-registry-03 (work in progress), W3C XML Schema, October 2004,
November 2001. <http://www.w3.org/TR/xmlschema-1/>.
[11] Austein, R. and J. Saperia, "DNS Resolver MIB Extensions", [10] Newton, A. and F. Neves, "Domain Registry Version 2 for the
RFC 1612, May 1994. Internet Registry Information Service",
draft-ietf-crisp-iris-dreg2-01 (work in progress), May 2006.
7.2. Informative References 7.2. Informative References
[12] Newton, A., "A Lightweight UDP Transport for IRIS", [11] Newton, A., "A Lightweight UDP Transport for IRIS",
draft-ietf-crips-iris-lwz-06 (work in progress), January 2005. draft-ietf-crips-iris-lwz-06 (work in progress), January 2005.
Author's Address Authors' Addresses
Andrew L. Newton Andrew L. Newton
VeriSign, Inc. VeriSign, Inc.
21345 Ridgetop Circle 21345 Ridgetop Circle
Sterling, VA 20166 Sterling, VA 20166
USA USA
Phone: +1 703 948 3382 Phone: +1 703 948 3382
Email: andy@hxr.us Email: andy@hxr.us
URI: http://www.verisignlabs.com/ URI: http://www.verisignlabs.com/
Intellectual Property Statement Marcos Sanz
DENIC eG
Wiesenhuettenplatz 26
D-60329 Frankfurt
Germany
Email: sanz@denic.de
URI: http://www.denic.de/
Full Copyright Statement
Copyright (C) The Internet Society (2006).
This document is subject to the rights, licenses and restrictions
contained in BCP 78, and except as set forth therein, the authors
retain all their rights.
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM 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.
Intellectual Property
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79. found in BCP 78 and BCP 79.
skipping to change at page 24, line 29 skipping to change at page 21, line 45
such proprietary rights by implementers or users of this such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr. http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at this standard. Please address the information to the IETF at
ietf-ipr@ietf.org. ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM 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.
Copyright Statement
Copyright (C) The Internet Society (2006). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment Acknowledgment
Funding for the RFC Editor function is currently provided by the Funding for the RFC Editor function is provided by the IETF
Internet Society. Administrative Support Activity (IASA).
 End of changes. 101 change blocks. 
390 lines changed or deleted 201 lines changed or added

This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/