Import code from internal repository to git

This commit is contained in:
Justine Tunney 2016-03-01 17:18:14 -05:00
commit 0ef0c933d2
2490 changed files with 281594 additions and 0 deletions

View file

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:google:params:xml:ns:allocate-1.0"
xmlns:allocate="urn:google:params:xml:ns:allocate-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
xmlns:launch="urn:ietf:params:xml:ns:launch-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" schemaLocation="eppcom.xsd" />
<import namespace="urn:ietf:params:xml:ns:mark-1.0" schemaLocation="mark.xsd" />
<import namespace="urn:ietf:params:xml:ns:launch-1.0" schemaLocation="launch.xsd" />
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
domain name extension schema for allocating domains from applications.
This is a proprietary, internal-only, non-public extension only for use
inside the Google registry.
</documentation>
</annotation>
<!-- Child elements found in EPP commands. -->
<element name="create" type="allocate:createType" />
<!-- Child elements for the create command -->
<complexType name="createType">
<sequence>
<element name="applicationRoid" type="eppcom:roidType" />
<element name="applicationTime" type="dateTime" />
<element name="smdId" minOccurs="0" type="mark:idType" />
<element name="notice" minOccurs="0" type="launch:createNoticeType" />
</sequence>
</complexType>
</schema>

View file

@ -0,0 +1,389 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:contact-1.0"
xmlns:contact="urn:ietf:params:xml:ns:contact-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"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:epp-1.0"
schemaLocation="epp.xsd"/>
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
contact provisioning schema.
</documentation>
</annotation>
<!--
Child elements found in EPP commands.
-->
<element name="check" type="contact:mIDType"/>
<element name="create" type="contact:createType"/>
<element name="delete" type="contact:sIDType"/>
<element name="info" type="contact:authIDType"/>
<element name="transfer" type="contact:authIDType"/>
<element name="update" type="contact:updateType"/>
<!--
Utility types.
-->
<simpleType name="ccType">
<restriction base="token">
<length value="2"/>
</restriction>
</simpleType>
<complexType name="e164Type">
<simpleContent>
<extension base="contact:e164StringType">
<attribute name="x" type="token"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="e164StringType">
<restriction base="token">
<pattern value="(\+[0-9]{1,3}\.[0-9]{1,14})?"/>
<maxLength value="17"/>
</restriction>
</simpleType>
<simpleType name="pcType">
<restriction base="token">
<maxLength value="16"/>
</restriction>
</simpleType>
<simpleType name="postalLineType">
<restriction base="normalizedString">
<minLength value="1"/>
<maxLength value="255"/>
</restriction>
</simpleType>
<simpleType name="optPostalLineType">
<restriction base="normalizedString">
<maxLength value="255"/>
</restriction>
</simpleType>
<!--
Child elements of the <create> command.
-->
<complexType name="createType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
<element name="postalInfo" type="contact:postalInfoType"
maxOccurs="2"/>
<element name="voice" type="contact:e164Type"
minOccurs="0"/>
<element name="fax" type="contact:e164Type"
minOccurs="0"/>
<element name="email" type="eppcom:minTokenType"/>
<element name="authInfo" type="contact:authInfoType"/>
<element name="disclose" type="contact:discloseType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="postalInfoType">
<sequence>
<element name="name" type="contact:postalLineType"/>
<element name="org" type="contact:optPostalLineType"
minOccurs="0"/>
<element name="addr" type="contact:addrType"/>
</sequence>
<attribute name="type" type="contact:postalInfoEnumType"
use="required"/>
</complexType>
<simpleType name="postalInfoEnumType">
<restriction base="token">
<enumeration value="loc"/>
<enumeration value="int"/>
</restriction>
</simpleType>
<complexType name="addrType">
<sequence>
<element name="street" type="contact:optPostalLineType"
minOccurs="0" maxOccurs="3"/>
<element name="city" type="contact:postalLineType"/>
<element name="sp" type="contact:optPostalLineType"
minOccurs="0"/>
<element name="pc" type="contact:pcType"
minOccurs="0"/>
<element name="cc" type="contact:ccType"/>
</sequence>
</complexType>
<complexType name="authInfoType">
<choice>
<element name="pw" type="eppcom:pwAuthInfoType"/>
<element name="ext" type="eppcom:extAuthInfoType"/>
</choice>
</complexType>
<complexType name="discloseType">
<sequence>
<element name="name" type="contact:intLocType"
minOccurs="0" maxOccurs="2"/>
<element name="org" type="contact:intLocType"
minOccurs="0" maxOccurs="2"/>
<element name="addr" type="contact:intLocType"
minOccurs="0" maxOccurs="2"/>
<element name="voice" minOccurs="0"/>
<element name="fax" minOccurs="0"/>
<element name="email" minOccurs="0"/>
</sequence>
<attribute name="flag" type="boolean" use="required"/>
</complexType>
<complexType name="intLocType">
<attribute name="type" type="contact:postalInfoEnumType"
use="required"/>
</complexType>
<!--
Child element of commands that require only an identifier.
-->
<complexType name="sIDType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
</sequence>
</complexType>
<!--
Child element of commands that accept multiple identifiers.
-->
<complexType name="mIDType">
<sequence>
<element name="id" type="eppcom:clIDType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<!--
Child elements of the <info> and <transfer> commands.
-->
<complexType name="authIDType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
<element name="authInfo" type="contact:authInfoType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Child elements of the <update> command.
-->
<complexType name="updateType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
<element name="add" type="contact:addRemType"
minOccurs="0"/>
<element name="rem" type="contact:addRemType"
minOccurs="0"/>
<element name="chg" type="contact:chgType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Data elements that can be added or removed.
-->
<complexType name="addRemType">
<sequence>
<element name="status" type="contact:statusType"
maxOccurs="7"/>
</sequence>
</complexType>
<!--
Data elements that can be changed.
-->
<complexType name="chgType">
<sequence>
<element name="postalInfo" type="contact:chgPostalInfoType"
minOccurs="0" maxOccurs="2"/>
<element name="voice" type="contact:e164Type"
minOccurs="0"/>
<element name="fax" type="contact:e164Type"
minOccurs="0"/>
<element name="email" type="eppcom:minTokenType"
minOccurs="0"/>
<element name="authInfo" type="contact:authInfoType"
minOccurs="0"/>
<element name="disclose" type="contact:discloseType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="chgPostalInfoType">
<sequence>
<element name="name" type="contact:postalLineType"
minOccurs="0"/>
<element name="org" type="contact:optPostalLineType"
minOccurs="0"/>
<element name="addr" type="contact:addrType"
minOccurs="0"/>
</sequence>
<attribute name="type" type="contact:postalInfoEnumType"
use="required"/>
</complexType>
<!--
Child response elements.
-->
<element name="chkData" type="contact:chkDataType"/>
<element name="creData" type="contact:creDataType"/>
<element name="infData" type="contact:infDataType"/>
<element name="panData" type="contact:panDataType"/>
<element name="trnData" type="contact:trnDataType"/>
<!--
<check> response elements.
-->
<complexType name="chkDataType">
<sequence>
<element name="cd" type="contact:checkType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="checkType">
<sequence>
<element name="id" type="contact:checkIDType"/>
<element name="reason" type="eppcom:reasonType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="checkIDType">
<simpleContent>
<extension base="eppcom:clIDType">
<attribute name="avail" type="boolean"
use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
<create> response elements.
-->
<complexType name="creDataType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
<element name="crDate" type="dateTime"/>
</sequence>
</complexType>
<!--
<info> response elements.
-->
<complexType name="infDataType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
<element name="roid" type="eppcom:roidType"/>
<element name="status" type="contact:statusType"
maxOccurs="7"/>
<element name="postalInfo" type="contact:postalInfoType"
maxOccurs="2"/>
<element name="voice" type="contact:e164Type"
minOccurs="0"/>
<element name="fax" type="contact:e164Type"
minOccurs="0"/>
<element name="email" type="eppcom:minTokenType"/>
<element name="clID" type="eppcom:clIDType"/>
<element name="crID" type="eppcom:clIDType"/>
<element name="crDate" type="dateTime"/>
<element name="upID" type="eppcom:clIDType"
minOccurs="0"/>
<element name="upDate" type="dateTime"
minOccurs="0"/>
<element name="trDate" type="dateTime"
minOccurs="0"/>
<element name="authInfo" type="contact:authInfoType"
minOccurs="0"/>
<element name="disclose" type="contact:discloseType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Status is a combination of attributes and an optional human-readable
message that may be expressed in languages other than English.
-->
<complexType name="statusType">
<simpleContent>
<extension base="normalizedString">
<attribute name="s" type="contact:statusValueType"
use="required"/>
<attribute name="lang" type="language"
default="en"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="statusValueType">
<restriction base="token">
<enumeration value="clientDeleteProhibited"/>
<enumeration value="clientTransferProhibited"/>
<enumeration value="clientUpdateProhibited"/>
<enumeration value="linked"/>
<enumeration value="ok"/>
<enumeration value="pendingCreate"/>
<enumeration value="pendingDelete"/>
<enumeration value="pendingTransfer"/>
<enumeration value="pendingUpdate"/>
<enumeration value="serverDeleteProhibited"/>
<enumeration value="serverTransferProhibited"/>
<enumeration value="serverUpdateProhibited"/>
</restriction>
</simpleType>
<!--
Pending action notification response elements.
-->
<complexType name="panDataType">
<sequence>
<element name="id" type="contact:paCLIDType"/>
<element name="paTRID" type="epp:trIDType"/>
<element name="paDate" type="dateTime"/>
</sequence>
</complexType>
<complexType name="paCLIDType">
<simpleContent>
<extension base="eppcom:clIDType">
<attribute name="paResult" type="boolean"
use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
<transfer> response elements.
-->
<complexType name="trnDataType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
<element name="trStatus" type="eppcom:trStatusType"/>
<element name="reID" type="eppcom:clIDType"/>
<element name="reDate" type="dateTime"/>
<element name="acID" type="eppcom:clIDType"/>
<element name="acDate" type="dateTime"/>
</sequence>
</complexType>
<!--
End of schema.
-->
</schema>

View file

