Internet Engineering Task Force (IETF)                          J. Gould
Request for Comments: 8590                                VeriSign, Inc.
Category: Standards Track                                       K. Feher
ISSN: 2070-1721                                                  Neustar
                                                                May 2019
        
Internet Engineering Task Force (IETF)                          J. Gould
Request for Comments: 8590                                VeriSign, Inc.
Category: Standards Track                                       K. Feher
ISSN: 2070-1721                                                  Neustar
                                                                May 2019
        

Change Poll Extension for the Extensible Provisioning Protocol (EPP)

更改可扩展配置协议(EPP)的轮询扩展

Abstract

摘要

This document describes an Extensible Provisioning Protocol (EPP) extension for notifying clients of operations on client-sponsored objects that were not initiated by the client through EPP. These operations may include contractual or policy requirements including, but not limited to, regular batch processes, customer support actions, Uniform Domain-Name Dispute-Resolution Policy (UDRP) or Uniform Rapid Suspension (URS) actions, court-directed actions, and bulk updates based on customer requests. Since the client is not directly involved or knowledgable of these operations, the extension is used along with an EPP object mapping to provide the resulting state of the postoperation object, and optionally a preoperation object, with the operation metadata of what, when, who, and why.

本文档描述了一个可扩展的资源调配协议(EPP)扩展,用于通知客户端有关客户端发起的对象的操作,这些对象不是由客户端通过EPP发起的。这些操作可能包括合同或政策要求,包括但不限于常规批量处理、客户支持行动、统一域名争议解决政策(UDRP)或统一快速暂停(URS)行动、法院指导行动以及基于客户请求的批量更新。由于客户机不直接参与或不知道这些操作,因此扩展与EPP对象映射一起使用,以提供操作后对象的结果状态,以及可选的操作前对象,以及操作内容、时间、人员和原因的操作元数据。

Status of This Memo

关于下段备忘

This is an Internet Standards Track document.

这是一份互联网标准跟踪文件。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.

本文件是互联网工程任务组(IETF)的产品。它代表了IETF社区的共识。它已经接受了公众审查,并已被互联网工程指导小组(IESG)批准出版。有关互联网标准的更多信息,请参见RFC 7841第2节。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at https://www.rfc-editor.org/info/rfc8590.

有关本文件当前状态、任何勘误表以及如何提供反馈的信息,请访问https://www.rfc-editor.org/info/rfc8590.

Copyright Notice

版权公告

Copyright (c) 2019 IETF Trust and the persons identified as the document authors. All rights reserved.

版权(c)2019 IETF信托基金和被确定为文件作者的人员。版权所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

