DRDE/AusRegEPPTK/resources/auext-1.0.xsd

176 lines
5.5 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<schema targetNamespace="urn:au:params:xml:ns:auext-1.0"
xmlns:auext="urn:au:params:xml:ns:auext-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"/>
<annotation>
<documentation>
.au Extensions to the Extensible Provisioning Protocol v1.0.
schema.
</documentation>
</annotation>
<!--
au element for use in the extensions tag
-->
<element name="extensionAU" type="auext:extensionAU_type"/>
<complexType name="extensionAU_type">
<choice>
<element name="update" type="auext:extensionAUUpdate_type"/>
<element name="create" type="auext:extensionAUCreate_type"/>
<element name="info" type="auext:extensionAUInfo_type"/>
</choice>
</complexType>
<!--
.au update command extension
-->
<complexType name="extensionAUUpdate_type">
<sequence>
<element name="registrantName" type="eppcom:labelType" minOccurs="1"/>
</sequence>
</complexType>
<!--
.au create command extension
-->
<complexType name="extensionAUCreate_type">
<sequence>
<element name="registrantName" type="eppcom:labelType" minOccurs="1"/>
<element name="registrantID" type="auext:registrantIDType" minOccurs="0"/>
<element name="eligibilityType" type="auext:eligType" minOccurs="1"/>
<element name="eligibilityName" type="eppcom:labelType" minOccurs="0"/>
<element
name="eligibilityID" type="auext:eligibilityIDType" minOccurs="0"/>
<element name="policyReason" type="auext:policyNumType" minOccurs="1"/>
</sequence>
</complexType>
<!--
.au info response extension
-->
<complexType name="extensionAUInfo_type">
<sequence>
<element name="registrantName" type="eppcom:labelType" minOccurs="1"/>
<element name="registrantID" type="auext:registrantIDType" minOccurs="0"/>
<element name="eligibilityType" type="auext:eligType" minOccurs="1"/>
<element name="eligibilityName" type="eppcom:labelType" minOccurs="0"/>
<element
name="eligibilityID" type="auext:eligibilityIDType" minOccurs="0"/>
<element name="policyReason" type="auext:policyNumType" minOccurs="1"/>
</sequence>
</complexType>
<!--
registrant id type is used for registrantID
-->
<complexType name="registrantIDType">
<simpleContent>
<extension base="eppcom:labelType">
<attribute
name="type" type="auext:registrant_au_idType" use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
eligibility id type is used for eligibilityID
-->
<complexType name="eligibilityIDType">
<simpleContent>
<extension base="eppcom:labelType">
<attribute
name="type" type="auext:eligibility_au_idType" use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
enumeration of valid registrant ID types for the .au namespace
-->
<simpleType name="registrant_au_idType">
<restriction base="token">
<enumeration value="ACN"/>
<enumeration value="ABN"/>
<enumeration value="OTHER"/>
</restriction>
</simpleType>
<!--
enumeration of valid eligibility ID types for the .au namespace
-->
<simpleType name="eligibility_au_idType">
<restriction base="token">
<enumeration value="ACN"/>
<enumeration value="ABN"/>
<enumeration value="VIC BN"/>
<enumeration value="NSW BN"/>
<enumeration value="SA BN"/>
<enumeration value="NT BN"/>
<enumeration value="WA BN"/>
<enumeration value="TAS BN"/>
<enumeration value="ACT BN"/>
<enumeration value="QLD BN"/>
<enumeration value="TM"/>
<enumeration value="OTHER"/>
</restriction>
</simpleType>
<!--
enumeration of valid Eligibility Types for the .au namespace
-->
<simpleType name="eligType">
<restriction base="token">
<enumeration value="Charity"/>
<enumeration value="Child Care Centre"/>
<enumeration value="Citizen/Resident"/>
<enumeration value="Club"/>
<enumeration value="Commercial Statutory Body"/>
<enumeration value="Company"/>
<enumeration value="Government School"/>
<enumeration value="Higher Education Institution"/>
<enumeration value="Incorporated Association"/>
<enumeration value="Industry Body"/>
<enumeration value="National Body"/>
<enumeration value="Non-Government School"/>
<enumeration value="Non-profit Organisation"/>
<enumeration value="Other"/>
<enumeration value="Partnership"/>
<enumeration value="Pending TM Owner"/>
<enumeration value="Political Party"/>
<enumeration value="Pre-school"/>
<enumeration value="Registered Business"/>
<enumeration value="Religious/Church Group"/>
<enumeration value="Research Organisation"/>
<enumeration value="Sole Trader"/>
<enumeration value="Trade Union"/>
<enumeration value="Trademark Owner"/>
<enumeration value="Training Organisation"/>
</restriction>
</simpleType>
<!--
policy numbers can be allocated up to 106. Less than the max number
of policy values may be valed in the .au registry. This will be handled
by registry command validation. (this is done so that a new schema does
not have to be released each time the policy reasons are modified)
-->
<simpleType name="policyNumType">
<restriction base="integer">
<minInclusive value="1"/>
<maxInclusive value="106"/>
</restriction>
</simpleType>
<!--
End of schema.
-->
</schema>