@ -0,0 +1,434 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:domain-1.0"
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
xmlns:host="urn:ietf:params:xml:ns:host-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"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:epp-1.0"
schemaLocation="epp.xsd"/>
<import namespace="urn:ietf:params:xml:ns:host-1.0"
schemaLocation="host.xsd"/>
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
domain provisioning schema.
</documentation>
</annotation>
<!--
Child elements found in EPP commands.
-->
<element name="check" type="domain:mNameType"/>
<element name="create" type="domain:createType"/>
<element name="delete" type="domain:sNameType"/>
<element name="info" type="domain:infoType"/>
<element name="renew" type="domain:renewType"/>
<element name="transfer" type="domain:transferType"/>
<element name="update" type="domain:updateType"/>
<!--
Child elements of the <create> command.
-->
<complexType name="createType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="period" type="domain:periodType"
minOccurs="0"/>
<element name="ns" type="domain:nsType"
minOccurs="0"/>
<element name="registrant" type="eppcom:clIDType"
minOccurs="0"/>
<element name="contact" type="domain:contactType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="authInfo" type="domain:authInfoType"/>
</sequence>
</complexType>
<complexType name="periodType">
<simpleContent>
<extension base="domain:pLimitType">
<attribute name="unit" type="domain:pUnitType"
use="required"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="pLimitType">
<restriction base="unsignedShort">
<minInclusive value="1"/>
<maxInclusive value="99"/>
</restriction>
</simpleType>
<simpleType name="pUnitType">
<restriction base="token">
<enumeration value="y"/>
<enumeration value="m"/>
</restriction>
</simpleType>
<complexType name="nsType">
<choice>
<element name="hostObj" type="eppcom:labelType"
maxOccurs="unbounded"/>
<element name="hostAttr" type="domain:hostAttrType"
maxOccurs="unbounded"/>
</choice>
</complexType>
<!--
Name servers are either host objects or attributes.
-->
<complexType name="hostAttrType">
<sequence>
<element name="hostName" type="eppcom:labelType"/>
<element name="hostAddr" type="host:addrType"
minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
<!--
If attributes, addresses are optional and follow the
structure defined in the host mapping.
-->
<complexType name="contactType">
<simpleContent>
<extension base="eppcom:clIDType">
<attribute name="type" type="domain:contactAttrType"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="contactAttrType">
<restriction base="token">
<enumeration value="admin"/>
<enumeration value="billing"/>
<enumeration value="tech"/>
</restriction>
</simpleType>
<complexType name="authInfoType">
<choice>
<element name="pw" type="eppcom:pwAuthInfoType"/>
<element name="ext" type="eppcom:extAuthInfoType"/>
</choice>
</complexType>
<!--
Child element of commands that require a single name.
-->
<complexType name="sNameType">
<sequence>
<element name="name" type="eppcom:labelType"/>
</sequence>
</complexType>
<!--
Child element of commands that accept multiple names.
-->
<complexType name="mNameType">
<sequence>
<element name="name" type="eppcom:labelType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<!--
Child elements of the <info> command.
-->
<complexType name="infoType">
<sequence>
<element name="name" type="domain:infoNameType"/>
<element name="authInfo" type="domain:authInfoType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="infoNameType">
<simpleContent>
<extension base = "eppcom:labelType">
<attribute name="hosts" type="domain:hostsType"
default="all"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="hostsType">
<restriction base="token">
<enumeration value="all"/>
<enumeration value="del"/>
<enumeration value="none"/>
<enumeration value="sub"/>
</restriction>
</simpleType>
<!--
Child elements of the <renew> command.
-->
<complexType name="renewType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="curExpDate" type="date"/>
<element name="period" type="domain:periodType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Child elements of the <transfer> command.
-->
<complexType name="transferType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="period" type="domain:periodType"
minOccurs="0"/>
<element name="authInfo" type="domain:authInfoType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Child elements of the <update> command.
-->
<complexType name="updateType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="add" type="domain:addRemType"
minOccurs="0"/>
<element name="rem" type="domain:addRemType"
minOccurs="0"/>
<element name="chg" type="domain:chgType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Data elements that can be added or removed.
-->
<complexType name="addRemType">
<sequence>
<element name="ns" type="domain:nsType"
minOccurs="0"/>
<element name="contact" type="domain:contactType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="status" type="domain:statusType"
minOccurs="0" maxOccurs="11"/>
</sequence>
</complexType>
<!--
Data elements that can be changed.
-->
<complexType name="chgType">
<sequence>
<element name="registrant" type="domain:clIDChgType"
minOccurs="0"/>
<element name="authInfo" type="domain:authInfoChgType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Allow the registrant value to be nullified by changing the
minLength restriction to "0".
-->
<simpleType name="clIDChgType">
<restriction base="token">
<minLength value="0"/>
<maxLength value="16"/>
</restriction>
</simpleType>
<!--
Allow the authInfo value to be nullified by including an
empty element within the choice.
-->
<complexType name="authInfoChgType">
<choice>
<element name="pw" type="eppcom:pwAuthInfoType"/>
<element name="ext" type="eppcom:extAuthInfoType"/>
<element name="null"/>
</choice>
</complexType>
<!--
Child response elements.
-->
<element name="chkData" type="domain:chkDataType"/>
<element name="creData" type="domain:creDataType"/>
<element name="infData" type="domain:infDataType"/>
<element name="panData" type="domain:panDataType"/>
<element name="renData" type="domain:renDataType"/>
<element name="trnData" type="domain:trnDataType"/>
<!--
<check> response elements.
-->
<complexType name="chkDataType">
<sequence>
<element name="cd" type="domain:checkType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="checkType">
<sequence>
<element name="name" type="domain:checkNameType"/>
<element name="reason" type="eppcom:reasonType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="checkNameType">
<simpleContent>
<extension base="eppcom:labelType">
<attribute name="avail" type="boolean"
use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
<create> response elements.
-->
<complexType name="creDataType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="crDate" type="dateTime"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
</sequence>
</complexType>
<!--
<info> response elements.
-->
<complexType name="infDataType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="roid" type="eppcom:roidType"/>
<element name="status" type="domain:statusType"
minOccurs="0" maxOccurs="11"/>
<element name="registrant" type="eppcom:clIDType"
minOccurs="0"/>
<element name="contact" type="domain:contactType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="ns" type="domain:nsType"
minOccurs="0"/>
<element name="host" type="eppcom:labelType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="clID" type="eppcom:clIDType"/>
<element name="crID" type="eppcom:clIDType"
minOccurs="0"/>
<element name="crDate" type="dateTime"
minOccurs="0"/>
<element name="upID" type="eppcom:clIDType"
minOccurs="0"/>
<element name="upDate" type="dateTime"
minOccurs="0"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
<element name="trDate" type="dateTime"
minOccurs="0"/>
<element name="authInfo" type="domain:authInfoType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Status is a combination of attributes and an optional
human-readable message that may be expressed in languages other
than English.
-->
<complexType name="statusType">
<simpleContent>
<extension base="normalizedString">
<attribute name="s" type="domain:statusValueType"
use="required"/>
<attribute name="lang" type="language"
default="en"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="statusValueType">
<restriction base="token">
<enumeration value="clientDeleteProhibited"/>
<enumeration value="clientHold"/>
<enumeration value="clientRenewProhibited"/>
<enumeration value="clientTransferProhibited"/>
<enumeration value="clientUpdateProhibited"/>
<enumeration value="inactive"/>
<enumeration value="ok"/>
<enumeration value="pendingCreate"/>
<enumeration value="pendingDelete"/>
<enumeration value="pendingRenew"/>
<enumeration value="pendingTransfer"/>
<enumeration value="pendingUpdate"/>
<enumeration value="serverDeleteProhibited"/>
<enumeration value="serverHold"/>
<enumeration value="serverRenewProhibited"/>
<enumeration value="serverTransferProhibited"/>
<enumeration value="serverUpdateProhibited"/>
</restriction>
</simpleType>
<!--
Pending action notification response elements.
-->
<complexType name="panDataType">
<sequence>
<element name="name" type="domain:paNameType"/>
<element name="paTRID" type="epp:trIDType"/>
<element name="paDate" type="dateTime"/>
</sequence>
</complexType>
<complexType name="paNameType">
<simpleContent>
<extension base="eppcom:labelType">
<attribute name="paResult" type="boolean"
use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
<renew> response elements.
-->
<complexType name="renDataType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
</sequence>
</complexType>
<!--
<transfer> response elements.
-->
<complexType name="trnDataType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="trStatus" type="eppcom:trStatusType"/>
<element name="reID" type="eppcom:clIDType"/>
<element name="reDate" type="dateTime"/>
<element name="acID" type="eppcom:clIDType"/>
<element name="acDate" type="dateTime"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
</sequence>
</complexType>
<!--
End of schema.
-->
</schema>

View file