本文件受BCP 78和IETF信托有关IETF文件的法律规定的约束(https://trustee.ietf.org/license-info)自本文件出版之日起生效。请仔细阅读这些文件,因为它们描述了您对本文件的权利和限制。从本文件中提取的代码组件必须包括信托法律条款第4.e节中所述的简化BSD许可证文本,并提供简化BSD许可证中所述的无担保。

Table of Contents

目录

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
     1.1.  Conventions Used in This Document . . . . . . . . . . . .   3
   2.  Object Attributes . . . . . . . . . . . . . . . . . . . . . .   4
     2.1.  Operation . . . . . . . . . . . . . . . . . . . . . . . .   4
     2.2.  State . . . . . . . . . . . . . . . . . . . . . . . . . .   5
     2.3.  Who . . . . . . . . . . . . . . . . . . . . . . . . . . .   5
     2.4.  Dates and Times . . . . . . . . . . . . . . . . . . . . .   5
   3.  EPP Command Mapping . . . . . . . . . . . . . . . . . . . . .   6
     3.1.  EPP Query Commands  . . . . . . . . . . . . . . . . . . .   6
       3.1.1.  EPP <check> Command . . . . . . . . . . . . . . . . .   6
       3.1.2.  EPP <info> Command  . . . . . . . . . . . . . . . . .   6
       3.1.3.  EPP <transfer> Command  . . . . . . . . . . . . . . .  14
     3.2.  EPP Transform Commands  . . . . . . . . . . . . . . . . .  14
       3.2.1.  EPP <create> Command  . . . . . . . . . . . . . . . .  14
       3.2.2.  EPP <delete> Command  . . . . . . . . . . . . . . . .  14
       3.2.3.  EPP <renew> Command . . . . . . . . . . . . . . . . .  14
       3.2.4.  EPP <transfer> Command  . . . . . . . . . . . . . . .  14
       3.2.5.  EPP <update> Command  . . . . . . . . . . . . . . . .  14
   4.  Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . .  15
     4.1.  Change Poll Extension Schema  . . . . . . . . . . . . . .  15
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  18
     5.1.  XML Namespace . . . . . . . . . . . . . . . . . . . . . .  18
     5.2.  EPP Extension Registry  . . . . . . . . . . . . . . . . .  18
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .  19
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  19
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  19
     7.2.  Informative References  . . . . . . . . . . . . . . . . .  20
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  20
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  20
        
   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
     1.1.  Conventions Used in This Document . . . . . . . . . . . .   3
   2.  Object Attributes . . . . . . . . . . . . . . . . . . . . . .   4
     2.1.  Operation . . . . . . . . . . . . . . . . . . . . . . . .   4
     2.2.  State . . . . . . . . . . . . . . . . . . . . . . . . . .   5
     2.3.  Who . . . . . . . . . . . . . . . . . . . . . . . . . . .   5
     2.4.  Dates and Times . . . . . . . . . . . . . . . . . . . . .   5
   3.  EPP Command Mapping . . . . . . . . . . . . . . . . . . . . .   6
     3.1.  EPP Query Commands  . . . . . . . . . . . . . . . . . . .   6
       3.1.1.  EPP <check> Command . . . . . . . . . . . . . . . . .   6
       3.1.2.  EPP <info> Command  . . . . . . . . . . . . . . . . .   6
       3.1.3.  EPP <transfer> Command  . . . . . . . . . . . . . . .  14
     3.2.  EPP Transform Commands  . . . . . . . . . . . . . . . . .  14
       3.2.1.  EPP <create> Command  . . . . . . . . . . . . . . . .  14
       3.2.2.  EPP <delete> Command  . . . . . . . . . . . . . . . .  14
       3.2.3.  EPP <renew> Command . . . . . . . . . . . . . . . . .  14
       3.2.4.  EPP <transfer> Command  . . . . . . . . . . . . . . .  14
       3.2.5.  EPP <update> Command  . . . . . . . . . . . . . . . .  14
   4.  Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . .  15
     4.1.  Change Poll Extension Schema  . . . . . . . . . . . . . .  15
   5.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  18
     5.1.  XML Namespace . . . . . . . . . . . . . . . . . . . . . .  18
     5.2.  EPP Extension Registry  . . . . . . . . . . . . . . . . .  18
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .  19
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  19
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .  19
     7.2.  Informative References  . . . . . . . . . . . . . . . . .  20
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  20
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  20
        
1. Introduction
1. 介绍

This document describes an extension mapping for version 1.0 of the Extensible Provisioning Protocol (EPP) [RFC5730]. This mapping, an extension to EPP object mappings like the EPP domain name mapping [RFC5731], is used to notify clients of operations they are not directly involved in, on objects that the client sponsors. It is up to server policy to determine what transform operations and clients to notify. Using this extension, clients can more easily keep their systems in sync with the objects stored in the server. When a change occurs that a client needs to be notified of, a poll message can be inserted by the server for consumption by the client using the EPP <poll> command and response defined in [RFC5730]. The extension supports including a "before" operation poll message and an "after" operation poll message. The extension only extends the EPP <poll> response in [RFC5730] and does not extend the EPP <poll> command. Please refer to [RFC5730] for information and examples of the EPP <poll> command.

本文档描述了可扩展资源调配协议(EPP)[RFC5730]版本1.0的扩展映射。此映射是EPP对象映射(如EPP域名映射[RFC5731])的扩展,用于通知客户机在客户机发起的对象上不直接参与的操作。由服务器策略决定要通知哪些转换操作和客户端。使用此扩展,客户端可以更轻松地使其系统与存储在服务器中的对象保持同步。当发生需要通知客户端的更改时,服务器可以使用[RFC5730]中定义的EPP<poll>命令和响应插入轮询消息供客户端使用。扩展支持包括“之前”操作轮询消息和“之后”操作轮询消息。扩展只扩展[RFC5730]中的EPP<poll>响应,不扩展EPP<poll>命令。有关EPP<poll>命令的信息和示例,请参阅[RFC5730]。

1.1. Conventions Used in This Document
1.1. 本文件中使用的公约

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

本文件中的关键词“必须”、“不得”、“必需”、“应”、“不应”、“建议”、“不建议”、“可”和“可选”在所有大写字母出现时(如图所示)应按照BCP 14[RFC2119][RFC8174]所述进行解释。

XML is case sensitive. Unless stated otherwise, XML specifications and examples provided in this document MUST be interpreted in the character case presented in order to develop a conforming implementation.

XML区分大小写。除非另有说明,否则本文档中提供的XML规范和示例必须以所提供的字符大小写进行解释,以便开发一致的实现。

In examples, "C:" represents lines sent by a protocol client, and "S:" represents lines returned by a protocol server. Indentation and white space in examples are provided only to illustrate element relationships and are not a REQUIRED feature of this protocol.

在示例中,“C:”表示协议客户端发送的行,“S:”表示协议服务器返回的行。示例中的缩进和空白仅用于说明元素关系,不是本协议的必需功能。

The XML namespace prefix "changePoll" is used for the namespace "urn:ietf:params:xml:ns:changePoll-1.0", but implementations MUST NOT depend on it; instead, they should employ a proper namespace-aware XML parser and serializer to interpret and output the XML documents.

XML名称空间前缀“changePoll”用于名称空间“urn:ietf:params:XML:ns:changePoll-1.0”,但实现不能依赖于它;相反,他们应该使用适当的名称空间感知XML解析器和序列化程序来解释和输出XML文档。

2. Object Attributes
2. 对象属性

This extension adds additional elements to EPP object mappings like the EPP domain name mapping [RFC5731]. Only those new elements are described here.

此扩展向EPP对象映射添加了其他元素,如EPP域名映射[RFC5731]。这里只描述这些新元素。

2.1. Operation
2.1. 活动

An operation consists of any transform operation that impacts objects that the client sponsors and should be notified of. The <changePoll:operation> element defines the operation. The OPTIONAL "op" attribute is an identifier, represented in the 7-bit US-ASCII character set defined in [RFC20], that is used to define a sub-operation or the name of a "custom" operation. The enumerated list of <changePoll:operation> values is:

操作由影响客户端发起并应通知的对象的任何转换操作组成。<changePoll:operation>元素定义操作。可选的“op”属性是一个标识符,用[RFC20]中定义的7位US-ASCII字符集表示,用于定义子操作或“自定义”操作的名称。<changePoll:operation>值的枚举列表为:

"create": Create operation as defined in [RFC5730].

“创建”:创建[RFC5730]中定义的操作。

"delete": Delete operation as defined in [RFC5730]. If the delete operation results in an immediate purge of the object, then the "op" attribute MUST be set to "purge".

“删除”:删除[RFC5730]中定义的操作。如果删除操作导致立即清除对象,则“op”属性必须设置为“purge”。

"renew": Renew operation as defined in [RFC5730].

“更新”:按照[RFC5730]中的定义更新操作。

"transfer": Transfer operation as defined in [RFC5730] that MUST set the "op" attribute with one of the possible transfer-type values; these include "request", "approve", "cancel", or "reject".

“传输”:在[RFC5730]中定义的传输操作,必须使用一个可能的传输类型值设置“op”属性;其中包括“请求”、“批准”、“取消”或“拒绝”。

"update": Update operation as defined in [RFC5730].

“更新”:按照[RFC5730]中的定义进行更新操作。

"restore": Restore operation as defined in [RFC3915] that MUST set the "op" attribute with one of the possible restore-type values; these include "request" or "report".

“还原”:如[RFC3915]中定义的还原操作,必须使用一个可能的还原类型值设置“op”属性;这些包括“请求”或“报告”。

"autoRenew": Auto renew operation executed by the server.

“自动续费”:服务器执行的自动续费操作。

"autoDelete": Auto delete operation executed by the server. If the "autoDelete" operation results in an immediate purge of the object, then the "op" attribute MUST be set to "purge".

“自动删除”:服务器执行的自动删除操作。如果“自动删除”操作导致立即清除对象,则“op”属性必须设置为“purge”。

"autoPurge": Auto purge operation executed by the server when removing the object after it has had the status "pendingDelete".

“自动清除”:在对象的状态为“pendingDelete”后删除对象时,服务器执行的自动清除操作。

"custom": Custom operation that MUST set the "op" attribute with the custom operation name. The custom operations supported are up to server policy.

“自定义”:必须使用自定义操作名称设置“op”属性的自定义操作。支持的自定义操作取决于服务器策略。

2.2. State
2.2. 状态

The state attribute reflects the state of the object "before" or "after" the operation. The state is defined using the OPTIONAL "state" attribute of the <changePoll:changeData> element, with the possible values "before" or "after" and a default value of "after". The server MAY support both the "before" state and the "after" state of the operation by using one poll message for the "before" state and one poll message for the "after" state. The "before" state poll message MUST be inserted into the message queue prior to the "after" state poll message.

state属性反映对象在操作之前或之后的状态。使用<changePoll:changeData>元素的可选“state”属性定义状态,可能的值为“before”或“after”,默认值为“after”。通过使用一条轮询消息表示“之前”状态和一条轮询消息表示“之后”状态,服务器可以支持操作的“之前”状态和“之后”状态。“之前”状态轮询消息必须插入到“之后”状态轮询消息之前的消息队列中。

For operations in Section 2.1 that don't have an "after" state, the server MUST use the "before" state poll message. For example, for the "delete" operation with the "op" attribute set to "purge", or the "autoPurge" operation, the server includes the state of the object prior to being purged in the "before" state poll message.

对于第2.1节中没有“之后”状态的操作,服务器必须使用“之前”状态轮询消息。例如,对于“op”属性设置为“purge”的“delete”操作或“autoPurge”操作,服务器在“before”状态轮询消息中包含对象在被清除之前的状态。

For operations in Section 2.1 that don't have a "before" state, the server MUST use the "after" state poll message. For example, for the "create" operation, the server includes the state of the object after creation in the "after" state poll message.

对于第2.1节中没有“before”状态的操作,服务器必须使用“after”状态轮询消息。例如,对于“创建”操作,服务器在“创建后”状态轮询消息中包含对象创建后的状态。

2.3. Who
2.3. 谁

The <changePoll:who> element defines who executed the operation, for audit purposes. It is a free-form value that is meant strictly for audit purposes and not to drive client-side logic. The scheme used for the possible set of <changePoll:who> element values is up to server policy. The server MAY identify the <changePoll:who> element value based on:

<changePoll:who>元素定义了执行该操作的人员,用于审计目的。它是一个自由形式的值,严格用于审计目的,而不是驱动客户端逻辑。用于可能的<changePoll:who>元素值集的方案取决于服务器策略。服务器可以基于以下内容识别<changePoll:who>元素值:

"Identifier": Unique user identifier of the user that executed the operation. An example is "ClientX".

“标识符”:执行操作的用户的唯一用户标识符。例如“ClientX”。

"Name": Name of the user that executed the operation. An example is "John Doe".

“名称”:执行操作的用户的名称。“约翰·多伊”就是一个例子。

"Role": Role of the user that executed operation. An example is "CSR" for a Customer Support Representative or "Batch" for a server batch.

“角色”:执行操作的用户的角色。例如,客户支持代表的“CSR”或服务器批次的“批次”。

2.4. Dates and Times
2.4. 日期和时间

Date and time attribute values MUST be represented in Universal Coordinated Time (UTC) using the Gregorian calendar. The extended date-time form using uppercase "T" and "Z" characters defined in

日期和时间属性值必须使用公历以世界协调时间(UTC)表示。使用中定义的大写“T”和“Z”字符的扩展日期时间窗体

[W3C.REC-xmlschema-2-20041028] MUST be used to represent date-time values, as XML Schema does not support truncated date-time forms or lowercase "T" and "Z" characters.

[W3C.REC-xmlschema-2-20041028]必须用于表示日期时间值,因为XML模式不支持截断的日期时间形式或小写的“T”和“Z”字符。

3. EPP Command Mapping
3. EPP命令映射

A detailed description of the EPP syntax and semantics can be found in the EPP core protocol specification [RFC5730].

EPP语法和语义的详细描述可在EPP核心协议规范[RFC5730]中找到。

3.1. EPP Query Commands
3.1. EPP查询命令

EPP provides three commands to retrieve object information: <check> to determine if an object is known to the server, <info> to retrieve detailed information associated with an object, and <transfer> to retrieve object-transfer status information.

EPP提供了三个命令来检索对象信息:<check>来确定服务器是否知道对象,<info>来检索与对象相关的详细信息,<transfer>来检索对象传输状态信息。

3.1.1. EPP <check> Command
3.1.1. EPP<check>命令

This extension does not add any elements to the EPP <check> command or <check> response described in [RFC5730].

此扩展不向[RFC5730]中描述的EPP<check>命令或<check>响应添加任何元素。

3.1.2. EPP <info> Command
3.1.2. EPP<info>命令

This extension does not add any elements to the EPP <info> command described in [RFC5730].

此扩展不向[RFC5730]中描述的EPP<info>命令添加任何元素。

This extension adds operational detail of EPP object-mapping operations (Section 2.1) to an EPP poll response, as described in [RFC5730]. It is an extension of the EPP object-mapping info response. Any transform operation to an object defined in an EPP object mapping by a client other than the sponsoring client MAY result in extending the <info> response of the object for inserting an EPP poll message with the operation detail. The sponsoring client will then receive the state of the object with operation detail like what, who, when, and why the object was changed. The <changePoll:changeData> element contains the operation detail along with an indication of whether the object reflects the state before or after the operation as defined in Section 2.2. The <changePoll:changeData> element includes the operation detail with the following child elements:

此扩展将EPP对象映射操作的操作细节(第2.1节)添加到EPP轮询响应中,如[RFC5730]中所述。它是EPP对象映射信息响应的扩展。由发起客户端以外的客户端对EPP对象映射中定义的对象进行的任何转换操作都可能导致扩展对象的<info>响应,以插入带有操作细节的EPP轮询消息。然后,发起客户端将接收对象的状态以及操作详细信息,如对象被更改的内容、人员、时间和原因。<changePoll:changeData>元素包含操作细节以及对象是否反映第2.2节中定义的操作之前或之后的状态的指示。<changePoll:changeData>元素包含带有以下子元素的操作详细信息:

<changePoll:operation>: Transform operation executed on the object, as defined in Section 2.1.

<changePoll:operation>:在对象上执行的转换操作,如第2.1节所定义。

<changePoll:date>: Date and time when the operation was executed.

<changePoll:date>:执行操作的日期和时间。

<changePoll:svTRID>: Server transaction identifier of the operation.

<changePoll:svTRID>:操作的服务器事务标识符。

<changePoll:who>: Who executed the operation, as defined in Section 2.3.

<changePoll:who>:谁执行了第2.3节中定义的操作。

<changePoll:caseId>: OPTIONAL case identifier associated with the operation. The required "type" attribute defines the type of case. The OPTIONAL "name" attribute is an identifier, represented in the 7-bit US-ASCII character set defined in [RFC20], that is used to define the name of the "custom" case type. The enumerated list of case types is:

<changePoll:caseId>:与操作关联的可选案例标识符。所需的“type”属性定义案例的类型。可选的“名称”属性是一个标识符,用[RFC20]中定义的7位US-ASCII字符集表示,用于定义“自定义”大小写类型的名称。列举的案例类型列表为:

udrp: A Uniform Domain-Name Dispute-Resolution Policy (UDRP) case.

udrp:统一域名争议解决政策(udrp)案例。

urs: A Uniform Rapid Suspension (URS) case.

urs:均匀快速悬架(urs)箱。

custom: A custom case that is defined using the "name" attribute.

自定义:使用“name”属性定义的自定义案例。

<changePoll:reason>: OPTIONAL reason for executing the operation. If present, this element contains the server-specific text to help explain the reason the operation was executed. This text MUST be represented in the response language previously negotiated with the client; an OPTIONAL "lang" attribute MAY be present to identify the language if the negotiated value is something other than the default value of "en" (English).

<changePoll:reason>:执行操作的可选原因。如果存在,此元素包含特定于服务器的文本,以帮助解释执行操作的原因。该文本必须以之前与客户协商的回复语言表示;如果协商值不是默认值“en”(英语),则可能存在可选的“lang”属性来标识语言。

The following is an example poll <info> response with the <changePoll:changeData> extension for a URS lock transaction on the domain.example domain name, with the "before" state. The "before" state is reflected in the <resData> block:

下面是一个示例轮询<info>响应,扩展名为<changePoll:changeData>,用于域上的URS锁事务。示例域名,状态为“before”。“之前”状态反映在<resData>块中:

   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg lang="en-US">
   S:       Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="201" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:         <msg>Registry initiated update of domain.</msg>
   S:      </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="ok"/>
        
   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg lang="en-US">
   S:       Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="201" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:         <msg>Registry initiated update of domain.</msg>
   S:      </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="ok"/>
        
   S:        <domain:registrant>jd1234</domain:registrant>
   S:        <domain:contact type="admin">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
   S:        <domain:exDate>2014-04-03T22:00:00.0Z</domain:exDate>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="before">
   S:        <changePoll:operation>update</changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>URS Admin</changePoll:who>
   S:        <changePoll:caseId type="urs">urs123</changePoll:caseId>
   S:        <changePoll:reason>URS Lock</changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:   </response>
   S:</epp>
        
   S:        <domain:registrant>jd1234</domain:registrant>
   S:        <domain:contact type="admin">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
   S:        <domain:exDate>2014-04-03T22:00:00.0Z</domain:exDate>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="before">
   S:        <changePoll:operation>update</changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>URS Admin</changePoll:who>
   S:        <changePoll:caseId type="urs">urs123</changePoll:caseId>
   S:        <changePoll:reason>URS Lock</changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:   </response>
   S:</epp>
        

The following is an example poll <info> response with the <changePoll:changeData> extension for a URS lock transaction on the domain.example domain name, with the "after" state. The "after" state is reflected in the <resData> block:

下面是一个示例轮询<info>响应,扩展名为<changePoll:changeData>,用于域上的URS锁事务。示例域名,状态为“after”。“之后”状态反映在<resData>块中:

   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg lang="en-US">
   S:       Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="202" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:         <msg>Registry initiated update of domain.</msg>
   S:      </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
        
   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg lang="en-US">
   S:       Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="202" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:         <msg>Registry initiated update of domain.</msg>
   S:      </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
        
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="serverUpdateProhibited"/>
   S:        <domain:status s="serverDeleteProhibited"/>
   S:        <domain:status s="serverTransferProhibited"/>
   S:        <domain:registrant>jd1234</domain:registrant>
   S:        <domain:contact type="admin">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
   S:        <domain:upID>ClientZ</domain:upID>
   S:        <domain:upDate>2013-10-22T14:25:57.0Z</domain:upDate>
   S:        <domain:exDate>2014-04-03T22:00:00.0Z</domain:exDate>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="after">
   S:        <changePoll:operation>update</changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>URS Admin</changePoll:who>
   S:        <changePoll:caseId type="urs">urs123</changePoll:caseId>
   S:        <changePoll:reason>URS Lock</changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:   </response>
   S:</epp>
        
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="serverUpdateProhibited"/>
   S:        <domain:status s="serverDeleteProhibited"/>
   S:        <domain:status s="serverTransferProhibited"/>
   S:        <domain:registrant>jd1234</domain:registrant>
   S:        <domain:contact type="admin">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
   S:        <domain:upID>ClientZ</domain:upID>
   S:        <domain:upDate>2013-10-22T14:25:57.0Z</domain:upDate>
   S:        <domain:exDate>2014-04-03T22:00:00.0Z</domain:exDate>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="after">
   S:        <changePoll:operation>update</changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>URS Admin</changePoll:who>
   S:        <changePoll:caseId type="urs">urs123</changePoll:caseId>
   S:        <changePoll:reason>URS Lock</changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:   </response>
   S:</epp>
        

The following is an example poll <info> response with the <changePoll:changeData> extension for a custom "sync" operation on the domain.example domain name, with the default "after" state. The "after" state is reflected in the <resData> block:

以下是一个示例轮询<info>响应,扩展名为<changePoll:changeData>,用于域上的自定义“sync”操作。示例域名,默认状态为“after”。“之后”状态反映在<resData>块中:

   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg>Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="201" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:    <msg>Registry initiated Sync of Domain Expiration Date</msg>
        
   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg>Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="201" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:    <msg>Registry initiated Sync of Domain Expiration Date</msg>
        
   S:      </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="ok"/>
   S:        <domain:registrant>jd1234</domain:registrant>
   S:        <domain:contact type="admin">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
   S:        <domain:upID>ClientZ</domain:upID>
   S:        <domain:upDate>2013-10-22T14:25:57.0Z</domain:upDate>
   S:        <domain:exDate>2014-04-03T22:00:00.0Z</domain:exDate>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0">
   S:        <changePoll:operation op="sync">custom
   S:        </changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>CSR</changePoll:who>
   S:        <changePoll:reason lang="en">Customer sync request
   S:        </changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:   </response>
   S:</epp>
        
   S:      </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="ok"/>
   S:        <domain:registrant>jd1234</domain:registrant>
   S:        <domain:contact type="admin">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2012-04-03T22:00:00.0Z</domain:crDate>
   S:        <domain:upID>ClientZ</domain:upID>
   S:        <domain:upDate>2013-10-22T14:25:57.0Z</domain:upDate>
   S:        <domain:exDate>2014-04-03T22:00:00.0Z</domain:exDate>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0">
   S:        <changePoll:operation op="sync">custom
   S:        </changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>CSR</changePoll:who>
   S:        <changePoll:reason lang="en">Customer sync request
   S:        </changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:   </response>
   S:</epp>
        

The following is an example poll <info> response with the <changePoll:changeData> extension for a "delete" operation on the domain.example domain name that is immediately purged, with the "before" state. The "before" state is reflected in the <resData> block:

以下是一个示例轮询<info>响应,扩展名为<changePoll:changeData>,用于域上的“删除”操作。示例域名立即清除,状态为“before”。“之前”状态反映在<resData>块中:

   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:    <result code="1301">
   S:      <msg>Command completed successfully; ack to dequeue</msg>
   S:    </result>
   S:    <msgQ id="200" count="1">
   S:      <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:      <msg>Registry initiated delete of
   S:         domain resulting in immediate purge.</msg>
   S:    </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:clID>ClientX</domain:clID>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="before">
   S:        <changePoll:operation op="purge">delete
   S:        </changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z
   S:        </changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ
   S:        </changePoll:svTRID>
   S:        <changePoll:who>ClientZ
   S:        </changePoll:who>
   S:        <changePoll:reason>Court order
   S:        </changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:  </response>
   S:</epp>
        
   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:    <result code="1301">
   S:      <msg>Command completed successfully; ack to dequeue</msg>
   S:    </result>
   S:    <msgQ id="200" count="1">
   S:      <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:      <msg>Registry initiated delete of
   S:         domain resulting in immediate purge.</msg>
   S:    </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:clID>ClientX</domain:clID>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="before">
   S:        <changePoll:operation op="purge">delete
   S:        </changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z
   S:        </changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ
   S:        </changePoll:svTRID>
   S:        <changePoll:who>ClientZ
   S:        </changePoll:who>
   S:        <changePoll:reason>Court order
   S:        </changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
   S:  </response>
   S:</epp>
        

The following is an example poll <info> response with the <changePoll:changeData> extension for an "autoPurge" operation on the domain.example domain name that previously had the "pendingDelete" status, with the "before" state. The "before" state is reflected in the <resData> block:

下面是一个示例poll<info>响应,扩展名为<changePoll:changeData>,用于域上的“自动敦促”操作。示例域名以前具有“pendingDelete”状态,状态为“before”。“之前”状态反映在<resData>块中:

   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:    <result code="1301">
   S:      <msg>Command completed successfully; ack to dequeue
   S:      </msg>
   S:    </result>
   S:    <msgQ id="200" count="1">
   S:      <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:      <msg>Registry purged domain with pendingDelete status.
   S:      </msg>
   S:    </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="pendingDelete"/>
   S:        <domain:clID>ClientX</domain:clID>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="before">
   S:        <changePoll:operation>autoPurge
   S:        </changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z
   S:        </changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ
   S:        </changePoll:svTRID>
   S:        <changePoll:who>Batch
   S:        </changePoll:who>
   S:        <changePoll:reason>Past pendingDelete 5 day period
   S:        </changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
        
   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:    <result code="1301">
   S:      <msg>Command completed successfully; ack to dequeue
   S:      </msg>
   S:    </result>
   S:    <msgQ id="200" count="1">
   S:      <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:      <msg>Registry purged domain with pendingDelete status.
   S:      </msg>
   S:    </msgQ>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>domain.example</domain:name>
   S:        <domain:roid>EXAMPLE1-REP</domain:roid>
   S:        <domain:status s="pendingDelete"/>
   S:        <domain:clID>ClientX</domain:clID>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
   S:        state="before">
   S:        <changePoll:operation>autoPurge
   S:        </changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z
   S:        </changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ
   S:        </changePoll:svTRID>
   S:        <changePoll:who>Batch
   S:        </changePoll:who>
   S:        <changePoll:reason>Past pendingDelete 5 day period
   S:        </changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
   S:    </trID>
        
   S:  </response>
   S:</epp>
        
   S:  </response>
   S:</epp>
        

The following is an example poll <info> response with the <changePoll:changeData> extension for an "update" operation on the ns1.domain.example host, with the default "after" state. The "after" state is reflected in the <resData> block:

以下是ns1.domain.example主机上“更新”操作的<changePoll:changeData>扩展的轮询<info>响应示例,默认状态为“after”。“之后”状态反映在<resData>块中:

   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg>Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="201" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:         <msg>Registry initiated update of host.</msg>
   S:      </msgQ>
   S:    <resData>
   S:      <host:infData
   S:       xmlns:host="urn:ietf:params:xml:ns:host-1.0">
   S:        <host:name>ns1.domain.example</host:name>
   S:        <host:roid>NS1_EXAMPLE1-REP</host:roid>
   S:        <host:status s="linked"/>
   S:        <host:status s="serverUpdateProhibited"/>
   S:        <host:status s="serverDeleteProhibited"/>
   S:        <host:addr ip="v4">192.0.2.2</host:addr>
   S:        <host:addr ip="v6">2001:db8:0:0:1:0:0:1</host:addr>
   S:        <host:clID>ClientX</host:clID>
   S:        <host:crID>ClientY</host:crID>
   S:        <host:crDate>2012-04-03T22:00:00.0Z</host:crDate>
   S:        <host:upID>ClientY</host:upID>
   S:        <host:upDate>2013-10-22T14:25:57.0Z</host:upDate>
   S:      </host:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0">
   S:        <changePoll:operation>update</changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>ClientZ</changePoll:who>
   S:        <changePoll:reason>Host Lock</changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
        
   S:<?xml version="1.0" encoding="UTF-8"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:   <response>
   S:      <result code="1301">
   S:         <msg>Command completed successfully; ack to dequeue</msg>
   S:      </result>
   S:      <msgQ id="201" count="1">
   S:         <qDate>2013-10-22T14:25:57.0Z</qDate>
   S:         <msg>Registry initiated update of host.</msg>
   S:      </msgQ>
   S:    <resData>
   S:      <host:infData
   S:       xmlns:host="urn:ietf:params:xml:ns:host-1.0">
   S:        <host:name>ns1.domain.example</host:name>
   S:        <host:roid>NS1_EXAMPLE1-REP</host:roid>
   S:        <host:status s="linked"/>
   S:        <host:status s="serverUpdateProhibited"/>
   S:        <host:status s="serverDeleteProhibited"/>
   S:        <host:addr ip="v4">192.0.2.2</host:addr>
   S:        <host:addr ip="v6">2001:db8:0:0:1:0:0:1</host:addr>
   S:        <host:clID>ClientX</host:clID>
   S:        <host:crID>ClientY</host:crID>
   S:        <host:crDate>2012-04-03T22:00:00.0Z</host:crDate>
   S:        <host:upID>ClientY</host:upID>
   S:        <host:upDate>2013-10-22T14:25:57.0Z</host:upDate>
   S:      </host:infData>
   S:    </resData>
   S:    <extension>
   S:      <changePoll:changeData
   S:        xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0">
   S:        <changePoll:operation>update</changePoll:operation>
   S:        <changePoll:date>2013-10-22T14:25:57.0Z</changePoll:date>
   S:        <changePoll:svTRID>12345-XYZ</changePoll:svTRID>
   S:        <changePoll:who>ClientZ</changePoll:who>
   S:        <changePoll:reason>Host Lock</changePoll:reason>
   S:      </changePoll:changeData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ABC-12345</clTRID>
   S:      <svTRID>54321-XYZ</svTRID>
        
   S:    </trID>
   S:   </response>
   S:</epp>
        
   S:    </trID>
   S:   </response>
   S:</epp>
        
3.1.3. EPP <transfer> Command
3.1.3. EPP<transfer>命令

This extension does not add any elements to the EPP <transfer> query command or <transfer> response described in the [RFC5730].

此扩展不向[RFC5730]中描述的EPP<transfer>查询命令或<transfer>响应添加任何元素。

3.2. EPP Transform Commands
3.2. EPP转换命令

EPP provides five commands to transform objects: <create> to create an instance of an object, <delete> to delete an instance of an object, <renew> to extend the validity period of an object, <transfer> to manage object-sponsorship changes, and <update> to change information associated with an object.

EPP提供了五个转换对象的命令:<create>创建对象实例,<delete>删除对象实例,<renew>延长对象有效期,<transfer>管理对象更改,以及<update>更改与对象关联的信息。

3.2.1. EPP <create> Command
3.2.1. EPP<create>命令

This extension does not add any elements to the EPP <create> command or <create> response described in [RFC5730].

此扩展不向[RFC5730]中描述的EPP<create>命令或<create>响应添加任何元素。

3.2.2. EPP <delete> Command
3.2.2. EPP<delete>命令

This extension does not add any elements to the EPP <delete> command or <delete> response described in [RFC5730].

此扩展不向[RFC5730]中描述的EPP<delete>命令或<delete>响应添加任何元素。

3.2.3. EPP <renew> Command
3.2.3. EPP<renew>命令

This extension does not add any elements to the EPP <renew> command or <renew> response described in [RFC5730].

此扩展不向[RFC5730]中描述的EPP<renew>命令或<renew>响应添加任何元素。

3.2.4. EPP <transfer> Command
3.2.4. EPP<transfer>命令

This extension does not add any elements to the EPP <transfer> command or <transfer> response described in [RFC5730].

此扩展不向[RFC5730]中描述的EPP<transfer>命令或<transfer>响应添加任何元素。

3.2.5. EPP <update> Command
3.2.5. EPP<update>命令

This extension does not add any elements to the EPP <update> command or <update> response described in [RFC5730].

此扩展不向[RFC5730]中描述的EPP<update>命令或<update>响应添加任何元素。

4. Formal Syntax
4. 形式语法

One schema is presented here: the EPP Change Poll Extension schema.

这里给出了一个模式:EPPChangePoll扩展模式。

The formal syntax presented here is a complete schema representation of the object mapping suitable for automated validation of EPP XML instances. The BEGIN and END tags are not part of the schema; they are used to note the beginning and ending of the schema for URI registration purposes.

这里给出的形式语法是对象映射的完整模式表示,适合于自动验证EPP XML实例。开始和结束标记不是模式的一部分;它们用于记录模式的开始和结束,以便进行URI注册。

4.1. Change Poll Extension Schema
4.1. 更改轮询扩展架构
   BEGIN
   <?xml version="1.0" encoding="UTF-8"?>
    <schema targetNamespace="urn:ietf:params:xml:ns:changePoll-1.0"
            xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
            xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
            xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
            xmlns="http://www.w3.org/2001/XMLSchema"
            elementFormDefault="qualified">
        
   BEGIN
   <?xml version="1.0" encoding="UTF-8"?>
    <schema targetNamespace="urn:ietf:params:xml:ns:changePoll-1.0"
            xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
            xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
            xmlns:changePoll="urn:ietf:params:xml:ns:changePoll-1.0"
            xmlns="http://www.w3.org/2001/XMLSchema"
            elementFormDefault="qualified">
        
     <!--
     Import common element types.
     -->
     <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"/>
     <import namespace="urn:ietf:params:xml:ns:epp-1.0"/>
        
     <!--
     Import common element types.
     -->
     <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"/>
     <import namespace="urn:ietf:params:xml:ns:epp-1.0"/>
        
      <annotation>
        <documentation>
          Extensible Provisioning Protocol v1.0
          Change Poll Mapping Schema.
        </documentation>
      </annotation>
        
      <annotation>
        <documentation>
          Extensible Provisioning Protocol v1.0
          Change Poll Mapping Schema.
        </documentation>
      </annotation>
        
      <!--
       Change element.
      -->
      <element name="changeData" type="changePoll:changeDataType"/>
        
      <!--
       Change element.
      -->
      <element name="changeData" type="changePoll:changeDataType"/>
        
      <!--
       Attributes associated with the change.
      -->
      <complexType name="changeDataType">
        <sequence>
          <element name="operation" type="changePoll:operationType"/>
          <element name="date" type="dateTime"/>
          <element name="svTRID" type="epp:trIDStringType"/>
        
      <!--
       Attributes associated with the change.
      -->
      <complexType name="changeDataType">
        <sequence>
          <element name="operation" type="changePoll:operationType"/>
          <element name="date" type="dateTime"/>
          <element name="svTRID" type="epp:trIDStringType"/>
        
          <element name="who" type="changePoll:whoType"/>
          <element name="caseId" type="changePoll:caseIdType"
            minOccurs="0"/>
          <element name="reason" type="eppcom:reasonType"
            minOccurs="0"/>
        </sequence>
       <attribute name="state" type="changePoll:stateType"
         default="after"/>
      </complexType>
        
          <element name="who" type="changePoll:whoType"/>
          <element name="caseId" type="changePoll:caseIdType"
            minOccurs="0"/>
          <element name="reason" type="eppcom:reasonType"
            minOccurs="0"/>
        </sequence>
       <attribute name="state" type="changePoll:stateType"
         default="after"/>
      </complexType>
        
      <!--
       Enumerated list of operations, with extensibility via "custom".
      -->
      <simpleType name="operationEnum">
        <restriction base="token">
          <enumeration value="create"/>
          <enumeration value="delete"/>
          <enumeration value="renew"/>
          <enumeration value="transfer"/>
          <enumeration value="update"/>
          <enumeration value="restore"/>
          <enumeration value="autoRenew"/>
          <enumeration value="autoDelete"/>
          <enumeration value="autoPurge"/>
          <enumeration value="custom"/>
        </restriction>
      </simpleType>
        
      <!--
       Enumerated list of operations, with extensibility via "custom".
      -->
      <simpleType name="operationEnum">
        <restriction base="token">
          <enumeration value="create"/>
          <enumeration value="delete"/>
          <enumeration value="renew"/>
          <enumeration value="transfer"/>
          <enumeration value="update"/>
          <enumeration value="restore"/>
          <enumeration value="autoRenew"/>
          <enumeration value="autoDelete"/>
          <enumeration value="autoPurge"/>
          <enumeration value="custom"/>
        </restriction>
      </simpleType>
        
      <!--
       Enumerated state of the object in the poll message.
      -->
      <simpleType name="stateType">
        <restriction base="token">
          <enumeration value="before"/>
          <enumeration value="after"/>
        </restriction>
      </simpleType>
        
      <!--
       Enumerated state of the object in the poll message.
      -->
      <simpleType name="stateType">
        <restriction base="token">
          <enumeration value="before"/>
          <enumeration value="after"/>
        </restriction>
      </simpleType>
        
      <!--
       Transform operation type
      -->
     <complexType name="operationType">
       <simpleContent>
         <extension base="changePoll:operationEnum">
           <attribute name="op" type="token"/>
         </extension>
       </simpleContent>
     </complexType>
        
      <!--
       Transform operation type
      -->
     <complexType name="operationType">
       <simpleContent>
         <extension base="changePoll:operationEnum">
           <attribute name="op" type="token"/>
         </extension>
       </simpleContent>
     </complexType>
        
      <!--
       Case identifier type
      -->
     <complexType name="caseIdType">
       <simpleContent>
         <extension base="token">
           <attribute name="type" type="changePoll:caseTypeEnum"
             use="required"/>
           <attribute name="name" type="token"
             use="optional"/>
         </extension>
       </simpleContent>
     </complexType>
        
      <!--
       Case identifier type
      -->
     <complexType name="caseIdType">
       <simpleContent>
         <extension base="token">
           <attribute name="type" type="changePoll:caseTypeEnum"
             use="required"/>
           <attribute name="name" type="token"
             use="optional"/>
         </extension>
       </simpleContent>
     </complexType>
        
      <!--
       Enumerated list of case identifier types
      -->
      <simpleType name="caseTypeEnum">
        <restriction base="token">
          <enumeration value="udrp"/>
          <enumeration value="urs"/>
          <enumeration value="custom"/>
        </restriction>
      </simpleType>
        
      <!--
       Enumerated list of case identifier types
      -->
      <simpleType name="caseTypeEnum">
        <restriction base="token">
          <enumeration value="udrp"/>
          <enumeration value="urs"/>
          <enumeration value="custom"/>
        </restriction>
      </simpleType>
        
      <!--
       Who type
      -->
     <simpleType name="whoType">
       <restriction base="normalizedString">
         <minLength value="1"/>
         <maxLength value="255"/>
       </restriction>
     </simpleType>
        
      <!--
       Who type
      -->
     <simpleType name="whoType">
       <restriction base="normalizedString">
         <minLength value="1"/>
         <maxLength value="255"/>
       </restriction>
     </simpleType>
        
    <!--
    End of schema.
    -->
    </schema>
   END
        
    <!--
    End of schema.
    -->
    </schema>
   END
        
5. IANA Considerations
5. IANA考虑
5.1. XML Namespace
5.1. 名称空间

This document uses URNs to describe XML namespaces and XML schemas conforming to a registry mechanism described in [RFC3688]. The following URI assignment has been made by IANA:

本文档使用URN来描述符合[RFC3688]中描述的注册表机制的XML名称空间和XML模式。IANA进行了以下URI分配:

Registration for the changePoll namespace:

注册changePoll命名空间:

      URI: urn:ietf:params:xml:ns:changePoll-1.0
        
      URI: urn:ietf:params:xml:ns:changePoll-1.0
        

Registrant Contact: IESG

注册联系人:IESG

XML: None. Namespace URIs do not represent an XML specification.

XML:没有。命名空间URI不表示XML规范。

Registration for the changePoll XML schema:

注册changePoll XML架构:

      URI: urn:ietf:params:xml:ns:changePoll-1.0
        
      URI: urn:ietf:params:xml:ns:changePoll-1.0
        

Registrant Contact: IESG

注册联系人:IESG

XML: See the "Formal Syntax" section of this document.

XML:请参阅本文档的“正式语法”部分。

5.2. EPP Extension Registry
5.2. EPP扩展注册表

The EPP extension described in this document has been registered by the IANA in the Extensions for the "Extensible Provisioning Protocol (EPP)" registry described in [RFC7451]. The details of the registration are as follows:

本文档中描述的EPP扩展已由IANA在[RFC7451]中描述的“可扩展配置协议(EPP)”注册表的扩展中注册。注册详情如下:

Name of Extension: Change Poll Extension for the Extensible Provisioning Protocol (EPP)

扩展名:更改可扩展配置协议(EPP)的轮询扩展名

Document Status: Standards Track

文档状态:标准跟踪

Reference: RFC 8590

参考:RFC 8590

   Registrant Name and Email Address: IESG <iesg@ietf.org>
        
   Registrant Name and Email Address: IESG <iesg@ietf.org>
        

TLDs: Any

TLDs:有吗

IPR Disclosure: None

知识产权披露:无

Status: Active

状态:活动

Notes: None

注:无

6. Security Considerations
6. 安全考虑

The mapping extensions described in this document do not provide any security services beyond those described by EPP [RFC5730] and protocol layers used by EPP. The security considerations described in these other specifications apply to this specification as well.

本文档中描述的映射扩展不提供EPP[RFC5730]和EPP使用的协议层之外的任何安全服务。这些其他规范中描述的安全注意事项也适用于本规范。

7. References
7. 工具书类
7.1. Normative References
7.1. 规范性引用文件

[RFC20] Cerf, V., "ASCII format for network interchange", STD 80, RFC 20, DOI 10.17487/RFC0020, October 1969, <https://www.rfc-editor.org/info/rfc20>.

[RFC20]Cerf,V.,“网络交换的ASCII格式”,STD 80,RFC 20,DOI 10.17487/RFC0020,1969年10月<https://www.rfc-editor.org/info/rfc20>.

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <https://www.rfc-editor.org/info/rfc2119>.

[RFC2119]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,DOI 10.17487/RFC2119,1997年3月<https://www.rfc-editor.org/info/rfc2119>.

[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, DOI 10.17487/RFC3688, January 2004, <https://www.rfc-editor.org/info/rfc3688>.

[RFC3688]Mealling,M.,“IETF XML注册表”,BCP 81,RFC 3688,DOI 10.17487/RFC3688,2004年1月<https://www.rfc-editor.org/info/rfc3688>.

[RFC3915] Hollenbeck, S., "Domain Registry Grace Period Mapping for the Extensible Provisioning Protocol (EPP)", RFC 3915, DOI 10.17487/RFC3915, September 2004, <https://www.rfc-editor.org/info/rfc3915>.

[RFC3915]Hollenbeck,S.,“可扩展资源调配协议(EPP)的域注册表宽限期映射”,RFC 3915,DOI 10.17487/RFC3915,2004年9月<https://www.rfc-editor.org/info/rfc3915>.

[RFC5730] Hollenbeck, S., "Extensible Provisioning Protocol (EPP)", STD 69, RFC 5730, DOI 10.17487/RFC5730, August 2009, <https://www.rfc-editor.org/info/rfc5730>.

[RFC5730]Hollenbeck,S.,“可扩展资源调配协议(EPP)”,STD 69,RFC 5730,DOI 10.17487/RFC5730,2009年8月<https://www.rfc-editor.org/info/rfc5730>.

[RFC5731] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Domain Name Mapping", STD 69, RFC 5731, DOI 10.17487/RFC5731, August 2009, <https://www.rfc-editor.org/info/rfc5731>.

[RFC5731]Hollenbeck,S.,“可扩展资源调配协议(EPP)域名映射”,STD 69,RFC 5731,DOI 10.17487/RFC5731,2009年8月<https://www.rfc-editor.org/info/rfc5731>.

[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, <https://www.rfc-editor.org/info/rfc8174>.

[RFC8174]Leiba,B.,“RFC 2119关键词中大写与小写的歧义”,BCP 14,RFC 8174,DOI 10.17487/RFC8174,2017年5月<https://www.rfc-editor.org/info/rfc8174>.

[W3C.REC-xmlschema-2-20041028] Biron, P. and A. Malhotra, "XML Schema Part 2: Datatypes Second Edition", World Wide Web Consortium Recommendation REC-xmlschema-2-20041028, October 2004, <http://www.w3.org/TR/2004/REC-xmlschema-2-20041028>.

[W3C.REC-xmlschema-2-20041028]Biron,P.和A.Malhotra,“XML模式第2部分:数据类型第二版”,万维网联盟建议REC-xmlschema-2-20041028,2004年10月<http://www.w3.org/TR/2004/REC-xmlschema-2-20041028>.

7.2. Informative References
7.2. 资料性引用

[RFC7451] Hollenbeck, S., "Extension Registry for the Extensible Provisioning Protocol", RFC 7451, DOI 10.17487/RFC7451, February 2015, <https://www.rfc-editor.org/info/rfc7451>.

[RFC7451]Hollenbeck,S.,“可扩展供应协议的扩展注册表”,RFC 7451,DOI 10.17487/RFC7451,2015年2月<https://www.rfc-editor.org/info/rfc7451>.

Acknowledgments

致谢

The authors wish to acknowledge the original concept for this document and the efforts in the initial versions of this document by Trung Tran and Sharon Wodjenski.

作者希望确认本文件的原始概念以及Trung Tran和Sharon Wodjenski在本文件初始版本中所做的努力。

Special suggestions that have been incorporated into this document were provided by Scott Hollenbeck, Michael Holloway, and Patrick Mevzek.

Scott Hollenbeck、Michael Holloway和Patrick Mevzek提供了纳入本文件的特殊建议。

Authors' Addresses

作者地址

James Gould VeriSign, Inc. 12061 Bluemont Way Reston, VA 20190 United States of America

James Gould VeriSign,Inc.美国弗吉尼亚州布鲁蒙特路莱斯顿12061号,邮编:20190

   Email: jgould@verisign.com
   URI:   http://www.verisign.com
        
   Email: jgould@verisign.com
   URI:   http://www.verisign.com
        

Kal Feher Neustar lvl 8/10 Queens Road Melbourne, VIC 3004 Australia

澳大利亚维多利亚州墨尔本皇后大道8/10号Kal Feher Neustar lvl 3004

   Email: ietf@feherfamily.org
   URI:   http://www.neustar.biz
        
   Email: ietf@feherfamily.org
   URI:   http://www.neustar.biz