Internet Engineering Task Force (IETF)                           L. Zhou
Request for Comments: 8544                                         CNNIC
Category: Standards Track                                        N. Kong
ISSN: 2070-1721                                               Consultant
                                                                  J. Wei
                                                                  J. Yao
                                                                   CNNIC
                                                                J. Gould
                                                          VeriSign, Inc.
                                                              April 2019
        
Internet Engineering Task Force (IETF)                           L. Zhou
Request for Comments: 8544                                         CNNIC
Category: Standards Track                                        N. Kong
ISSN: 2070-1721                                               Consultant
                                                                  J. Wei
                                                                  J. Yao
                                                                   CNNIC
                                                                J. Gould
                                                          VeriSign, Inc.
                                                              April 2019
        

Organization Extension for the Extensible Provisioning Protocol (EPP)

可扩展资源调配协议(EPP)的组织扩展

Abstract

摘要

This document describes an extension to Extensible Provisioning Protocol (EPP) object mappings that is designed to support assigning an organization to any existing object (domain, host, contact) as well as any future objects.

本文档描述了可扩展资源调配协议(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/rfc8544.

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

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
   2.  Conventions Used in This Document . . . . . . . . . . . . . .   3
   3.  Object Attributes . . . . . . . . . . . . . . . . . . . . . .   3
     3.1.  Organization Identifier . . . . . . . . . . . . . . . . .   4
   4.  EPP Command Mapping . . . . . . . . . . . . . . . . . . . . .   4
     4.1.  EPP Query Commands  . . . . . . . . . . . . . . . . . . .   4
       4.1.1.  EPP <check> Command . . . . . . . . . . . . . . . . .   4
       4.1.2.  EPP <info> Command  . . . . . . . . . . . . . . . . .   4
       4.1.3.  EPP <transfer> Query Command  . . . . . . . . . . . .   8
     4.2.  EPP Transform Commands  . . . . . . . . . . . . . . . . .   8
       4.2.1.  EPP <create> Command  . . . . . . . . . . . . . . . .   8
       4.2.2.  EPP <delete> Command  . . . . . . . . . . . . . . . .  10
       4.2.3.  EPP <renew> Command . . . . . . . . . . . . . . . . .  10
       4.2.4.  EPP <transfer> Command  . . . . . . . . . . . . . . .  11
       4.2.5.  EPP <update> Command  . . . . . . . . . . . . . . . .  11
   5.  Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . .  15
   6.  Internationalization Considerations . . . . . . . . . . . . .  18
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  18
     7.1.  XML Namespace . . . . . . . . . . . . . . . . . . . . . .  18
     7.2.  EPP Extension Registry  . . . . . . . . . . . . . . . . .  19
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  19
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  19
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .  19
     9.2.  Informative References  . . . . . . . . . . . . . . . . .  21
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  21
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  22
        
   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Conventions Used in This Document . . . . . . . . . . . . . .   3
   3.  Object Attributes . . . . . . . . . . . . . . . . . . . . . .   3
     3.1.  Organization Identifier . . . . . . . . . . . . . . . . .   4
   4.  EPP Command Mapping . . . . . . . . . . . . . . . . . . . . .   4
     4.1.  EPP Query Commands  . . . . . . . . . . . . . . . . . . .   4
       4.1.1.  EPP <check> Command . . . . . . . . . . . . . . . . .   4
       4.1.2.  EPP <info> Command  . . . . . . . . . . . . . . . . .   4
       4.1.3.  EPP <transfer> Query Command  . . . . . . . . . . . .   8
     4.2.  EPP Transform Commands  . . . . . . . . . . . . . . . . .   8
       4.2.1.  EPP <create> Command  . . . . . . . . . . . . . . . .   8
       4.2.2.  EPP <delete> Command  . . . . . . . . . . . . . . . .  10
       4.2.3.  EPP <renew> Command . . . . . . . . . . . . . . . . .  10
       4.2.4.  EPP <transfer> Command  . . . . . . . . . . . . . . .  11
       4.2.5.  EPP <update> Command  . . . . . . . . . . . . . . . .  11
   5.  Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . .  15
   6.  Internationalization Considerations . . . . . . . . . . . . .  18
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  18
     7.1.  XML Namespace . . . . . . . . . . . . . . . . . . . . . .  18
     7.2.  EPP Extension Registry  . . . . . . . . . . . . . . . . .  19
   8.  Security Considerations . . . . . . . . . . . . . . . . . . .  19
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  19
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .  19
     9.2.  Informative References  . . . . . . . . . . . . . . . . .  21
   Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . .  21
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  22
        
1. Introduction
1. 介绍

There are many entities, such as registrars, resellers, DNS service operators, and privacy proxies, involved in the domain registration business. These kinds of entities are supported in the Extensible Provisioning Protocol (EPP) by the "organization" entities in [RFC8543]. This document provides a way to associate any EPP object such as domain names in [RFC5731], hosts in [RFC5732], and contacts in [RFC5733] to "organization" entities in [RFC8543]. The examples provided in this document are used for the domain object for illustration purposes. The host and contact object could be extended in the same way as the domain object.

有许多实体,如注册商、转销商、DNS服务运营商和隐私代理,参与了域注册业务。[RFC8543]中的“组织”实体在可扩展资源调配协议(EPP)中支持这些类型的实体。本文档提供了将[RFC5731]中的域名、[RFC5732]中的主机、[RFC5733]中的联系人等任何EPP对象与[RFC8543]中的“组织”实体关联的方法。为了便于说明,本文中提供的示例用于域对象。主机和联系人对象的扩展方式与域对象相同。

Organization object identifiers, defined in [RFC8543], MUST be known to the server before the organization object can be associated with the EPP object.

服务器必须知道[RFC8543]中定义的组织对象标识符,然后才能将组织对象与EPP对象关联。

This document is specified using XML 1.0 as described in [W3C.REC-xml-20081126] and XML Schema notation as described in [W3C.REC-xmlschema-1-20041028] and [W3C.REC-xmlschema-2-20041028].

本文档使用[W3C.REC-XML-20081126]中所述的XML 1.0以及[W3C.REC-xmlschema-1-20041028]和[W3C.REC-xmlschema-2-20041028]中所述的XML模式表示法指定。

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

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]所述进行解释。

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 specification.

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