@ -0,0 +1,292 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Schema extracted from http://www.w3.org/2000/09/xmldsig# -->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
targetNamespace="http://www.w3.org/2000/09/xmldsig#"
version="0.1" elementFormDefault="qualified">
<!-- Basic Types Defined for Signatures -->
<simpleType name="CryptoBinary">
<restriction base="base64Binary">
</restriction>
</simpleType>
<!-- Start Signature -->
<element name="Signature" type="ds:SignatureType"/>
<complexType name="SignatureType">
<sequence>
<element ref="ds:SignedInfo"/>
<element ref="ds:SignatureValue"/>
<element ref="ds:KeyInfo" minOccurs="0"/>
<element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="SignatureValue" type="ds:SignatureValueType"/>
<complexType name="SignatureValueType">
<simpleContent>
<extension base="base64Binary">
<attribute name="Id" type="ID" use="optional"/>
</extension>
</simpleContent>
</complexType>
<!-- Start SignedInfo -->
<element name="SignedInfo" type="ds:SignedInfoType"/>
<complexType name="SignedInfoType">
<sequence>
<element ref="ds:CanonicalizationMethod"/>
<element ref="ds:SignatureMethod"/>
<element ref="ds:Reference" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
<complexType name="CanonicalizationMethodType" mixed="true">
<sequence>
<any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) namespace -->
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>
<element name="SignatureMethod" type="ds:SignatureMethodType"/>
<complexType name="SignatureMethodType" mixed="true">
<sequence>
<element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
<any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
<!-- (0,unbounded) elements from (1,1) external namespace -->
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>
<!-- Start Reference -->
<element name="Reference" type="ds:ReferenceType"/>
<complexType name="ReferenceType">
<sequence>
<element ref="ds:Transforms" minOccurs="0"/>
<element ref="ds:DigestMethod"/>
<element ref="ds:DigestValue"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
<attribute name="URI" type="anyURI" use="optional"/>
<attribute name="Type" type="anyURI" use="optional"/>
</complexType>
<element name="Transforms" type="ds:TransformsType"/>
<complexType name="TransformsType">
<sequence>
<element ref="ds:Transform" maxOccurs="unbounded"/>
</sequence>
</complexType>
<element name="Transform" type="ds:TransformType"/>
<complexType name="TransformType" mixed="true">
<choice minOccurs="0" maxOccurs="unbounded">
<any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
<element name="XPath" type="string"/>
</choice>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>
<!-- End Reference -->
<element name="DigestMethod" type="ds:DigestMethodType"/>
<complexType name="DigestMethodType" mixed="true">
<sequence>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="Algorithm" type="anyURI" use="required"/>
</complexType>
<element name="DigestValue" type="ds:DigestValueType"/>
<simpleType name="DigestValueType">
<restriction base="base64Binary"/>
</simpleType>
<!-- End SignedInfo -->
<!-- Start KeyInfo -->
<element name="KeyInfo" type="ds:KeyInfoType"/>
<complexType name="KeyInfoType" mixed="true">
<choice maxOccurs="unbounded">
<element ref="ds:KeyName"/>
<element ref="ds:KeyValue"/>
<element ref="ds:RetrievalMethod"/>
<element ref="ds:X509Data"/>
<element ref="ds:PGPData"/>
<element ref="ds:SPKIData"/>
<element ref="ds:MgmtData"/>
<any processContents="lax" namespace="##other"/>
<!-- (1,1) elements from (0,unbounded) namespaces -->
</choice>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="KeyName" type="string"/>
<element name="MgmtData" type="string"/>
<element name="KeyValue" type="ds:KeyValueType"/>
<complexType name="KeyValueType" mixed="true">
<choice>
<element ref="ds:DSAKeyValue"/>
<element ref="ds:RSAKeyValue"/>
<any namespace="##other" processContents="lax"/>
</choice>
</complexType>
<element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
<complexType name="RetrievalMethodType">
<sequence>
<element ref="ds:Transforms" minOccurs="0"/>
</sequence>
<attribute name="URI" type="anyURI"/>
<attribute name="Type" type="anyURI" use="optional"/>
</complexType>
<!-- Start X509Data -->
<element name="X509Data" type="ds:X509DataType"/>
<complexType name="X509DataType">
<sequence maxOccurs="unbounded">
<choice>
<element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
<element name="X509SKI" type="base64Binary"/>
<element name="X509SubjectName" type="string"/>
<element name="X509Certificate" type="base64Binary"/>
<element name="X509CRL" type="base64Binary"/>
<any namespace="##other" processContents="lax"/>
</choice>
</sequence>
</complexType>
<complexType name="X509IssuerSerialType">
<sequence>
<element name="X509IssuerName" type="string"/>
<element name="X509SerialNumber" type="integer"/>
</sequence>
</complexType>
<!-- End X509Data -->
<!-- Begin PGPData -->
<element name="PGPData" type="ds:PGPDataType"/>
<complexType name="PGPDataType">
<choice>
<sequence>
<element name="PGPKeyID" type="base64Binary"/>
<element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
<sequence>
<element name="PGPKeyPacket" type="base64Binary"/>
<any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</choice>
</complexType>
<!-- End PGPData -->
<!-- Begin SPKIData -->
<element name="SPKIData" type="ds:SPKIDataType"/>
<complexType name="SPKIDataType">
<sequence maxOccurs="unbounded">
<element name="SPKISexp" type="base64Binary"/>
<any namespace="##other" processContents="lax" minOccurs="0"/>
</sequence>
</complexType>
<!-- End SPKIData -->
<!-- End KeyInfo -->
<!-- Start Object (Manifest, SignatureProperty) -->
<element name="Object" type="ds:ObjectType"/>
<complexType name="ObjectType" mixed="true">
<sequence minOccurs="0" maxOccurs="unbounded">
<any namespace="##any" processContents="lax"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
<attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet -->
<attribute name="Encoding" type="anyURI" use="optional"/>
</complexType>
<element name="Manifest" type="ds:ManifestType"/>
<complexType name="ManifestType">
<sequence>
<element ref="ds:Reference" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
<complexType name="SignaturePropertiesType">
<sequence>
<element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<element name="SignatureProperty" type="ds:SignaturePropertyType"/>
<complexType name="SignaturePropertyType" mixed="true">
<choice maxOccurs="unbounded">
<any namespace="##other" processContents="lax"/>
<!-- (1,1) elements from (1,unbounded) namespaces -->
</choice>
<attribute name="Target" type="anyURI" use="required"/>
<attribute name="Id" type="ID" use="optional"/>
</complexType>
<!-- End Object (Manifest, SignatureProperty) -->
<!-- Start Algorithm Parameters -->
<simpleType name="HMACOutputLengthType">
<restriction base="integer"/>
</simpleType>
<!-- Start KeyValue Element-types -->
<element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
<complexType name="DSAKeyValueType">
<sequence>
<sequence minOccurs="0">
<element name="P" type="ds:CryptoBinary"/>
<element name="Q" type="ds:CryptoBinary"/>
</sequence>
<element name="G" type="ds:CryptoBinary" minOccurs="0"/>
<element name="Y" type="ds:CryptoBinary"/>
<element name="J" type="ds:CryptoBinary" minOccurs="0"/>
<sequence minOccurs="0">
<element name="Seed" type="ds:CryptoBinary"/>
<element name="PgenCounter" type="ds:CryptoBinary"/>
</sequence>
</sequence>
</complexType>
<element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
<complexType name="RSAKeyValueType">
<sequence>
<element name="Modulus" type="ds:CryptoBinary"/>
<element name="Exponent" type="ds:CryptoBinary"/>
</sequence>
</complexType>
<!-- End KeyValue Element-types -->
<!-- End Signature -->
</schema>

View file

@ -0,0 +1,445 @@
<?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"
schemaLocation="eppcom.xsd"/>
<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>

View file

@ -0,0 +1,107 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
shared structures schema.
</documentation>
</annotation>
<!--
Object authorization information types.
-->
<complexType name="pwAuthInfoType">
<simpleContent>
<extension base="normalizedString">
<attribute name="roid" type="eppcom:roidType"/>
</extension>
</simpleContent>
</complexType>
<complexType name="extAuthInfoType">
<sequence>
<any namespace="##other"/>
</sequence>
</complexType>
<!--
<check> response types.
-->
<complexType name="reasonType">
<simpleContent>
<extension base="eppcom:reasonBaseType">
<attribute name="lang" type="language"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="reasonBaseType">
<restriction base="token">
<minLength value="1"/>
<maxLength value="32"/>
</restriction>
</simpleType>
<!--
Abstract client and object identifier type.
-->
<simpleType name="clIDType">
<restriction base="token">
<minLength value="3"/>
<maxLength value="16"/>
</restriction>
</simpleType>
<!--
DNS label type.
-->
<simpleType name="labelType">
<restriction base="token">
<minLength value="1"/>
<maxLength value="255"/>
</restriction>
</simpleType>
<!--
Non-empty token type.
-->
<simpleType name="minTokenType">
<restriction base="token">
<minLength value="1"/>
</restriction>
</simpleType>
<!--
Repository Object IDentifier type.
-->
<simpleType name="roidType">
<restriction base="token">
<pattern value="(\w|_){1,80}-\w{1,8}"/>
</restriction>
</simpleType>
<!--
Transfer status identifiers.
-->
<simpleType name="trStatusType">
<restriction base="token">
<enumeration value="clientApproved"/>
<enumeration value="clientCancelled"/>
<enumeration value="clientRejected"/>
<enumeration value="pending"/>
<enumeration value="serverApproved"/>
<enumeration value="serverCancelled"/>
</restriction>
</simpleType>
<!--
End of schema.
-->
</schema>

View file

