Weitere Beispiele für eigene Datentypen:
...
<xs:element name="Zahl">
<xs:simpleType>
<xs:restriction base="xs:nonNegativeInteger">
<xs:maxInclusive value="99999"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Zahl">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="\d{5}"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Zahl">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="20"/>
<xs:minLength value="10"/>
<xs:pattern value="\d*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Zahl">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:fractionDigits value="2"/>
<xs:minExclusive value="0"/>
<xs:maxInclusive value="9.99"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Zahl">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:minInclusive value="0.01"/>
<xs:pattern value="\d\.\d\d"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Zahl">
<xs:simpleType>
<xs:restriction base="xs:decimal">
<xs:minInclusive value="0.01"/>
<xs:maxInclusive value="9999.99"/>
<xs:pattern value="(0|[1-9][0-9]*)\.\d\d"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Wert">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="2"/>
<xs:minLength value="1"/>
<xs:pattern value="[0-9ABX]*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="WertOder-TEST-">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10"/>
<xs:minLength value="1"/>
<xs:pattern value="[0-9A-Z]*|-TEST-"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Wert">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:maxLength value="10"/>
<xs:minLength value="1"/>
<xs:pattern value="[a-zA-Z0-9].*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="JaNein">
<xs:simpleType>
<xs:restriction base="xs:boolean"/>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Ja">
<xs:simpleType>
<xs:restriction base="xs:boolean">
<xs:pattern value="true|1"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Auswahl">
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="AA"/>
<xs:enumeration value="B"/>
<xs:enumeration value="XY"/>
<xs:enumeration value="XY"/>
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Jahr">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="(19\d\d|20\d\d)"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Datum">
<xs:simpleType>
<xs:restriction base="xs:date">
<xs:minInclusive value="1900-01-01+01:00"/>
<xs:maxInclusive value="2099-12-31+01:00"/>
<xs:pattern value=".+\+02:00"/>
<xs:pattern value=".+\+01:00"/>
<xs:pattern value=".+\+00:00"/>
<xs:pattern value=".+Z"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...
...
<xs:element name="Wert">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}]+"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
...