XML is case sensitive. Unless stated otherwise, XML specifications and examples provided in this document MUST be interpreted in the character case presented.

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

The XML namespace prefix "orgext" is used for the namespace "urn:ietf:params:xml:ns:epp:orgext-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名称空间前缀“orgext”用于名称空间“urn:ietf:params:XML:ns:epp:orgext-1.0”,但实现不能依赖于它;相反,他们应该使用适当的名称空间感知XML解析器和序列化程序来解释和输出XML文档。

3. Object Attributes
3. 对象属性

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

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

3.1. Organization Identifier
3.1. 识别不同的厂商

The organization identifier provides the ID of an organization. Its corresponding element is <orgext:id>, which refers to the <org:id> element defined in [RFC8543]. All organization objects are identified by a server-unique identifier. A "role" attribute is used to represent the relationship that the organization has to the EPP object. Any given object MUST have at most one associated organization ID for any given role value.

组织标识符提供组织的ID。它对应的元素是<orgext:id>,它是指[RFC8543]中定义的<org:id>元素。所有组织对象都由服务器唯一标识符标识。“角色”属性用于表示组织与EPP对象之间的关系。对于任何给定角色值,任何给定对象最多必须有一个关联的组织ID。

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

A detailed description of the EPP syntax and semantics can be found in the EPP core protocol specification [RFC5730]. The command mappings described here are specifically for assigning organizations to EPP objects.

EPP语法和语义的详细描述可在EPP核心协议规范[RFC5730]中找到。这里描述的命令映射专门用于将组织分配给EPP对象。

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

EPP provides three commands to retrieve EPP object information: <check> to determine if an object can be provisioned within a repository, <info> to retrieve detailed information associated with an object, and <transfer> to retrieve object transfer status information.

EPP提供了三个命令来检索EPP对象信息:<check>来确定是否可以在存储库中配置对象,<info>来检索与对象关联的详细信息,<transfer>来检索对象传输状态信息。

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

This extension does not add any elements to the EPP <check> command or <check> response described in the EPP object mapping.

此扩展不向EPP对象映射中描述的EPP<check>命令或<check>响应添加任何元素。

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

This extension does not add any elements to the EPP <info> command described in the EPP object mapping. However, additional elements are defined for the <info> response in the EPP object mapping.

此扩展不向EPP对象映射中描述的EPP<info>命令添加任何元素。但是,在EPP对象映射中为<info>响应定义了其他元素。

   When an <info> command has been processed successfully, the EPP
   <resData> element MUST contain child elements as described in the EPP
   object extensions.  In addition, the EPP <extension> element SHOULD
   contain a child <orgext:infData> element.  This element is returned
   if the object has data that is associated with this extension and
   that is based on server policy.  This element or its ancestor element
        
   When an <info> command has been processed successfully, the EPP
   <resData> element MUST contain child elements as described in the EPP
   object extensions.  In addition, the EPP <extension> element SHOULD
   contain a child <orgext:infData> element.  This element is returned
   if the object has data that is associated with this extension and
   that is based on server policy.  This element or its ancestor element
        

MUST identify the extension namespace "urn:ietf:params:xml:ns:epp:orgext-1.0". The <orgext:infData> element contains the following child elements:

必须标识扩展命名空间“urn:ietf:params:xml:ns:epp:orgext-1.0”。<orgext:infData>元素包含以下子元素:

o Zero or more <orgext:id> elements are allowed that contain the identifier of the organization, as defined in Section 3.1. The "role" attribute is used to represent the relationship that the organization has to the object. See Section 7.3 of [RFC8543] for a list of values.

o 根据第3.1节的定义,允许零个或多个<orgext:id>元素包含组织标识符。“角色”属性用于表示组织与对象之间的关系。数值列表见[RFC8543]第7.3节。

Example <info> response for an authorized client with multiple organizations:

具有多个组织的授权客户的响应示例:

   S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:   <result code="1000">
   S:      <msg lang="en-US">Command completed successfully</msg>
   S:    </result>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>example.com</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="billing">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:ns>
   S:          <domain:hostObj>ns1.example.com</domain:hostObj>
   S:        </domain:ns>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2015-02-06T04:01:21.0Z</domain:crDate>
   S:        <domain:exDate>2018-02-06T04:01:21.0Z</domain:exDate>
   S:        <domain:authInfo>
   S:          <domain:pw>2fooBAR</domain:pw>
   S:        </domain:authInfo>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <orgext:infData
   S:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   S:        <orgext:id role="reseller">reseller1523</orgext:id>
   S:        <orgext:id role="privacyproxy">proxy2935</orgext:id>
   S:      </orgext:infData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ngcl-IvJjzMZc</clTRID>
   S:      <svTRID>test142AWQONJZ</svTRID>
   S:    </trID>
   S:  </response>
   S:</epp>
        
   S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:   <result code="1000">
   S:      <msg lang="en-US">Command completed successfully</msg>
   S:    </result>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>example.com</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="billing">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:ns>
   S:          <domain:hostObj>ns1.example.com</domain:hostObj>
   S:        </domain:ns>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2015-02-06T04:01:21.0Z</domain:crDate>
   S:        <domain:exDate>2018-02-06T04:01:21.0Z</domain:exDate>
   S:        <domain:authInfo>
   S:          <domain:pw>2fooBAR</domain:pw>
   S:        </domain:authInfo>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <orgext:infData
   S:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   S:        <orgext:id role="reseller">reseller1523</orgext:id>
   S:        <orgext:id role="privacyproxy">proxy2935</orgext:id>
   S:      </orgext:infData>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ngcl-IvJjzMZc</clTRID>
   S:      <svTRID>test142AWQONJZ</svTRID>
   S:    </trID>
   S:  </response>
   S:</epp>
        

Example <info> response for an authorized client with no organization:

无组织授权客户的<info>响应示例:

   S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:   <result code="1000">
   S:      <msg lang="en-US">Command completed successfully</msg>
   S:    </result>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>example.com</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="billing">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:ns>
   S:          <domain:hostObj>ns1.example.com</domain:hostObj>
   S:        </domain:ns>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2015-02-06T04:01:21.0Z</domain:crDate>
   S:        <domain:exDate>2018-02-06T04:01:21.0Z</domain:exDate>
   S:        <domain:authInfo>
   S:          <domain:pw>2fooBAR</domain:pw>
   S:        </domain:authInfo>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <orgext:infData
   S:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0"/>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ngcl-IvJjzMZc</clTRID>
   S:      <svTRID>test142AWQONJZ</svTRID>
   S:    </trID>
   S:  </response>
   S:</epp>
        
   S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   S:  <response>
   S:   <result code="1000">
   S:      <msg lang="en-US">Command completed successfully</msg>
   S:    </result>
   S:    <resData>
   S:      <domain:infData
   S:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   S:        <domain:name>example.com</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="billing">sh8013</domain:contact>
   S:        <domain:contact type="tech">sh8013</domain:contact>
   S:        <domain:ns>
   S:          <domain:hostObj>ns1.example.com</domain:hostObj>
   S:        </domain:ns>
   S:        <domain:clID>ClientX</domain:clID>
   S:        <domain:crID>ClientY</domain:crID>
   S:        <domain:crDate>2015-02-06T04:01:21.0Z</domain:crDate>
   S:        <domain:exDate>2018-02-06T04:01:21.0Z</domain:exDate>
   S:        <domain:authInfo>
   S:          <domain:pw>2fooBAR</domain:pw>
   S:        </domain:authInfo>
   S:      </domain:infData>
   S:    </resData>
   S:    <extension>
   S:      <orgext:infData
   S:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0"/>
   S:    </extension>
   S:    <trID>
   S:      <clTRID>ngcl-IvJjzMZc</clTRID>
   S:      <svTRID>test142AWQONJZ</svTRID>
   S:    </trID>
   S:  </response>
   S:</epp>
        

An EPP error response MUST be returned if an <info> command cannot be processed for any reason.

如果由于任何原因无法处理<info>命令,则必须返回EPP错误响应。

4.1.3. EPP <transfer> Query Command
4.1.3. EPP<transfer>查询命令

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

此扩展不向EPP对象映射中描述的EPP<transfer>查询命令或<transfer>查询响应添加任何元素。

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

EPP provides five commands to transform EPP 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 the object sponsorship changes, and <update> to change information associated with an object.

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

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

This extension defines additional elements for the EPP <create> command described in the EPP object extensions. No additional elements are defined for the EPP <create> response.

此扩展为EPP对象扩展中描述的EPP<create>命令定义其他元素。没有为EPP<create>响应定义其他元素。

The EPP <create> command provides a transform operation that allows a client to create an object. In addition to the EPP command elements described in the EPP object extensions, the command MUST contain an <extension> element, and the <extension> element MUST contain a child <orgext:create> element. This element is used if the client wants to associate data defined in this extension to the object. This element or its ancestor element MUST identify the extension namespace "urn:ietf:params:xml:ns:epp:orgext-1.0". The <orgext:create> element contains the following child elements:

EPP<create>命令提供一个转换操作,允许客户端创建对象。除了EPP对象扩展中描述的EPP命令元素外,命令必须包含<extension>元素,<extension>元素必须包含子<orgext:create>元素。如果客户端希望将此扩展中定义的数据与对象关联,则使用此元素。此元素或其祖先元素必须标识扩展命名空间“urn:ietf:params:xml:ns:epp:orgext-1.0”。<orgext:create>元素包含以下子元素:

o One or more <orgext:id> elements that contain the identifier of the organization, as defined in Section 3.1. The "role" attribute is used to represent the relationship that the organization has to the object. See Section 7.3 of [RFC8543] for a list of values.

o 一个或多个<orgext:id>元素,包含第3.1节中定义的组织标识符。“角色”属性用于表示组织与对象之间的关系。数值列表见[RFC8543]第7.3节。

Example <create> command with only one organization:

只有一个组织的<create>命令示例:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <create>
   C:      <domain:create
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:        <domain:period unit="y">3</domain:period>
   C:        <domain:ns>
   C:          <domain:hostObj>ns1.example.com</domain:hostObj>
   C:        </domain:ns>
   C:        <domain:registrant>jd1234</domain:registrant>
   C:        <domain:contact type="tech">sh8013</domain:contact>
   C:        <domain:contact type="billing">sh8013</domain:contact>
   C:        <domain:contact type="admin">sh8013</domain:contact>
   C:        <domain:authInfo>
   C:          <domain:pw>fooBAR</domain:pw>
   C:        </domain:authInfo>
   C:      </domain:create>
   C:    </create>
   C:    <extension>
   C:      <orgext:create
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:id role="reseller">reseller1523</orgext:id>
   C:      </orgext:create>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <create>
   C:      <domain:create
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:        <domain:period unit="y">3</domain:period>
   C:        <domain:ns>
   C:          <domain:hostObj>ns1.example.com</domain:hostObj>
   C:        </domain:ns>
   C:        <domain:registrant>jd1234</domain:registrant>
   C:        <domain:contact type="tech">sh8013</domain:contact>
   C:        <domain:contact type="billing">sh8013</domain:contact>
   C:        <domain:contact type="admin">sh8013</domain:contact>
   C:        <domain:authInfo>
   C:          <domain:pw>fooBAR</domain:pw>
   C:        </domain:authInfo>
   C:      </domain:create>
   C:    </create>
   C:    <extension>
   C:      <orgext:create
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:id role="reseller">reseller1523</orgext:id>
   C:      </orgext:create>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

Example <create> command with multiple organizations:

具有多个组织的<create>命令示例:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <create>
   C:      <domain:create
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:        <domain:period unit="y">3</domain:period>
   C:        <domain:ns>
   C:          <domain:hostObj>ns1.example.com</domain:hostObj>
   C:        </domain:ns>
   C:        <domain:registrant>jd1234</domain:registrant>
   C:        <domain:contact type="tech">sh8013</domain:contact>
   C:        <domain:contact type="billing">sh8013</domain:contact>
   C:        <domain:contact type="admin">sh8013</domain:contact>
   C:        <domain:authInfo>
   C:          <domain:pw>fooBAR</domain:pw>
   C:        </domain:authInfo>
   C:      </domain:create>
   C:    </create>
   C:    <extension>
   C:      <orgext:create
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:id role="reseller">reseller1523</orgext:id>
   C:        <orgext:id role="privacyproxy">proxy2935</orgext:id>
   C:      </orgext:create>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <create>
   C:      <domain:create
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:        <domain:period unit="y">3</domain:period>
   C:        <domain:ns>
   C:          <domain:hostObj>ns1.example.com</domain:hostObj>
   C:        </domain:ns>
   C:        <domain:registrant>jd1234</domain:registrant>
   C:        <domain:contact type="tech">sh8013</domain:contact>
   C:        <domain:contact type="billing">sh8013</domain:contact>
   C:        <domain:contact type="admin">sh8013</domain:contact>
   C:        <domain:authInfo>
   C:          <domain:pw>fooBAR</domain:pw>
   C:        </domain:authInfo>
   C:      </domain:create>
   C:    </create>
   C:    <extension>
   C:      <orgext:create
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:id role="reseller">reseller1523</orgext:id>
   C:        <orgext:id role="privacyproxy">proxy2935</orgext:id>
   C:      </orgext:create>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

When a <create> command has been processed successfully, the EPP response is as described in the EPP object extension.

成功处理<create>命令后,EPP响应如EPP对象扩展中所述。

An EPP error response MUST be returned if a <create> command cannot be processed for any reason.

如果由于任何原因无法处理<create>命令,则必须返回EPP错误响应。

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

This extension does not add any elements to the EPP <delete> command or <delete> response described in the EPP object mapping.

此扩展不向EPP对象映射中描述的EPP<delete>命令或<delete>响应添加任何元素。

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

This extension does not add any elements to the EPP <renew> command or <renew> response described in the EPP object mapping.

此扩展不向EPP对象映射中描述的EPP<renew>命令或<renew>响应添加任何元素。

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

This extension does not add any elements to the EPP <transfer> command or <transfer> response described in the EPP object mapping, but after a successful transfer of an object with an assigned organization, the handling of the assigned organization is dependent on the organization roles and server policy.

