Validate contact specs against schema #2660

This commit is contained in:
Martin Lensment 2015-06-01 17:07:02 +03:00
parent 1e9426ce7b
commit 257fd619ae
4 changed files with 221 additions and 35 deletions

View file

@ -12,6 +12,7 @@
-->
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" schemaLocation="doc/schemas/eppcom-1.0.xsd"/>
<import namespace="urn:ietf:params:xml:ns:epp-1.0" schemaLocation="doc/schemas/epp-1.0.xsd"/>
<import namespace="urn:ietf:params:xml:ns:eis-1.0" schemaLocation="doc/schemas/eis-1.0.xsd"/>
<annotation>
<documentation>
@ -94,7 +95,7 @@
-->
<complexType name="createType">
<sequence>
<element name="id" type="eppcom:clIDType"/>
<element name="id" type="eppcom:clIDType" minOccurs="0"/>
<element name="postalInfo" type="contact:postalInfoType"
maxOccurs="2"/>
<element name="voice" type="contact:e164Type"
@ -103,10 +104,9 @@
minOccurs="0"/>
<element name="email" type="eppcom:minTokenType"/>
<element name="ident" type="contact:identType"
minOccurs="0"/>
<element name="authInfo" type="contact:authInfoType"/>
<element name="disclose" type="contact:discloseType"
minOccurs="0"/>
minOccurs="0"/>
<element name="authInfo" type="contact:authInfoType" minOccurs="0"/>
</sequence>
</complexType>
@ -117,8 +117,7 @@
minOccurs="0"/>
<element name="addr" type="contact:addrType"/>
</sequence>
<attribute name="type" type="contact:postalInfoEnumType"
use="required"/>
<attribute name="type" type="contact:postalInfoEnumType"/>
</complexType>
<simpleType name="postalInfoEnumType">
@ -148,21 +147,6 @@
</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"/>
@ -240,8 +224,6 @@
minOccurs="0"/>
<element name="authInfo" type="contact:authInfoType"
minOccurs="0"/>
<element name="disclose" type="contact:discloseType"
minOccurs="0"/>
</sequence>
</complexType>
@ -331,8 +313,6 @@
minOccurs="0"/>
<element name="authInfo" type="contact:authInfoType"
minOccurs="0"/>
<element name="disclose" type="contact:discloseType"
minOccurs="0"/>
</sequence>
</complexType>

View file

@ -26,8 +26,8 @@
<sequence>
<element name="legalDocument" type="eis:legalDocType"
minOccurs="0" maxOccurs="1"/>
<!-- <element name="ident" type="eis:identType"
minOccurs="0" maxOccurs="1"/> -->
<element name="ident" type="eis:identType"
minOccurs="0" maxOccurs="1"/>
</sequence>
</complexType>
@ -55,10 +55,11 @@
</restriction>
</simpleType>
<!-- <complexType name="identType">
<complexType name="identType">
<simpleContent>
<extension base="normalizedString">
<attribute name="type" type="eis:identEnumType" use="required"/>
<attribute name="cc" type="eis:ccType" use="required"/>
</extension>
</simpleContent>
</complexType>
@ -70,5 +71,12 @@
<enumeration value="birthday"/>
<enumeration value="passport"/>
</restriction>
</simpleType> -->
</simpleType>
<simpleType name="ccType">
<restriction base="normalizedString">
<minLength value="2"/>
<maxLength value="2"/>
</restriction>
</simpleType>
</schema>