@ -0,0 +1,239 @@
<?xml version="1.0" encoding="utf-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:fee="urn:ietf:params:xml:ns:fee-0.6"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
targetNamespace="urn:ietf:params:xml:ns:fee-0.6"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" />
<import namespace="urn:ietf:params:xml:ns:domain-1.0" />
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0 domain name extension schema for fee information.
Downloaded from https://raw.githubusercontent.com/centralnic/epp-fee-extension/master/fee.xsd.
</documentation>
</annotation>
<!--
Child elements found in EPP commands and responses
-->
<element name="check" type="fee:checkType" />
<element name="chkData" type="fee:chkDataType" />
<element name="info" type="fee:infoType" />
<element name="infData" type="fee:infDataType" />
<element name="create" type="fee:transformCommandType" />
<element name="creData" type="fee:transformResultType" />
<element name="renew" type="fee:transformCommandType" />
<element name="renData" type="fee:transformResultType" />
<element name="transfer" type="fee:transformCommandType" />
<element name="trnData" type="fee:transferResultType" />
<element name="update" type="fee:transformCommandType" />
<element name="updData" type="fee:transformResultType" />
<element name="delData" type="fee:deleteDataType" />
<!--
client <check> command
-->
<complexType name="checkType">
<sequence>
<element name="domain" type="fee:domainCheckType"
maxOccurs="unbounded" />
</sequence>
</complexType>
<complexType name="domainCheckType">
<sequence>
<element name="name" type="eppcom:labelType" />
<element name="currency" type="fee:currencyType"
minOccurs="0" />
<element name="command" type="fee:commandType" />
<element name="period" type="domain:periodType"
minOccurs="0" />
</sequence>
</complexType>
<!--
server <check> result
-->
<complexType name="chkDataType">
<sequence>
<element name="cd" type="fee:domainCDType"
maxOccurs="unbounded" />
</sequence>
</complexType>
<complexType name="domainCDType">
<sequence>
<element name="name" type="eppcom:labelType" />
<element name="currency" type="fee:currencyType" />
<element name="command" type="fee:commandType" />
<element name="period" type="domain:periodType" />
<element name="fee" type="fee:feeType"
minOccurs="0" maxOccurs="unbounded" />
<element name="class" type="token" minOccurs="0" />
</sequence>
</complexType>
<!--
client <info> command
-->
<complexType name="infoType">
<sequence>
<element name="currency" type="fee:currencyType" />
<element name="command" type="fee:commandType" />
<element name="period" type="domain:periodType" />
</sequence>
</complexType>
<!--
server <info> result
-->
<complexType name="infDataType">
<sequence>
<element name="currency" type="fee:currencyType" />
<element name="command" type="fee:commandType" />
<element name="period" type="domain:periodType" />
<element name="fee" type="fee:feeType"
maxOccurs="unbounded" />
<element name="class" type="token" minOccurs="0" />
</sequence>
</complexType>
<!--
general transform (create, renew, update, transfer) command
-->
<complexType name="transformCommandType">
<sequence>
<element name="currency" type="fee:currencyType" />
<element name="fee" type="fee:feeType"
maxOccurs="unbounded" />
</sequence>
</complexType>
<!--
general transform (create, renew, update) result
-->
<complexType name="transformResultType">
<sequence>
<element name="currency" type="fee:currencyType" />
<element name="fee" type="fee:feeType"
maxOccurs="unbounded" />
<element name="balance" type="fee:balanceType"
minOccurs="0" />
<element name="creditLimit" type="fee:creditLimitType"
minOccurs="0" />
</sequence>
</complexType>
<!--
transfer result
-->
<complexType name="transferResultType">
<sequence>
<element name="currency" type="fee:currencyType" />
<!-- only used op="query" responses -->
<element name="period" type="domain:periodType"
minOccurs="0" />
<element name="fee" type="fee:feeType"
maxOccurs="unbounded" />
<element name="balance" type="fee:balanceType"
minOccurs="0" />
<element name="creditLimit" type="fee:creditLimitType"
minOccurs="0" />
</sequence>
</complexType>
<!--
delete result
-->
<complexType name="deleteDataType">
<sequence>
<element name="currency" type="fee:currencyType" />
<element name="credit" type="fee:creditType"
maxOccurs="unbounded" />
<element name="balance" type="fee:balanceType"
minOccurs="0" />
<element name="creditLimit" type="fee:creditLimitType"
minOccurs="0" />
</sequence>
</complexType>
<!--
common types
-->
<simpleType name="currencyType">
<restriction base="string">
<pattern value="[A-Z]{3}" />
</restriction>
</simpleType>
<complexType name="commandType">
<simpleContent>
<extension base="fee:commandTypeValue">
<attribute name="phase" type="token" />
<attribute name="subphase" type="token" />
</extension>
</simpleContent>
</complexType>
<simpleType name="commandTypeValue">
<restriction base="token">
<minLength value="3"/>
<maxLength value="16"/>
</restriction>
</simpleType>
<simpleType name="nonNegativeDecimal">
<restriction base="decimal">
<minInclusive value="0" />
</restriction>
</simpleType>
<simpleType name="negativeDecimal">
<restriction base="decimal">
<maxInclusive value="0" />
</restriction>
</simpleType>
<complexType name="feeType">
<simpleContent>
<extension base="fee:nonNegativeDecimal">
<attribute name="description"/>
<attribute name="refundable" type="boolean"
default="1" />
<attribute name="grace-period" type="duration"
default="P0D" />
<attribute name="applied" default="immediate">
<simpleType>
<restriction base="token">
<enumeration value="immediate" />
<enumeration value="delayed" />
</restriction>
</simpleType>
</attribute>
</extension>
</simpleContent>
</complexType>
<complexType name="creditType">
<simpleContent>
<extension base="fee:negativeDecimal">
<attribute name="description"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="balanceType">
<restriction base="decimal" />
</simpleType>
<simpleType name="creditLimitType">
<restriction base="decimal" />
</simpleType>
</schema>

View file

@ -0,0 +1,242 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:host-1.0"
xmlns:host="urn:ietf:params:xml:ns:host-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"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:epp-1.0"
schemaLocation="epp.xsd"/>
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
host provisioning schema.
</documentation>
</annotation>
<!--
Child elements found in EPP commands.
-->
<element name="check" type="host:mNameType"/>
<element name="create" type="host:createType"/>
<element name="delete" type="host:sNameType"/>
<element name="info" type="host:sNameType"/>
<element name="update" type="host:updateType"/>
<!--
Child elements of the <create> command.
-->
<complexType name="createType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="addr" type="host:addrType"
minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="addrType">
<simpleContent>
<extension base="host:addrStringType">
<attribute name="ip" type="host:ipType"
default="v4"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="addrStringType">
<restriction base="token">
<minLength value="3"/>
<maxLength value="45"/>
</restriction>
</simpleType>
<simpleType name="ipType">
<restriction base="token">
<enumeration value="v4"/>
<enumeration value="v6"/>
</restriction>
</simpleType>
<!--
Child elements of the <delete> and <info> commands.
-->
<complexType name="sNameType">
<sequence>
<element name="name" type="eppcom:labelType"/>
</sequence>
</complexType>
<!--
Child element of commands that accept multiple names.
-->
<complexType name="mNameType">
<sequence>
<element name="name" type="eppcom:labelType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<!--
Child elements of the <update> command.
-->
<complexType name="updateType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="add" type="host:addRemType"
minOccurs="0"/>
<element name="rem" type="host:addRemType"
minOccurs="0"/>
<element name="chg" type="host:chgType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Data elements that can be added or removed.
-->
<complexType name="addRemType">
<sequence>
<element name="addr" type="host:addrType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="status" type="host:statusType"
minOccurs="0" maxOccurs="7"/>
</sequence>
</complexType>
<!--
Data elements that can be changed.
-->
<complexType name="chgType">
<sequence>
<element name="name" type="eppcom:labelType"/>
</sequence>
</complexType>
<!--
Child response elements.
-->
<element name="chkData" type="host:chkDataType"/>
<element name="creData" type="host:creDataType"/>
<element name="infData" type="host:infDataType"/>
<element name="panData" type="host:panDataType"/>
<!--
<check> response elements.
-->
<complexType name="chkDataType">
<sequence>
<element name="cd" type="host:checkType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="checkType">
<sequence>
<element name="name" type="host:checkNameType"/>
<element name="reason" type="eppcom:reasonType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="checkNameType">
<simpleContent>
<extension base="eppcom:labelType">
<attribute name="avail" type="boolean"
use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
<create> response elements.
-->
<complexType name="creDataType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="crDate" type="dateTime"/>
</sequence>
</complexType>
<!--
<info> response elements.
-->
<complexType name="infDataType">
<sequence>
<element name="name" type="eppcom:labelType"/>
<element name="roid" type="eppcom:roidType"/>
<element name="status" type="host:statusType"
maxOccurs="7"/>
<element name="addr" type="host:addrType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="clID" type="eppcom:clIDType"/>
<element name="crID" type="eppcom:clIDType"/>
<element name="crDate" type="dateTime"/>
<element name="upID" type="eppcom:clIDType"
minOccurs="0"/>
<element name="upDate" type="dateTime"
minOccurs="0"/>
<element name="trDate" type="dateTime"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Status is a combination of attributes and an optional human-readable
message that may be expressed in languages other than English.
-->
<complexType name="statusType">
<simpleContent>
<extension base="normalizedString">
<attribute name="s" type="host:statusValueType"
use="required"/>
<attribute name="lang" type="language"
default="en"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="statusValueType">
<restriction base="token">
<enumeration value="clientDeleteProhibited"/>
<enumeration value="clientUpdateProhibited"/>
<enumeration value="linked"/>
<enumeration value="ok"/>
<enumeration value="pendingCreate"/>
<enumeration value="pendingDelete"/>
<enumeration value="pendingTransfer"/>
<enumeration value="pendingUpdate"/>
<enumeration value="serverDeleteProhibited"/>
<enumeration value="serverUpdateProhibited"/>
</restriction>
</simpleType>
<!--
Pending action notification response elements.
-->
<complexType name="panDataType">
<sequence>
<element name="name" type="host:paNameType"/>
<element name="paTRID" type="epp:trIDType"/>
<element name="paDate" type="dateTime"/>
</sequence>
</complexType>
<complexType name="paNameType">
<simpleContent>
<extension base="eppcom:labelType">
<attribute name="paResult" type="boolean"
use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
End of schema.
-->
</schema>

View file

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:iirdea-1.0"
xmlns:iirdea="urn:ietf:params:xml:ns:iirdea-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<annotation>
<documentation>
ICANN interfaces for registries and data escrow agents
</documentation>
</annotation>
<element name="response" type="iirdea:responseType"/>
<complexType name="responseType">
<sequence>
<element name="result" type="iirdea:resultType"/>
</sequence>
</complexType>
<complexType name="resultType">
<sequence>
<element name="msg" type="token"/>
<element name="description" type="string" minOccurs="0"/>
</sequence>
<attribute name="code" type="iirdea:codeType" use="required"/>
</complexType>
<simpleType name="codeType">
<restriction base="unsignedShort">
<minInclusive value="1000"/>
<maxInclusive value="9999"/>
</restriction>
</simpleType>
</schema>

View file