此扩展不会向EPP对象映射中描述的EPP<transfer>命令或<transfer>响应中添加任何元素,但在成功地将对象转移到指定的组织后,对指定组织的处理取决于组织角色和服务器策略。

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

This extension defines additional elements for the EPP <update> command described in the EPP domain mapping [RFC5731], host mapping [RFC5732], and contact mapping [RFC5733]. No additional elements are defined for the EPP <update> response.

此扩展为EPP域映射[RFC5731]、主机映射[RFC5732]和联系人映射[RFC5733]中描述的EPP<update>命令定义了其他元素。没有为EPP<update>响应定义其他元素。

The EPP <update> command provides a transform operation that allows a client to modify the attributes of an object. In addition to the EPP <update> command elements, the command MUST contain an <extension> element, and the <extension> element MUST contain a child <orgext:update> element. This element is used if the client wants to update the object with data defined in this extension. This element or its ancestor element MUST identify the extension namespace "urn:ietf:params:xml:ns:epp:orgext-1.0". The <orgext:update> element contains the following child elements:

EPP<update>命令提供了一个转换操作,允许客户端修改对象的属性。除了EPP<update>命令元素外,命令必须包含<extension>元素,并且<extension>元素必须包含子<orgext:update>元素。如果客户端希望使用此扩展中定义的数据更新对象,则使用此元素。此元素或其祖先元素必须标识扩展命名空间“urn:ietf:params:xml:ns:epp:orgext-1.0”。<orgext:update>元素包含以下子元素:

o An OPTIONAL <orgext:add> element that contains one or more <orgext:id> elements, as defined in Section 3.1, that add nonexistent organization roles to the object. The <orgext:id> element MUST have a non-empty organization identifier value. The server SHOULD validate that the <orgext:id> element role does not exist.

o 一个可选的<orgext:add>元素,包含一个或多个<orgext:id>元素,如第3.1节所定义,用于向对象添加不存在的组织角色。元素必须具有非空的组织标识符值。服务器应验证<orgext:id>元素角色是否不存在。

o An OPTIONAL <orgext:rem> element that contains one or more <orgext:id> elements, as defined in Section 3.1, that remove organization roles from the object. The <orgext:id> element MAY have an empty organization identifier value. The server SHOULD validate the existence of the <orgext:id> element role and the organization identifier if provided.

o 一个可选的<orgext:rem>元素,包含一个或多个<orgext:id>元素,如第3.1节所定义,用于从对象中删除组织角色。元素的组织标识符值可能为空。服务器应验证<orgext:id>元素角色和组织标识符(如果提供)的存在。

o An OPTIONAL <orgext:chg> element that contains one or more <orgext:id> elements, as defined in Section 3.1, that change organization role identifiers for the object. The existing organization identifier value will be replaced for the defined role. The server SHOULD validate the existence of the <orgext:id> element role.

o 一个可选的<orgext:chg>元素,包含一个或多个<orgext:id>元素,如第3.1节中所定义,用于更改对象的组织角色标识符。将替换已定义角色的现有组织标识符值。服务器应验证<orgext:id>元素角色的存在。

At least one <orgext:add>, <orgext:rem>, or <orgext:chg> element MUST be provided.

必须至少提供一个<orgext:add>、<orgext:rem>或<orgext:chg>元素。

Example <update> command, adding a reseller:

示例<update>命令,添加经销商:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:add>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:        </orgext:add>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:add>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:        </orgext:add>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

Example <update> command, adding multiple organizations:

示例<update>命令,添加多个组织:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:add>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:          <orgext:id role="privacyproxy">proxy2935</orgext:id>
   C:        </orgext:add>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:add>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:          <orgext:id role="privacyproxy">proxy2935</orgext:id>
   C:        </orgext:add>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

Example <update> command, removing a reseller:

示例<update>命令,删除经销商:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:rem>
   C:          <orgext:id role="reseller"/>
   C:        </orgext:rem>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:rem>
   C:          <orgext:id role="reseller"/>
   C:        </orgext:rem>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

Example <update> command, removing multiple organizations:

示例<update>命令,删除多个组织:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:rem>
   C:          <orgext:id role="reseller"/>
   C:          <orgext:id role="privacyproxy"/>
   C:        </orgext:rem>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:rem>
   C:          <orgext:id role="reseller"/>
   C:          <orgext:id role="privacyproxy"/>
   C:        </orgext:rem>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

Example <update> command, updating reseller identifier:

示例<update>命令,更新经销商标识符:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:chg>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:        </orgext:chg>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:chg>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:        </orgext:chg>
   C:      </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

Example <update> command, updating multiple organization identifiers:

示例<update>命令,更新多个组织标识符:

   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:chg>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:          <orgext:id role="privacyproxy">proxy2935</orgext:id>
   C:        </orgext:chg>
   C:     </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        
   C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
   C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
   C:  <command>
   C:    <update>
   C:      <domain:update
   C:        xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
   C:        <domain:name>example.com</domain:name>
   C:      </domain:update>
   C:    </update>
   C:    <extension>
   C:      <orgext:update
   C:        xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0">
   C:        <orgext:chg>
   C:          <orgext:id role="reseller">reseller1523</orgext:id>
   C:          <orgext:id role="privacyproxy">proxy2935</orgext:id>
   C:        </orgext:chg>
   C:     </orgext:update>
   C:    </extension>
   C:    <clTRID>ABC-12345</clTRID>
   C:  </command>
   C:</epp>
        

