389 lines
12 KiB
XML
389 lines
12 KiB
XML
<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-1.0.xsd"/>
|
|
<import namespace="urn:ietf:params:xml:ns:epp-1.0"
|
|
schemaLocation="epp-1.0.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>
|