123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446 |
- <?xml version="1.0" encoding="UTF-8"?>
- <schema targetNamespace="urn:ietf:params:xml:ns:epp-1.0"
- xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
- xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-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"/>
- <annotation>
- <documentation>
- Extensible Provisioning Protocol v1.0 schema.
- </documentation>
- </annotation>
- <!--
- Every EPP XML instance must begin with this element.
- -->
- <element name="epp" type="epp:eppType"/>
- <!--
- An EPP XML instance must contain a greeting, hello, command,
- response, or extension.
- -->
- <complexType name="eppType">
- <choice>
- <element name="greeting" type="epp:greetingType"/>
- <element name="hello"/>
- <element name="command" type="epp:commandType"/>
- <element name="response" type="epp:responseType"/>
- <element name="extension" type="epp:extAnyType"/>
- </choice>
- </complexType>
- <!--
- A greeting is sent by a server in response to a client connection
- or <hello>.
- -->
- <complexType name="greetingType">
- <sequence>
- <element name="svID" type="epp:sIDType"/>
- <element name="svDate" type="dateTime"/>
- <element name="svcMenu" type="epp:svcMenuType"/>
- <element name="dcp" type="epp:dcpType"/>
- </sequence>
- </complexType>
- <!--
- Server IDs are strings with minimum and maximum length restrictions.
- -->
- <simpleType name="sIDType">
- <restriction base="normalizedString">
- <minLength value="3"/>
- <maxLength value="64"/>
- </restriction>
- </simpleType>
- <!--
- A server greeting identifies available object services.
- -->
- <complexType name="svcMenuType">
- <sequence>
- <element name="version" type="epp:versionType"
- maxOccurs="unbounded"/>
- <element name="lang" type="language"
- maxOccurs="unbounded"/>
- <element name="objURI" type="anyURI"
- maxOccurs="unbounded"/>
- <element name="svcExtension" type="epp:extURIType"
- minOccurs="0"/>
- </sequence>
- </complexType>
- <!--
- Data Collection Policy types.
- -->
- <complexType name="dcpType">
- <sequence>
- <element name="access" type="epp:dcpAccessType"/>
- <element name="statement" type="epp:dcpStatementType"
- maxOccurs="unbounded"/>
- <element name="expiry" type="epp:dcpExpiryType"
- minOccurs="0"/>
- </sequence>
- </complexType>
- <complexType name="dcpAccessType">
- <choice>
- <element name="all"/>
- <element name="none"/>
- <element name="null"/>
- <element name="other"/>
- <element name="personal"/>
- <element name="personalAndOther"/>
- </choice>
- </complexType>
- <complexType name="dcpStatementType">
- <sequence>
- <element name="purpose" type="epp:dcpPurposeType"/>
- <element name="recipient" type="epp:dcpRecipientType"/>
- <element name="retention" type="epp:dcpRetentionType"/>
- </sequence>
- </complexType>
- <complexType name="dcpPurposeType">
- <sequence>
- <element name="admin"
- minOccurs="0"/>
- <element name="contact"
- minOccurs="0"/>
- <element name="other"
- minOccurs="0"/>
- <element name="prov"
- minOccurs="0"/>
- </sequence>
- </complexType>
- <complexType name="dcpRecipientType">
- <sequence>
- <element name="other"
- minOccurs="0"/>
- <element name="ours" type="epp:dcpOursType"
- minOccurs="0" maxOccurs="unbounded"/>
- <element name="public"
- minOccurs="0"/>
- <element name="same"
- minOccurs="0"/>
- <element name="unrelated"
- minOccurs="0"/>
- </sequence>
- </complexType>
- <complexType name="dcpOursType">
- <sequence>
- <element name="recDesc" type="epp:dcpRecDescType"
- minOccurs="0"/>
- </sequence>
- </complexType>
- <simpleType name="dcpRecDescType">
- <restriction base="token">
- <minLength value="1"/>
- <maxLength value="255"/>
- </restriction>
- </simpleType>
- <complexType name="dcpRetentionType">
- <choice>
- <element name="business"/>
- <element name="indefinite"/>
- <element name="legal"/>
- <element name="none"/>
- <element name="stated"/>
- </choice>
- </complexType>
- <complexType name="dcpExpiryType">
- <choice>
- <element name="absolute" type="dateTime"/>
- <element name="relative" type="duration"/>
- </choice>
- </complexType>
- <!--
- Extension framework types.
- -->
- <complexType name="extAnyType">
- <sequence>
- <any namespace="##other"
- maxOccurs="unbounded"/>
- </sequence>
- </complexType>
- <complexType name="extURIType">
- <sequence>
- <element name="extURI" type="anyURI"
- maxOccurs="unbounded"/>
- </sequence>
- </complexType>
- <!--
- An EPP version number is a dotted pair of decimal numbers.
- -->
- <simpleType name="versionType">
- <restriction base="token">
- <pattern value="[1-9]+\.[0-9]+"/>
- <enumeration value="1.0"/>
- </restriction>
- </simpleType>
- <!--
- Command types.
- -->
- <complexType name="commandType">
- <sequence>
- <choice>
- <element name="check" type="epp:readWriteType"/>
- <element name="create" type="epp:readWriteType"/>
- <element name="delete" type="epp:readWriteType"/>
- <element name="info" type="epp:readWriteType"/>
- <element name="login" type="epp:loginType"/>
- <element name="logout"/>
- <element name="poll" type="epp:pollType"/>
- <element name="renew" type="epp:readWriteType"/>
- <element name="transfer" type="epp:transferType"/>
- <element name="update" type="epp:readWriteType"/>
- </choice>
- <element name="extension" type="epp:extAnyType"
- minOccurs="0"/>
- <element name="clTRID" type="epp:trIDStringType"
- minOccurs="0"/>
- </sequence>
- </complexType>
- <!--
- The <login> command.
- -->
- <complexType name="loginType">
- <sequence>
- <element name="clID" type="eppcom:clIDType"/>
- <element name="pw" type="epp:pwType"/>
- <element name="newPW" type="epp:pwType"
- minOccurs="0"/>
- <element name="options" type="epp:credsOptionsType"/>
- <element name="svcs" type="epp:loginSvcType"/>
- </sequence>
- </complexType>
- <complexType name="credsOptionsType">
- <sequence>
- <element name="version" type="epp:versionType"/>
- <element name="lang" type="language"/>
- </sequence>
- </complexType>
- <simpleType name="pwType">
- <restriction base="token">
- <minLength value="6"/>
- <maxLength value="16"/>
- </restriction>
- </simpleType>
- <complexType name="loginSvcType">
- <sequence>
- <element name="objURI" type="anyURI"
- maxOccurs="unbounded"/>
- <element name="svcExtension" type="epp:extURIType"
- minOccurs="0"/>
- </sequence>
- </complexType>
- <!--
- The <poll> command.
- -->
- <complexType name="pollType">
- <attribute name="op" type="epp:pollOpType"
- use="required"/>
- <attribute name="msgID" type="token"/>
- </complexType>
- <simpleType name="pollOpType">
- <restriction base="token">
- <enumeration value="ack"/>
- <enumeration value="req"/>
- </restriction>
- </simpleType>
- <!--
- The <transfer> command. This is object-specific, and uses attributes
- to identify the requested operation.
- -->
- <complexType name="transferType">
- <sequence>
- <any namespace="##other"/>
- </sequence>
- <attribute name="op" type="epp:transferOpType"
- use="required"/>
- </complexType>
- <simpleType name="transferOpType">
- <restriction base="token">
- <enumeration value="approve"/>
- <enumeration value="cancel"/>
- <enumeration value="query"/>
- <enumeration value="reject"/>
- <enumeration value="request"/>
- </restriction>
- </simpleType>
- <!--
- All other object-centric commands. EPP doesn't specify the syntax or
- semantics of object-centric command elements. The elements MUST be
- described in detail in another schema specific to the object.
- -->
- <complexType name="readWriteType">
- <sequence>
- <any namespace="##other"/>
- </sequence>
- </complexType>
- <complexType name="trIDType">
- <sequence>
- <element name="clTRID" type="epp:trIDStringType"
- minOccurs="0"/>
- <element name="svTRID" type="epp:trIDStringType"/>
- </sequence>
- </complexType>
- <simpleType name="trIDStringType">
- <restriction base="token">
- <minLength value="3"/>
- <maxLength value="64"/>
- </restriction>
- </simpleType>
- <!--
- Response types.
- -->
- <complexType name="responseType">
- <sequence>
- <element name="result" type="epp:resultType"
- maxOccurs="unbounded"/>
- <element name="msgQ" type="epp:msgQType"
- minOccurs="0"/>
- <element name="resData" type="epp:extAnyType"
- minOccurs="0"/>
- <element name="extension" type="epp:extAnyType"
- minOccurs="0"/>
- <element name="trID" type="epp:trIDType"/>
- </sequence>
- </complexType>
- <complexType name="resultType">
- <sequence>
- <element name="msg" type="epp:msgType"/>
- <choice minOccurs="0" maxOccurs="unbounded">
- <element name="value" type="epp:errValueType"/>
- <element name="extValue" type="epp:extErrValueType"/>
- </choice>
- </sequence>
- <attribute name="code" type="epp:resultCodeType"
- use="required"/>
- </complexType>
- <complexType name="errValueType" mixed="true">
- <sequence>
- <any namespace="##any" processContents="skip"/>
- </sequence>
- <anyAttribute namespace="##any" processContents="skip"/>
- </complexType>
- <complexType name="extErrValueType">
- <sequence>
- <element name="value" type="epp:errValueType"/>
- <element name="reason" type="epp:msgType"/>
- </sequence>
- </complexType>
- <complexType name="msgQType">
- <sequence>
- <element name="qDate" type="dateTime"
- minOccurs="0"/>
- <element name="msg" type="epp:mixedMsgType"
- minOccurs="0"/>
- </sequence>
- <attribute name="count" type="unsignedLong"
- use="required"/>
- <attribute name="id" type="eppcom:minTokenType"
- use="required"/>
- </complexType>
- <complexType name="mixedMsgType" mixed="true">
- <sequence>
- <any processContents="skip"
- minOccurs="0" maxOccurs="unbounded"/>
- </sequence>
- <attribute name="lang" type="language"
- default="en"/>
- </complexType>
- <!--
- Human-readable text may be expressed in languages other than English.
- -->
- <complexType name="msgType">
- <simpleContent>
- <extension base="normalizedString">
- <attribute name="lang" type="language"
- default="en"/>
- </extension>
- </simpleContent>
- </complexType>
- <!--
- EPP result codes.
- -->
- <simpleType name="resultCodeType">
- <restriction base="unsignedShort">
- <enumeration value="1000"/>
- <enumeration value="1001"/>
- <enumeration value="1300"/>
- <enumeration value="1301"/>
- <enumeration value="1500"/>
- <enumeration value="2000"/>
- <enumeration value="2001"/>
- <enumeration value="2002"/>
- <enumeration value="2003"/>
- <enumeration value="2004"/>
- <enumeration value="2005"/>
- <enumeration value="2100"/>
- <enumeration value="2101"/>
- <enumeration value="2102"/>
- <enumeration value="2103"/>
- <enumeration value="2104"/>
- <enumeration value="2105"/>
- <enumeration value="2106"/>
- <enumeration value="2200"/>
- <enumeration value="2201"/>
- <enumeration value="2202"/>
- <enumeration value="2300"/>
- <enumeration value="2301"/>
- <enumeration value="2302"/>
- <enumeration value="2303"/>
- <enumeration value="2304"/>
- <enumeration value="2305"/>
- <enumeration value="2306"/>
- <enumeration value="2307"/>
- <enumeration value="2308"/>
- <enumeration value="2400"/>
- <enumeration value="2500"/>
- <enumeration value="2501"/>
- <enumeration value="2502"/>
- </restriction>
- </simpleType>
- <!--
- End of schema.
- -->
- </schema>
|