@ -0,0 +1,246 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:launch-1.0" xmlns:launch="urn:ietf:params:xml:ns:launch-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0" xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
xmlns:smd="urn:ietf:params:xml:ns:signedMark-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" schemaLocation="eppcom.xsd" />
<import namespace="urn:ietf:params:xml:ns:mark-1.0" schemaLocation="mark.xsd" />
<import namespace="urn:ietf:params:xml:ns:signedMark-1.0" schemaLocation="smd.xsd" />
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
domain name extension
schema
for the launch phase processing.
</documentation>
</annotation>
<!-- Child elements found in EPP commands. -->
<element name="check" type="launch:checkType" />
<element name="info" type="launch:infoType" />
<element name="create" type="launch:createType" />
<element name="update" type="launch:idContainerType" />
<element name="delete" type="launch:idContainerType" />
<!-- Common container of id (identifier) element -->
<complexType name="idContainerType">
<sequence>
<element name="phase" type="launch:phaseType" />
<element name="applicationID" type="launch:applicationIDType" />
</sequence>
</complexType>
<!-- Definition for application identifier -->
<simpleType name="applicationIDType">
<restriction base="token" />
</simpleType>
<!-- Definition for launch phase. Name is an optional attribute used to extend
the phase type. For example, when using the phase type value of &qt;custom&gt;, the
name can be used to specify the custom phase. -->
<complexType name="phaseType">
<simpleContent>
<extension base="launch:phaseTypeValue">
<attribute name="name" type="token" />
</extension>
</simpleContent>
</complexType>
<!-- Enumeration of for launch phase values. -->
<simpleType name="phaseTypeValue">
<restriction base="token">
<enumeration value="sunrise" />
<enumeration value="landrush" />
<enumeration value="claims" />
<enumeration value="open" />
<enumeration value="custom" />
</restriction>
</simpleType>
<!-- Definition for the sunrise code -->
<simpleType name="codeValue">
<restriction base="token">
<minLength value="1" />
</restriction>
</simpleType>
<complexType name="codeType">
<simpleContent>
<extension base="launch:codeValue">
<attribute name="validatorID" type="launch:validatorIDType"
use="optional" />
</extension>
</simpleContent>
</complexType>
<!-- Definition for the notice identifier -->
<simpleType name="noticeIDValue">
<restriction base="token">
<minLength value="1" />
</restriction>
</simpleType>
<complexType name="noticeIDType">
<simpleContent>
<extension base="launch:noticeIDValue">
<attribute name="validatorID" type="launch:validatorIDType"
use="optional" />
</extension>
</simpleContent>
</complexType>
<!-- Definition for the validator identifier -->
<simpleType name="validatorIDType">
<restriction base="token">
<minLength value="1" />
</restriction>
</simpleType>
<!-- Possible status values for sunrise application -->
<simpleType name="statusValueType">
<restriction base="token">
<enumeration value="pendingValidation" />
<enumeration value="validated" />
<enumeration value="invalid" />
<enumeration value="pendingAllocation" />
<enumeration value="allocated" />
<enumeration value="rejected" />
<enumeration value="custom" />
</restriction>
</simpleType>
<!-- Status type definition -->
<complexType name="statusType">
<simpleContent>
<extension base="normalizedString">
<attribute name="s" type="launch:statusValueType" use="required" />
<attribute name="lang" type="language" default="en" />
<attribute name="name" type="token" />
</extension>
</simpleContent>
</complexType>
<!-- codeMark Type that contains an optional code with mark information. -->
<complexType name="codeMarkType">
<sequence>
<element name="code" type="launch:codeType" minOccurs="0" />
<element ref="mark:abstractMark" minOccurs="0" />
</sequence>
</complexType>
<!-- Child elements for the create command -->
<complexType name="createType">
<sequence>
<element name="phase" type="launch:phaseType" />
<choice minOccurs="0">
<element name="codeMark" type="launch:codeMarkType" maxOccurs="unbounded" />
<element ref="smd:abstractSignedMark" maxOccurs="unbounded" />
<element ref="smd:encodedSignedMark" maxOccurs="unbounded" />
</choice>
<element name="notice" minOccurs="0" type="launch:createNoticeType" />
</sequence>
<attribute name="type" type="launch:objectType" />
</complexType>
<!-- Type of launch object -->
<simpleType name="objectType">
<restriction base="token">
<enumeration value="application" />
<enumeration value="registration" />
</restriction>
</simpleType>
<!-- Child elements of the create notice element. -->
<complexType name="createNoticeType">
<sequence>
<element name="noticeID" type="launch:noticeIDType" />
<element name="notAfter" type="dateTime" />
<element name="acceptedDate" type="dateTime" />
</sequence>
</complexType>
<!-- Child elements of check (Claims Check Command). -->
<complexType name="checkType">
<sequence>
<element name="phase" type="launch:phaseType" />
</sequence>
<attribute name="type" type="launch:checkFormType" default="claims" />
</complexType>
<!-- Type of check form (claims check or availability check) -->
<simpleType name="checkFormType">
<restriction base="token">
<enumeration value="claims" />
<enumeration value="avail" />
</restriction>
</simpleType>
<!-- Child elements of info command. -->
<complexType name="infoType">
<sequence>
<element name="phase" type="launch:phaseType" />
<element name="applicationID" type="launch:applicationIDType"
minOccurs="0" />
</sequence>
<attribute name="includeMark" type="boolean" default="false" />
</complexType>
<!-- Child response elements. -->
<element name="chkData" type="launch:chkDataType" />
<element name="creData" type="launch:idContainerType" />
<element name="infData" type="launch:infDataType" />
<!-- <check> response elements. -->
<complexType name="chkDataType">
<sequence>
<element name="phase" type="launch:phaseType" />
<element name="cd" type="launch:cdType" maxOccurs="unbounded" />
</sequence>
</complexType>
<complexType name="cdType">
<sequence>
<element name="name" type="launch:cdNameType" />
<element name="claimKey" type="launch:claimKeyType" minOccurs="0" />
</sequence>
</complexType>
<complexType name="cdNameType">
<simpleContent>
<extension base="eppcom:labelType">
<attribute name="exists" type="boolean" use="required" />
</extension>
</simpleContent>
</complexType>
<complexType name="claimKeyType">
<simpleContent>
<extension base="token">
<attribute name="validatorID" type="launch:validatorIDType"
use="optional" />
</extension>
</simpleContent>
</complexType>
<!-- <info> response elements -->
<complexType name="infDataType">
<sequence>
<element name="phase" type="launch:phaseType" />
<element name="applicationID" type="launch:applicationIDType"
minOccurs="0" />
<element name="status" type="launch:statusType" minOccurs="0" />
<element ref="mark:abstractMark" minOccurs="0" maxOccurs="unbounded" />
</sequence>
</complexType>
</schema>

View file

@ -0,0 +1,246 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Schema extracted from http://tools.ietf.org/html/draft-lozano-tmch-smd -->
<schema
targetNamespace="urn:ietf:params:xml:ns:mark-1.0"
xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<annotation>
<documentation>
Schema for representing a Trademark, also referred to
as Mark.
</documentation>
</annotation>
<!--
Abstract mark for replacement via substitution.
-->
<element name="abstractMark" type="mark:abstractMarkType"
abstract="true"/>
<!--
<mark:mark> element definition
-->
<element name="mark" type="mark:markType"
substitutionGroup="mark:abstractMark"/>
<!--
Empty type for use in extending for a mark
-->
<complexType name="abstractMarkType"/>
<!--
<mark:mark> child elements
-->
<complexType name="markType">
<complexContent>
<extension base="mark:abstractMarkType">
<sequence>
<element name="trademark" type="mark:trademarkType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="treatyOrStatute"
type="mark:treatyOrStatuteType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="court" type="mark:courtType" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="holderType">
<sequence>
<element name="name" type="token" minOccurs="0"/>
<element name="org" type="token" minOccurs="0"/>
<element name="addr" type="mark:addrType"/>
<element name="voice" type="mark:e164Type" minOccurs="0"/>
<element name="fax" type="mark:e164Type" minOccurs="0"/>
<element name="email" type="mark:minTokenType" minOccurs="0"/>
</sequence>
<attribute name="entitlement" type="mark:entitlementType"/>
</complexType>
<complexType name="contactType">
<sequence>
<element name="name" type="token"/>
<element name="org" type="token" minOccurs="0"/>
<element name="addr" type="mark:addrType"/>
<element name="voice" type="mark:e164Type"/>
<element name="fax" type="mark:e164Type" minOccurs="0"/>
<element name="email" type="mark:minTokenType"/>
</sequence>
<attribute name="type" type="mark:contactTypeType"/>
</complexType>
<complexType name="trademarkType">
<sequence>
<element name="id" type="mark:idType"/>
<element name="markName" type="token"/>
<element name="holder" type="mark:holderType"
maxOccurs="unbounded" />
<element name="contact" type="mark:contactType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="jurisdiction" type="mark:ccType"/>
<element name="class" type="integer" minOccurs="0"
maxOccurs="unbounded"/>
<element name="label" type="mark:labelType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="goodsAndServices" type="token" />
<element name="apId" type="token" minOccurs="0"/>
<element name="apDate" type="dateTime" minOccurs="0"/>
<element name="regNum" type="token"/>
<element name="regDate" type="dateTime"/>
<element name="exDate" type="dateTime" minOccurs="0"/>
</sequence>
</complexType>
<complexType name="treatyOrStatuteType">
<sequence>
<element name="id" type="mark:idType"/>
<element name="markName" type="token"/>
<element name="holder" type="mark:holderType"
maxOccurs="unbounded" />
<element name="contact" type="mark:contactType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="protection" type="mark:protectionType"
maxOccurs="unbounded"/>
<element name="label" type="mark:labelType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="goodsAndServices" type="token" />
<element name="refNum" type="token"/>
<element name="proDate" type="dateTime"/>
<element name="title" type="token"/>
<element name="execDate" type="dateTime"/>
</sequence>
</complexType>
<complexType name="courtType">
<sequence>
<element name="id" type="mark:idType"/>
<element name="markName" type="token"/>
<element name="holder" type="mark:holderType"
maxOccurs="unbounded" />
<element name="contact" type="mark:contactType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="label" type="mark:labelType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="goodsAndServices" type="token" />
<element name="refNum" type="token"/>
<element name="proDate" type="dateTime"/>
<element name="cc" type="mark:ccType"/>
<element name="region" type="token" minOccurs="0"
maxOccurs="unbounded"/>
<element name="courtName" type="token"/>
</sequence>
</complexType>
<!--
Address (<mark:addr>) child elements
-->
<complexType name="addrType">
<sequence>
<element name="street" type="token" minOccurs="1" maxOccurs="3"/>
<element name="city" type="token"/>
<element name="sp" type="token" minOccurs="0"/>
<element name="pc" type="mark:pcType" minOccurs="0"/>
<element name="cc" type="mark:ccType"/>
</sequence>
</complexType>
<!--
<mark:protection> child elements
-->
<complexType name="protectionType">
<sequence>
<element name="cc" type="mark:ccType"/>
<element name="region" type="token" minOccurs="0"/>
<element name="ruling" type="mark:ccType"
minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
<!--
Postal code definition
-->
<simpleType name="pcType">
<restriction base="token">
<maxLength value="16"/>
</restriction>
</simpleType>
<!--
Country code definition
-->
<simpleType name="ccType">
<restriction base="token">
<length value="2"/>
</restriction>
</simpleType>
<!--
Phone number with extension definition
-->
<complexType name="e164Type">
<simpleContent>
<extension base="mark:e164StringType">
<attribute name="x" type="token"/>
</extension>
</simpleContent>
</complexType>
<!--
Phone number with extension definition
-->
<simpleType name="e164StringType">
<restriction base="token">
<pattern value="(\+[0-9]{1,3}\.[0-9]{1,14})?"/>
<maxLength value="17"/>
</restriction>
</simpleType>
<!--
Id type definition
-->
<simpleType name="idType">
<restriction base="token">
<pattern value="\d+-\d+"/>
</restriction>
</simpleType>
<!--
DNS label type definition
-->
<simpleType name="labelType">
<restriction base="token">
<minLength value="1"/>
<maxLength value="63"/>
<pattern value="[a-zA-Z0-9]([a-zA-Z0-9\-]*[a-zA-Z0-9])?"/>
</restriction>
</simpleType>
<!--
Type used for email addresses
-->
<simpleType name="minTokenType">
<restriction base="token">
<minLength value="1"/>
</restriction>
</simpleType>
<simpleType name="entitlementType">
<restriction base="token">
<enumeration value="owner"/>
<enumeration value="assignee"/>
<enumeration value="licensee"/>
</restriction>
</simpleType>
<simpleType name="contactTypeType">
<restriction base="token">
<enumeration value="owner"/>
<enumeration value="agent"/>
<enumeration value="thirdparty"/>
</restriction>
</simpleType>
</schema>

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:metadata="urn:google:params:xml:ns:metadata-1.0"
targetNamespace="urn:google:params:xml:ns:metadata-1.0" elementFormDefault="qualified">
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
Domain name extension schema for annotating EPP operations with metadata.
This is a proprietary, internal-only, non-public extension only for use
inside the Google registry.
</documentation>
</annotation>
<!-- Child elements found in EPP commands. -->
<element name="metadata" type="metadata:metadata" />
<!-- Child elements for all commands -->
<complexType name="metadata">
<all>
<element name="reason" type="string" minOccurs="0" />
<element name="requestedByRegistrar" type="boolean" minOccurs="1" />
<element name="anchorTenant" type="boolean" minOccurs="0" default="false" />
</all>
</complexType>
</schema>