When an extended <update> command has been processed successfully, the EPP response is as described in the EPP object extension.

成功处理扩展的<update>命令后,EPP响应如EPP对象扩展中所述。

An EPP error response MUST be returned if an <update> command cannot be processed for any reason. An attempt to add one organization ID or multiple organization IDs with a particular role value when at least one of them already exists does not change the object at all. A server SHOULD notify clients that object relationships exist by sending a 2305 error response code. An attempt to remove an organization ID or multiple organization IDs with a particular role value when at least one of them does not exist does not change the object at all. A server SHOULD notify clients that object relationships do not exist by sending a 2305 error response code. An attempt to change an organization ID or multiple organization IDs with a particular role value when at least one of them does not exist does not change the object at all. A server SHOULD notify clients that object relationships do not exist by sending a 2305 error response code. Response format with error value elements is defined in Section 2.6 of [RFC5730].

如果由于任何原因无法处理<update>命令,则必须返回EPP错误响应。当至少一个组织ID已经存在时,尝试添加一个或多个具有特定角色值的组织ID不会改变对象。服务器应通过发送2305错误响应代码通知客户端存在对象关系。当至少一个组织ID不存在时,尝试删除一个或多个具有特定角色值的组织ID不会改变对象。服务器应通过发送2305错误响应代码通知客户端对象关系不存在。当至少一个组织ID不存在时,尝试更改具有特定角色值的一个或多个组织ID根本不会更改对象。服务器应通过发送2305错误响应代码通知客户端对象关系不存在。[RFC5730]第2.6节定义了带有错误值元素的响应格式。

5. Formal Syntax
5. 形式语法

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

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

   BEGIN
   <?xml version="1.0" encoding="UTF-8"?>
        
   BEGIN
   <?xml version="1.0" encoding="UTF-8"?>
        
   <schema
     targetNamespace="urn:ietf:params:xml:ns:epp:orgext-1.0"
     xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0"
     xmlns="http://www.w3.org/2001/XMLSchema"
     elementFormDefault="qualified"
   >
        
   <schema
     targetNamespace="urn:ietf:params:xml:ns:epp:orgext-1.0"
     xmlns:orgext="urn:ietf:params:xml:ns:epp:orgext-1.0"
     xmlns="http://www.w3.org/2001/XMLSchema"
     elementFormDefault="qualified"
   >
        
     <annotation>
       <documentation>
         Extensible Provisioning Protocol v1.0
         Organization Extension Schema v1.0
       </documentation>
     </annotation>
        
     <annotation>
       <documentation>
         Extensible Provisioning Protocol v1.0
         Organization Extension Schema v1.0
       </documentation>
     </annotation>
        
     <!-- Child elements found in EPP commands -->
     <element
       name="create"
       type="orgext:createType"/>
     <element
       name="update"
       type="orgext:updateType"/>
        
     <!-- Child elements found in EPP commands -->
     <element
       name="create"
       type="orgext:createType"/>
     <element
       name="update"
       type="orgext:updateType"/>
        
     <!--
       Organization identifier with required role
     -->
     <complexType name="orgIdType">
       <simpleContent>
         <extension base="token">
           <attribute
             name="role"
             type="token"
             use="required"/>
         </extension>
       </simpleContent>
     </complexType>
        
     <!--
       Organization identifier with required role
     -->
     <complexType name="orgIdType">
       <simpleContent>
         <extension base="token">
           <attribute
             name="role"
             type="token"
             use="required"/>
         </extension>
       </simpleContent>
     </complexType>
        
     <!--
       Child elements of the <orgext:create> command.
       All elements must be present at time of creation.
     -->
     <complexType name="createType">
       <sequence>
         <!-- Agent identifier or the organization,
           e.g., registrar, reseller, privacy proxy, etc. -->
         <element
           name="id"
           type="orgext:orgIdType"
           maxOccurs="unbounded"/>
       </sequence>
     </complexType>
        
     <!--
       Child elements of the <orgext:create> command.
       All elements must be present at time of creation.
     -->
     <complexType name="createType">
       <sequence>
         <!-- Agent identifier or the organization,
           e.g., registrar, reseller, privacy proxy, etc. -->
         <element
           name="id"
           type="orgext:orgIdType"
           maxOccurs="unbounded"/>
       </sequence>
     </complexType>
        
     <!--
       Child elements of <orgext:update> command
     -->
     <complexType name="updateType">
       <sequence>
         <element
           name="add"
           type="orgext:addRemChgType"
           minOccurs="0"
         />
        
     <!--
       Child elements of <orgext:update> command
     -->
     <complexType name="updateType">
       <sequence>
         <element
           name="add"
           type="orgext:addRemChgType"
           minOccurs="0"
         />
        
         <element
           name="rem"
           type="orgext:addRemChgType"
           minOccurs="0"
         />
         <element
           name="chg"
           type="orgext:addRemChgType"
           minOccurs="0"
         />
       </sequence>
     </complexType>
        
         <element
           name="rem"
           type="orgext:addRemChgType"
           minOccurs="0"
         />
         <element
           name="chg"
           type="orgext:addRemChgType"
           minOccurs="0"
         />
       </sequence>
     </complexType>
        
     <complexType name="addRemChgType">
       <sequence>
         <!-- Agent identifier of the organization,
           e.g., registrar, reseller, privacy proxy, etc. -->
         <element
           name="id"
           type="orgext:orgIdType"
           maxOccurs="unbounded"/>
       </sequence>
     </complexType>
        
     <complexType name="addRemChgType">
       <sequence>
         <!-- Agent identifier of the organization,
           e.g., registrar, reseller, privacy proxy, etc. -->
         <element
           name="id"
           type="orgext:orgIdType"
           maxOccurs="unbounded"/>
       </sequence>
     </complexType>
        
     <!-- Child response element -->
     <element
       name="infData"
       type="orgext:infDataType"/>
        
     <!-- Child response element -->
     <element
       name="infData"
       type="orgext:infDataType"/>
        
     <!-- <orgext:infData> response elements -->
     <complexType name="infDataType">
       <sequence>
         <!-- Agent identifier the organization,
           e.g., registrar, reseller, privacy proxy, etc. -->
         <element
           name="id"
           type="orgext:orgIdType"
           minOccurs="0"
           maxOccurs="unbounded"/>
       </sequence>
     </complexType>
        
     <!-- <orgext:infData> response elements -->
     <complexType name="infDataType">
       <sequence>
         <!-- Agent identifier the organization,
           e.g., registrar, reseller, privacy proxy, etc. -->
         <element
           name="id"
           type="orgext:orgIdType"
           minOccurs="0"
           maxOccurs="unbounded"/>
       </sequence>
     </complexType>
        
     <!-- End of schema -->
   </schema>
   END
        
     <!-- End of schema -->
   </schema>
   END
        