View file

@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeContact-1.0"
xmlns:rdeContact="urn:ietf:params:xml:ns:rdeContact-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns:contact="urn:ietf:params:xml:ns:contact-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"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:contact-1.0"
schemaLocation="contact.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<annotation>
<documentation>
Registry Data Escrow contact provisioning schema
</documentation>
</annotation>
<element name="abstractContact"
type="rdeContact:abstractContentType"
substitutionGroup="rde:content" abstract="true"/>
<element name="contact"
substitutionGroup="rdeContact:abstractContact"/>
<element name="delete"
type="rdeContact:deleteType"
substitutionGroup="rde:delete"/>
<!-- Contact Type -->
<complexType name="abstractContentType">
<complexContent>
<extension base="rde:contentType">
<sequence>
<element name="id"
type="eppcom:clIDType"/>
<element name="roid"
type="eppcom:roidType"/>
<element name="status"
type="contact:statusType" maxOccurs="7"/>
<element name="postalInfo"
type="contact:postalInfoType" maxOccurs="2"/>
<element name="voice"
type="contact:e164Type" minOccurs="0"/>
<element name="fax"
type="contact:e164Type" minOccurs="0"/>
<element name="email"
type="eppcom:minTokenType"/>
<element name="clID"
type="eppcom:clIDType"/>
<element name="crRr"
type="rde:rrType"/>
<element name="crDate"
type="dateTime"/>
<element name="upRr"
type="rde:rrType" minOccurs="0"/>
<element name="upDate"
type="dateTime" minOccurs="0"/>
<element name="trDate"
type="dateTime" minOccurs="0"/>
<element name="trnData"
type="rdeContact:transferDataType" minOccurs="0"/>
<element name="disclose"
type="contact:discloseType" minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="transferDataType">
<sequence>
<element name="trStatus" type="eppcom:trStatusType"/>
<element name="reRr" type="rde:rrType"/>
<element name="reDate" type="dateTime"/>
<element name="acRr" type="rde:rrType"/>
<element name="acDate" type="dateTime"/>
</sequence>
</complexType>
<!-- Delete Type -->
<complexType name="deleteType">
<complexContent>
<extension base="rde:deleteType">
<sequence>
<element name="id"
type="eppcom:clIDType" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>

View file

@ -0,0 +1,121 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeDomain-1.0"
xmlns:rdeDomain="urn:ietf:params:xml:ns:rdeDomain-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns:rdeIDN="urn:ietf:params:xml:ns:rdeIDN-1.0"
xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"
xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:domain-1.0"
schemaLocation="domain.xsd"/>
<import namespace="urn:ietf:params:xml:ns:secDNS-1.1"
schemaLocation="secdns.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rgp-1.0"
schemaLocation="rgp.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rdeIDN-1.0"
schemaLocation="rde-idn.xsd"/>
<annotation>
<documentation>
Registry Data Escrow Domain provisioning schema
</documentation>
</annotation>
<element name="abstractDomain"
type="rdeDomain:abstractContentType"
substitutionGroup="rde:content" abstract="true"/>
<element name="domain"
substitutionGroup="rdeDomain:abstractDomain"/>
<element name="delete"
type="rdeDomain:deleteType"
substitutionGroup="rde:delete"/>
<!-- Content Type -->
<complexType name="abstractContentType">
<complexContent>
<extension base="rde:contentType">
<sequence>
<element name="name"
type="eppcom:labelType"/>
<element name="roid"
type="eppcom:roidType"/>
<element name="uName"
type="eppcom:labelType" minOccurs="0"/>
<element name="idnTableId"
type="rdeIDN:idType" minOccurs="0"/>
<element name="originalName"
type="eppcom:labelType" minOccurs="0"/>
<element name="status"
type="domain:statusType" maxOccurs="11"/>
<element name="rgpStatus"
type="rgp:statusType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="registrant"
type="eppcom:clIDType" minOccurs="0"/>
<element name="contact"
type="domain:contactType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="ns"
type="domain:nsType" minOccurs="0"/>
<element name="clID"
type="eppcom:clIDType"/>
<element name="crRr"
type="rde:rrType"/>
<element name="crDate"
type="dateTime" minOccurs="0"/>
<element name="exDate"
type="dateTime" minOccurs="0"/>
<element name="upRr"
type="rde:rrType" minOccurs="0"/>
<element name="upDate"
type="dateTime" minOccurs="0"/>
<element name="secDNS"
type="secDNS:dsOrKeyType" minOccurs="0"/>
<element name="trDate"
type="dateTime" minOccurs="0"/>
<element name="trnData"
type="rdeDomain:transferDataType"
minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="transferDataType">
<sequence>
<element name="trStatus"
type="eppcom:trStatusType"/>
<element name="reRr"
type="rde:rrType"/>
<element name="reDate"
type="dateTime"/>
<element name="acRr"
type="rde:rrType"/>
<element name="acDate"
type="dateTime"/>
<element name="exDate"
type="dateTime" minOccurs="0"/>
</sequence>
</complexType>
<!-- Delete Type -->
<complexType name="deleteType">
<complexContent>
<extension base="rde:deleteType">
<sequence>
<element name="name"
type="eppcom:labelType" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>

View file

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeEppParams-1.0"
xmlns:rdeEppParams="urn:ietf:params:xml:ns:rdeEppParams-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-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 namespace="urn:ietf:params:xml:ns:epp-1.0"
schemaLocation="epp.xsd"/>
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<annotation>
<documentation>
Registry Data Escrow EPP Parameters schema
</documentation>
</annotation>
<!-- Content Type -->
<element name="eppParams"
substitutionGroup="rdeEppParams:abstractEppParams"/>
<!-- Abstract Content Type -->
<element name="abstractEppParams"
type="rdeEppParams:abstractContentType"
substitutionGroup="rde:content" abstract="true"/>
<complexType name="abstractContentType">
<complexContent>
<extension base="rde:contentType">
<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"/>
<element name="dcp"
type="epp:dcpType"/>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>

View file

@ -0,0 +1,44 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeHeader-1.0"
xmlns:rdeHeader="urn:ietf:params:xml:ns:rdeHeader-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<annotation>
<documentation>
Registry Data Escrow Header schema
</documentation>
</annotation>
<!-- Root Element -->
<element name="header" type="rdeHeader:contentType"
substitutionGroup="rde:content"/>
<!-- Content Type -->
<complexType name="contentType">
<complexContent>
<extension base="rde:contentType">
<sequence>
<element name="tld" type="eppcom:labelType"/>
<element name="count" type="rdeHeader:countType"
maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<complexType name="countType">
<simpleContent>
<extension base="long">
<attribute name="uri" type="anyURI"/>
</extension>
</simpleContent>
</complexType>
</schema>

View file

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeHost-1.0"
xmlns:rdeHost="urn:ietf:params:xml:ns:rdeHost-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns:host="urn:ietf:params:xml:ns:host-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:host-1.0"
schemaLocation="host.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<annotation>
<documentation>
Registry Data Escrow Host provisioning schema
</documentation>
</annotation>
<element name="abstractHost" type="rdeHost:abstractContentType"
substitutionGroup="rde:content" abstract="true"/>
<element name="host" substitutionGroup="rdeHost:abstractHost" />
<element name="delete" type="rdeHost:deleteType"
substitutionGroup="rde:delete"/>
<!-- Content Type -->
<complexType name="abstractContentType">
<complexContent>
<extension base="rde:contentType">
<sequence>
<element name="name"
type="eppcom:labelType"/>
<element name="roid"
type="eppcom:roidType"/>
<element name="status"
type="host:statusType" maxOccurs="7"/>
<element name="addr"
type="host:addrType" minOccurs="0"
maxOccurs="unbounded"/>
<element name="clID"
type="eppcom:clIDType"/>
<element name="crRr"
type="rde:rrType"/>
<element name="crDate"
type="dateTime"/>
<element name="upRr"
type="rde:rrType" minOccurs="0"/>
<element name="upDate"
type="dateTime" minOccurs="0"/>
<element name="trDate"
type="dateTime" minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- Delete Type -->
<complexType name="deleteType">
<complexContent>
<extension base="rde:deleteType">
<choice minOccurs="0" maxOccurs="unbounded">
<element name="name"
type="eppcom:labelType"/>
<element name="roid"
type="eppcom:roidType"/>
</choice>
</extension>
</complexContent>
</complexType>
</schema>