6. Internationalization Considerations
6. 国际化考虑

EPP is represented in XML, which provides native support for encoding information using the Unicode character set [UNICODE] and its more compact representations, including UTF-8. Conformant XML processors recognize both UTF-8 [RFC3629] and UTF-16 [RFC2781]. Though XML includes provisions to identify and use other character encodings through use of an "encoding" attribute in an <?xml?> declaration, use of UTF-8 is RECOMMENDED.

EPP用XML表示,它为使用Unicode字符集[Unicode]及其更紧凑的表示(包括UTF-8)编码信息提供了本机支持。一致性XML处理器同时识别UTF-8[RFC3629]和UTF-16[RFC2781]。尽管XML包含通过在<?XML?>声明中使用“encoding”属性来识别和使用其他字符编码的规定,但建议使用UTF-8。

As an extension of the EPP object mapping, the elements and element content described in this document MUST inherit the internationalization conventions used to represent higher-layer domain and core protocol structures present in an XML instance that includes this extension.

作为EPP对象映射的扩展,本文档中描述的元素和元素内容必须继承用于表示包含此扩展的XML实例中存在的更高层域和核心协议结构的国际化约定。

7. IANA Considerations
7. IANA考虑
7.1. XML Namespace
7.1. 名称空间

This document uses URNs to describe XML namespaces and XML schemas conforming to a registry mechanism described in [RFC3688]. IANA has assigned the following URI.

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

The organization extension namespace:

组织扩展命名空间:

      URI: urn:ietf:params:xml:ns:epp:orgext-1.0
        
      URI: urn:ietf:params:xml:ns:epp:orgext-1.0
        

Registrant Contact: IESG

注册联系人:IESG

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

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

The organization XML schema:

组织XML架构:

      URI: urn:ietf:params:xml:schema:epp:orgext-1.0
        
      URI: urn:ietf:params:xml:schema:epp:orgext-1.0
        

Registrant Contact: IESG

注册联系人:IESG

XML: See the "Formal Syntax" section of RFC 8544 (this document).

XML:请参阅RFC8544(本文档)的“形式语法”部分。

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

The EPP extension described in this document has been registered by 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: Organization Extension for the Extensible Provisioning Protocol (EPP)

扩展名:可扩展资源调配协议(EPP)的组织扩展

Document Status: Standards Track

文档状态:标准跟踪

Reference: RFC 8544

参考:RFC 8544

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

注册人姓名和电子邮件地址:IESG,iesg@ietf.org

TLDs: Any

TLDs:有吗

IPR Disclosure: None

知识产权披露:无

Status: Active

状态:活动

Notes: None

注:无

8. Security Considerations
8. 安全考虑

The object mapping extension described in this document does not provide any other security services or introduce any additional considerations beyond those described by [RFC5730], [RFC5731], [RFC5732], and [RFC5733] or those caused by the protocol layers used by EPP.

除[RFC5730]、[RFC5731]、[RFC5732]和[RFC5733]所述的安全服务或EPP使用的协议层所引起的安全服务外,本文档中描述的对象映射扩展不提供任何其他安全服务或引入任何其他注意事项。

9. References
9. 工具书类
9.1. Normative References
9.1. 规范性引用文件