View file

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeIDN-1.0"
xmlns:rdeIDN="urn:ietf:params:xml:ns:rdeIDN-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<annotation>
<documentation>
Registry Data Escrow IDN provisioning schema
</documentation>
</annotation>
<element name="idnTableRef" type="rdeIDN:contentType"
substitutionGroup="rde:content"/>
<element name="delete" type="rdeIDN:deleteType"
substitutionGroup="rde:delete"/>
<!-- Content Types -->
<complexType name="contentType">
<complexContent>
<extension base="rde:contentType">
<sequence>
<element name="url" type="anyURI"/>
<element name="urlPolicy" type="anyURI"/>
</sequence>
<attribute name="id" type="rdeIDN:idType" use="required"/>
</extension>
</complexContent>
</complexType>
<complexType name="deleteType">
<complexContent>
<extension base="rde:deleteType">
<sequence>
<element name="id" type="rdeIDN:idType"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- Simple Types -->
<simpleType name="idType">
<restriction base="token">
<minLength value="1"/>
<maxLength value="64"/>
</restriction>
</simpleType>
</schema>

View file

@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeNNDN-1.0"
xmlns:rdeNNDN="urn:ietf:params:xml:ns:rdeNNDN-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns:rdeIDN="urn:ietf:params:xml:ns:rdeIDN-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rdeIDN-1.0"
schemaLocation="rde-idn.xsd"/>
<annotation>
<documentation>
Registry Data Escrow NNDN provisioning schema
</documentation>
</annotation>
<element name="abstractNNDN" type="rdeNNDN:abstractContentType"
substitutionGroup="rde:content" abstract="true"/>
<element name="NNDN" substitutionGroup="rdeNNDN:abstractNNDN"/>
<element name="delete" type="rdeNNDN:deleteType"
substitutionGroup="rde:delete"/>
<!-- Content Type -->
<complexType name="abstractContentType">
<complexContent>
<extension base="rde:contentType">
<sequence>
<element name="aName"
type="eppcom:labelType"/>
<element name="uName"
type="eppcom:labelType" minOccurs="0"/>
<element name="idnTableId"
type="rdeIDN:idType" minOccurs="0"/>
<element name="originalName"
type="eppcom:labelType" minOccurs="0"/>
<element name="nameState"
type="rdeNNDN:nameState"/>
<element name="crDate"
type="dateTime"/>
</sequence>
</extension>
</complexContent>
</complexType>
<simpleType name="nameStateValue">
<restriction base="token">
<enumeration value="withheld" />
<enumeration value="blocked" />
<enumeration value="mirrored" />
</restriction>
</simpleType>
<complexType name="nameState">
<simpleContent>
<extension base="rdeNNDN:nameStateValue">
<attribute name="mirroringNS"
type="boolean" default="true"/>
</extension>
</simpleContent>
</complexType>
<!-- Delete Type -->
<complexType name="deleteType">
<complexContent>
<extension base="rde:deleteType">
<sequence>
<element name="aName"
type="eppcom:labelType" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>

View file

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeNotification-1.0"
xmlns:rdeNotification="urn:ietf:params:xml:ns:rdeNotification-1.0"
xmlns:rdeReport="urn:ietf:params:xml:ns:rdeReport-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:rdeReport-1.0"
schemaLocation="rde-report.xsd"/>
<annotation>
<documentation>
Registry Data Escrow Notification schema
</documentation>
</annotation>
<!-- Root Element -->
<element name="notification" type="rdeNotification:notificationType"/>
<!-- Notification -->
<complexType name="notificationType">
<sequence>
<element name="deaName" type="rdeNotification:nameType"/>
<element name="version" type="unsignedShort"/>
<element name="repDate" type="date"/>
<element name="status" type="rdeNotification:statusType"/>
<element name="reDate" type="dateTime" minOccurs="0"/>
<element name="vaDate" type="dateTime" minOccurs="0"/>
<element name="lastFullDate" type="date" minOccurs="0"/>
<element ref="rdeReport:report" minOccurs="0"/>
</sequence>
</complexType>
<simpleType name="nameType">
<restriction base="normalizedString">
<minLength value="1" />
<maxLength value="255" />
</restriction>
</simpleType>
<simpleType name="statusType">
<restriction base="token">
<enumeration value="DVPN"/>
<enumeration value="DVFN"/>
<enumeration value="DRFN"/>
</restriction>
</simpleType>
</schema>

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdePolicy-1.0"
xmlns:rdePolicy="urn:ietf:params:xml:ns:rdePolicy-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<annotation>
<documentation>
Registry Data Escrow Policy schema
</documentation>
</annotation>
<element name="policy" type="rdePolicy:policyType"
substitutionGroup="rde:content"/>
<complexType name="policyType">
<complexContent>
<extension base="rde:contentType">
<attribute name="scope" type="token" use="required"/>
<attribute name="element" type="anyURI" use="required"/>
</extension>
</complexContent>
</complexType>
</schema>

View file

@ -0,0 +1,165 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeRegistrar-1.0"
xmlns:rdeRegistrar="urn:ietf:params:xml:ns:rdeRegistrar-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"
xmlns:domain="urn:ietf:params:xml:ns:domain-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"
schemaLocation="eppcom.xsd"/>
<import namespace="urn:ietf:params:xml:ns:domain-1.0"
schemaLocation="domain.xsd"/>
<import namespace="urn:ietf:params:xml:ns:contact-1.0"
schemaLocation="contact.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<annotation>
<documentation>
Registry Data Escrow registrar provisioning schema
</documentation>
</annotation>
<element name="abstractRegistrar"
type="rdeRegistrar:abstractContentType"
substitutionGroup="rde:content" abstract="true"/>
<element name="registrar"
substitutionGroup="rdeRegistrar:abstractRegistrar"/>
<element name="delete" type="rdeRegistrar:deleteType"
substitutionGroup="rde:delete"/>
<!-- Content Type -->
<complexType name="abstractContentType">
<complexContent>
<extension base="rde:contentType">
<sequence>
<element name="id"
type="eppcom:clIDType"/>
<element name="name"
type="rdeRegistrar:nameType"/>
<element name="gurid"
type="positiveInteger" minOccurs="0"/>
<element name="status"
type="rdeRegistrar:statusType"/>
<element name="postalInfo"
type="rdeRegistrar:postalInfoType"
maxOccurs="2"/>
<element name="voice"
type="contact:e164Type" minOccurs="0"/>
<element name="fax"
type="contact:e164Type" minOccurs="0"/>
<element name="email"
type="eppcom:minTokenType"/>
<element name="url"
type="anyURI" minOccurs="0"/>
<element name="whoisInfo"
type="rdeRegistrar:whoisInfoType" minOccurs="0"/>
<element name="crDate"
type="dateTime"/>
<element name="upDate"
type="dateTime" minOccurs="0"/>
</sequence>
</extension>
</complexContent>
</complexType>
<simpleType name="nameType">
<restriction base="normalizedString">
<minLength value="1" />
<maxLength value="255" />
</restriction>
</simpleType>
<simpleType name="statusType">
<restriction base="token">
<enumeration value="ok"/>
<enumeration value="readonly"/>
<enumeration value="terminated"/>
</restriction>
</simpleType>
<complexType name="postalInfoType">
<sequence>
<element name="addr"
type="rdeRegistrar:addrType" />
</sequence>
<attribute name="type"
type="rdeRegistrar:postalInfoEnumType"
use="required" />
</complexType>
<simpleType name="postalInfoEnumType">
<restriction base="token">
<enumeration value="loc" />
<enumeration value="int" />
</restriction>
</simpleType>
<complexType name="addrType">
<sequence>
<element name="street"
type="rdeRegistrar:optPostalLineType"
minOccurs="0" maxOccurs="3" />
<element name="city"
type="rdeRegistrar:postalLineType" />
<element name="sp"
type="rdeRegistrar:optPostalLineType"
minOccurs="0" />
<element name="pc"
type="rdeRegistrar:pcType" minOccurs="0" />
<element name="cc"
type="rdeRegistrar:ccType" />
</sequence>
</complexType>
<simpleType name="postalLineType">
<restriction base="normalizedString">
<minLength value="1" />
<maxLength value="255" />
</restriction>
</simpleType>
<simpleType name="optPostalLineType">
<restriction base="normalizedString">
<maxLength value="255" />
</restriction>
</simpleType>
<simpleType name="pcType">
<restriction base="token">
<maxLength value="16" />
</restriction>
</simpleType>
<simpleType name="ccType">
<restriction base="token">
<length value="2" />
</restriction>
</simpleType>
<complexType name="whoisInfoType">
<sequence>
<element name="name"
type="eppcom:labelType" minOccurs="0"/>
<element name="url"
type="anyURI" minOccurs="0"/>
</sequence>
</complexType>
<!-- Delete Type -->
<complexType name="deleteType">
<complexContent>
<extension base="rde:deleteType">
<sequence>
<element name="id"
type="eppcom:clIDType" minOccurs="0"
maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>

View file

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rdeReport-1.0"
xmlns:rdeReport="urn:ietf:params:xml:ns:rdeReport-1.0"
xmlns:rdeHeader="urn:ietf:params:xml:ns:rdeHeader-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<import namespace="urn:ietf:params:xml:ns:rde-1.0"
schemaLocation="rde.xsd"/>
<import namespace="urn:ietf:params:xml:ns:rdeHeader-1.0"
schemaLocation="rde-header.xsd" />
<annotation>
<documentation>
Registry Data Escrow Report schema
</documentation>
</annotation>
<!-- Root Element -->
<element name="report" type="rdeReport:reportType"/>
<!-- Report Type -->
<complexType name="reportType">
<sequence>
<element name="id" type="rde:depositIdType"/>
<element name="version" type="unsignedShort"/>
<element name="rydeSpecEscrow" type="token"/>
<element name="rydeSpecMapping" type="token"/>
<element name="resend" type="unsignedShort"/>
<element name="crDate" type="dateTime"/>
<element name="kind" type="rde:depositTypeType"/>
<element name="watermark" type="dateTime"/>
<element ref="rdeHeader:header"/>
</sequence>
</complexType>
</schema>

View file