[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>.

[RFC3629] Yergeau, F., "UTF-8, a transformation format of ISO 10646", STD 63, RFC 3629, DOI 10.17487/RFC3629, November 2003, <https://www.rfc-editor.org/info/rfc3629>.

[RFC3629]Yergeau,F.,“UTF-8,ISO 10646的转换格式”,STD 63,RFC 3629,DOI 10.17487/RFC3629,2003年11月<https://www.rfc-editor.org/info/rfc3629>.

[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>.

[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>.

[RFC5732] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Host Mapping", STD 69, RFC 5732, DOI 10.17487/RFC5732, August 2009, <https://www.rfc-editor.org/info/rfc5732>.

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

[RFC5733] Hollenbeck, S., "Extensible Provisioning Protocol (EPP) Contact Mapping", STD 69, RFC 5733, DOI 10.17487/RFC5733, August 2009, <https://www.rfc-editor.org/info/rfc5733>.

[RFC5733]Hollenbeck,S.,“可扩展供应协议(EPP)联系人映射”,STD 69,RFC 5733,DOI 10.17487/RFC5733,2009年8月<https://www.rfc-editor.org/info/rfc5733>.

[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>.

[UNICODE] The Unicode Consortium, "The Unicode Standard", <http://www.unicode.org/versions/latest/>.

[UNICODE]UNICODE联盟,“UNICODE标准”<http://www.unicode.org/versions/latest/>.

[W3C.REC-xml-20081126] Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E., and F. Yergeau, "Extensible Markup Language (XML) 1.0 (Fifth Edition)", World Wide Web Consortium Recommendation REC-xml-20081126, November 2008, <https://www.w3.org/TR/xml/>.

[W3C.REC-xml-20081126]Bray,T.,Paoli,J.,Sperberg McQueen,C.,Maler,E.,和F.Yergeau,“可扩展标记语言(xml)1.0(第五版)”,万维网联盟建议REC-xml-20081126,2008年11月<https://www.w3.org/TR/xml/>.

[W3C.REC-xmlschema-1-20041028] Thompson, H., Beech, D., Maloney, M., and N. Mendelsohn, "XML Schema Part 1: Structures Second Edition", World Wide Web Consortium Recommendation REC-xmlschema-1-20041028, October 2004, <http://www.w3.org/TR/2004/REC-xmlschema-1-20041028>.

[W3C.REC-xmlschema-1-20041028]Thompson,H.,Beech,D.,Maloney,M.,和N.Mendelsohn,“XML模式第1部分:结构第二版”,万维网联盟建议REC-xmlschema-1-20041028,2004年10月<http://www.w3.org/TR/2004/REC-xmlschema-1-20041028>.

[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>.

9.2. Informative References
9.2. 资料性引用

[RFC2781] Hoffman, P. and F. Yergeau, "UTF-16, an encoding of ISO 10646", RFC 2781, DOI 10.17487/RFC2781, February 2000, <https://www.rfc-editor.org/info/rfc2781>.

[RFC2781]Hoffman,P.和F.Yergeau,“UTF-16,ISO 10646编码”,RFC 2781,DOI 10.17487/RFC2781,2000年2月<https://www.rfc-editor.org/info/rfc2781>.

[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>.

[RFC8543] Zhou, L., Kong, N., Yao, J., Gould, J., and G. Zhou, "Extensible Provisioning Protocol (EPP) Organization Mapping", RFC 8543, DOI 10.17487/RFC8543, March 2019, <https://www.rfc-editor.org/info/rfc8543>.

[RFC8543]Zhou,L.,Kong,N.,Yao,J.,Gould,J.,和G.Zhou,“可扩展资源调配协议(EPP)组织映射”,RFC 8543,DOI 10.17487/RFC85432019年3月<https://www.rfc-editor.org/info/rfc8543>.

Acknowledgments

致谢

The authors would like to thank Rik Ribbers, Marc Groeneweg, Patrick Mevzek, Antoin Verschuren, and Scott Hollenbeck for their careful review and valuable comments.

作者要感谢Rik Ribbers、Marc Groeneweg、Patrick Mevzek、Antoin Verschuren和Scott Hollenbeck的仔细审查和宝贵评论。

Authors' Addresses

作者地址

Linlin Zhou CNNIC 4 South 4th Street, Zhongguancun, Haidian District Beijing, Beijing 100190 China

中国北京市海淀区中关村南四街4号林林洲CNNIC 100190

   Email: zhoulinlin@cnnic.cn
        
   Email: zhoulinlin@cnnic.cn
        

Ning Kong Consultant

宁港顾问

   Email: ietfing@gmail.com
        
   Email: ietfing@gmail.com
        

Junkai Wei CNNIC 4 South 4th Street, Zhongguancun, Haidian District Beijing, Beijing 100190 China

中国北京市海淀区中关村南四街4号军凯卫视CNNIC 100190

   Email: weijunkai@cnnic.cn
        
   Email: weijunkai@cnnic.cn
        

Jiankang Yao CNNIC 4 South 4th Street, Zhongguancun, Haidian District Beijing, Beijing 100190 China

中国北京市海淀区中关村南四街4号建康姚CNNIC 100190

   Email: yaojk@cnnic.cn
        
   Email: yaojk@cnnic.cn
        

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