@ -0,0 +1,100 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rde-1.0"
xmlns:rde="urn:ietf:params:xml:ns:rde-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<annotation>
<documentation>
Registry Data Escrow schema
</documentation>
</annotation>
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" schemaLocation="eppcom.xsd"/>
<!-- Root element -->
<element name="deposit" type="rde:escrowDepositType"/>
<!-- RDE types -->
<complexType name="escrowDepositType">
<sequence>
<element name="watermark" type="dateTime"/>
<element name="rdeMenu" type="rde:rdeMenuType"/>
<element name="deletes" type="rde:deletesType" minOccurs="0"/>
<element name="contents" type="rde:contentsType"/>
</sequence>
<attribute name="type" type="rde:depositTypeType" use="required"/>
<attribute name="id" type="rde:depositIdType" use="required"/>
<attribute name="prevId" type="rde:depositIdType"/>
<attribute name="resend" type="unsignedShort" default="0"/>
</complexType>
<!-- Menu type -->
<complexType name="rdeMenuType">
<sequence>
<element name="version" type="rde:versionType"/>
<element name="objURI" type="anyURI" maxOccurs="unbounded"/>
</sequence>
</complexType>
<!-- Deletes Type -->
<complexType name="deletesType">
<sequence minOccurs="0" maxOccurs="unbounded">
<element ref="rde:delete"/>
</sequence>
</complexType>
<element name="delete" type="rde:deleteType" abstract="true"/>
<complexType name="deleteType">
<complexContent>
<restriction base="anyType"/>
</complexContent>
</complexType>
<!-- Contents Type -->
<complexType name="contentsType">
<sequence maxOccurs="unbounded">
<element ref="rde:content"/>
</sequence>
</complexType>
<element name="content" type="rde:contentType" abstract="true"/>
<complexType name="contentType">
<complexContent>
<restriction base="anyType"/>
</complexContent>
</complexType>
<!-- Type of deposit -->
<simpleType name="depositTypeType">
<restriction base="token">
<enumeration value="FULL"/>
<enumeration value="INCR"/>
<enumeration value="DIFF"/>
</restriction>
</simpleType>
<!-- Deposit identifier type -->
<simpleType name="depositIdType">
<restriction base="token">
<pattern value="\w{1,13}"/>
</restriction>
</simpleType>
<!-- A RDE 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>
<complexType name="rrType">
<simpleContent>
<extension base="eppcom:clIDType">
<attribute name="client" type="eppcom:clIDType"/>
</extension>
</simpleContent>
</complexType>
</schema>

View file

@ -0,0 +1,133 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:rgp-1.0"
xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
domain name extension schema for registry grace period
processing.
</documentation>
</annotation>
<!--
Child elements found in EPP commands.
-->
<element name="update" type="rgp:updateType"/>
<!--
Child elements of the <update> command for the
redemption grace period.
-->
<complexType name="updateType">
<sequence>
<element name="restore" type="rgp:restoreType"/>
</sequence>
</complexType>
<complexType name="restoreType">
<sequence>
<element name="report" type="rgp:reportType"
minOccurs="0"/>
</sequence>
<attribute name="op" type="rgp:rgpOpType" use="required"/>
</complexType>
<!--
New redemption grace period operations can be defined
by adding to this enumeration.
-->
<simpleType name="rgpOpType">
<restriction base="token">
<enumeration value="request"/>
<enumeration value="report"/>
</restriction>
</simpleType>
<complexType name="reportType">
<sequence>
<element name="preData" type="rgp:mixedType"/>
<element name="postData" type="rgp:mixedType"/>
<element name="delTime" type="dateTime"/>
<element name="resTime" type="dateTime"/>
<element name="resReason" type="rgp:reportTextType"/>
<element name="statement" type="rgp:reportTextType"
maxOccurs="2"/>
<element name="other" type="rgp:mixedType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="mixedType">
<complexContent mixed="true">
<restriction base="anyType">
<sequence>
<any processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</restriction>
</complexContent>
</complexType>
<complexType name="reportTextType">
<complexContent mixed="true">
<restriction base="anyType">
<sequence>
<any processContents="lax"
minOccurs="0" maxOccurs="unbounded"/>
</sequence>
<attribute name="lang" type="language" default="en"/>
</restriction>
</complexContent>
</complexType>
<!--
Child response elements.
-->
<element name="infData" type="rgp:respDataType"/>
<element name="upData" type="rgp:respDataType"/>
<!--
Response elements.
-->
<complexType name="respDataType">
<sequence>
<element name="rgpStatus" type="rgp:statusType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<!--
Status is a combination of attributes and an optional
human-readable message that may be expressed in languages
other than English.
-->
<complexType name="statusType">
<simpleContent>
<extension base="normalizedString">
<attribute name="s" type="rgp:statusValueType"
use="required"/>
<attribute name="lang" type="language" default="en"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="statusValueType">
<restriction base="token">
<enumeration value="addPeriod"/>
<enumeration value="autoRenewPeriod"/>
<enumeration value="renewPeriod"/>
<enumeration value="transferPeriod"/>
<enumeration value="pendingDelete"/>
<enumeration value="pendingRestore"/>
<enumeration value="redemptionPeriod"/>
</restriction>
</simpleType>
<!--
End of schema.
-->
</schema>

View file

@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:ietf:params:xml:ns:secDNS-1.1"
xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
domain name extension schema for provisioning
DNS security (DNSSEC) extensions.
</documentation>
</annotation>
<!-- Child elements found in EPP commands. -->
<element name="create" type="secDNS:dsOrKeyType"/>
<element name="update" type="secDNS:updateType"/>
<!-- Child elements supporting either the dsData or the keyData interface. -->
<complexType name="dsOrKeyType">
<sequence>
<element name="maxSigLife" type="secDNS:maxSigLifeType" minOccurs="0"/>
<choice>
<element name="dsData" type="secDNS:dsDataType" maxOccurs="unbounded"/>
<element name="keyData" type="secDNS:keyDataType" maxOccurs="unbounded"/>
</choice>
</sequence>
</complexType>
<!-- Definition for the maximum signature life (maxSigLife) -->
<simpleType name="maxSigLifeType">
<restriction base="int">
<minInclusive value="1"/>
</restriction>
</simpleType>
<!-- Child elements of dsData used for dsData interface -->
<complexType name="dsDataType">
<sequence>
<element name="keyTag" type="unsignedShort"/>
<element name="alg" type="unsignedByte"/>
<element name="digestType" type="unsignedByte"/>
<element name="digest" type="hexBinary"/>
<element name="keyData" type="secDNS:keyDataType" minOccurs="0"/>
</sequence>
</complexType>
<!-- Child elements of keyData used for keyData interface and optionally with dsData
interface -->
<complexType name="keyDataType">
<sequence>
<element name="flags" type="unsignedShort"/>
<element name="protocol" type="unsignedByte"/>
<element name="alg" type="unsignedByte"/>
<element name="pubKey" type="secDNS:keyType"/>
</sequence>
</complexType>
<!-- Definition for the public key -->
<simpleType name="keyType">
<restriction base="base64Binary">
<minLength value="1"/>
</restriction>
</simpleType>
<!-- Child elements of the <update> element. -->
<complexType name="updateType">
<sequence>
<element name="rem" type="secDNS:remType" minOccurs="0"/>
<element name="add" type="secDNS:dsOrKeyType" minOccurs="0"/>
<element name="chg" type="secDNS:chgType" minOccurs="0"/>
</sequence>
<attribute name="urgent" type="boolean" default="false"/>
</complexType>
<!-- Child elements of the <rem> command. -->
<complexType name="remType">
<choice>
<element name="all" type="boolean"/>
<element name="dsData" type="secDNS:dsDataType" maxOccurs="unbounded"/>
<element name="keyData" type="secDNS:keyDataType" maxOccurs="unbounded"/>
</choice>
</complexType>
<!-- Child elements supporting the <chg> element. -->
<complexType name="chgType">
<sequence>
<element name="maxSigLife" type="secDNS:maxSigLifeType" minOccurs="0"/>
</sequence>
</complexType>
<!-- Child response elements. -->
<element name="infData" type="secDNS:dsOrKeyType"/>
</schema>

View file

@ -0,0 +1,71 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Schema extracted from http://tools.ietf.org/html/draft-lozano-tmch-smd -->
<schema
targetNamespace="urn:ietf:params:xml:ns:signedMark-1.0"
xmlns:smd="urn:ietf:params:xml:ns:signedMark-1.0"
xmlns:mark="urn:ietf:params:xml:ns:mark-1.0"
xmlns:dsig="http://www.w3.org/2000/09/xmldsig#"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<annotation>
<documentation>
Schema for representing a Signed Trademark.
</documentation>
</annotation>
<import namespace="urn:ietf:params:xml:ns:mark-1.0"
schemaLocation="mark.xsd" />
<import namespace="http://www.w3.org/2000/09/xmldsig#"
schemaLocation="dsig.xsd"/>
<!--
Abstract signed mark for replacement via substitution.
-->
<element name="abstractSignedMark" type="smd:abstractSignedMarkType"
abstract="true"/>
<!--
Empty type for use in extending for a signed mark
-->
<complexType name="abstractSignedMarkType"/>
<element name="signedMark" type="smd:signedMarkType"
substitutionGroup="smd:abstractSignedMark"/>
<element name="encodedSignedMark" type="smd:encodedSignedMarkType"/>
<complexType name="signedMarkType">
<complexContent>
<extension base="smd:abstractSignedMarkType">
<sequence>
<element name="id" type="mark:idType"/>
<element name="issuerInfo" type="smd:issuerInfoType"/>
<element name="notBefore" type="dateTime"/>
<element name="notAfter" type="dateTime"/>
<element ref="mark:abstractMark"/>
<element ref="dsig:Signature"/>
</sequence>
<attribute name="id" type="ID" use="required"/>
</extension>
</complexContent>
</complexType>
<complexType name="issuerInfoType">
<sequence>
<element name="org" type="token"/>
<element name="email" type="mark:minTokenType"/>
<element name="url" type="token" minOccurs="0"/>
<element name="voice" type="mark:e164Type" minOccurs="0"/>
</sequence>
<attribute name="issuerID" type="token" use="required"/>
</complexType>
<complexType name="encodedSignedMarkType">
<simpleContent>
<extension base="token">
<attribute name="encoding" default="base64"/>
</extension>
</simpleContent>
</complexType>
</schema>