1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
| <?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="CAB" type="typeCàB"/>
<xs:simpleType name="typeCàB">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{13}"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="typePlaque">
<xs:sequence>
<xs:element ref="CAB"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="typeNomPorteConsommable">
<xs:restriction base="xs:string">
<xs:pattern value="Cassette|Portoir"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="typeEmplacement">
<xs:restriction base="xs:integer">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="4"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="typeConsommable">
<xs:sequence>
<xs:element ref="CAB"/>
</xs:sequence>
<xs:attribute name="Emplacement" type="typeEmplacement" use="required"/>
</xs:complexType>
<xs:simpleType name="typeNomLigne">
<xs:restriction base="xs:string">
<xs:pattern value="[A-D]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="typePositionnement">
<xs:restriction base="xs:string">
<xs:pattern value="Bas|Haut"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="typeLigne">
<xs:sequence minOccurs="4" maxOccurs="4">
<xs:element name="Consommable" type="typeConsommable"/>
</xs:sequence>
<xs:attribute name="Nom" type="typeNomLigne" use="required"/>
<xs:attribute name="Positionnement" type="typePositionnement" use="required"/>
</xs:complexType>
<xs:complexType name="typePorteConsommable">
<xs:sequence>
<xs:element name="Type" type="typeNomPorteConsommable"/>
<xs:element ref="CAB"/>
<xs:element name="Ligne" type="typeLigne" minOccurs="1" maxOccurs="4">
<xs:unique name="unique-Consommable">
<xs:selector xpath="Consommable"></xs:selector>
<xs:field xpath="@Emplacement"></xs:field>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="typeCOMETE">
<xs:sequence>
<xs:element name="Plaque" type="typePlaque"/>
<xs:element name="PorteConsommable" type="typePorteConsommable" maxOccurs="3">
<xs:unique name="unique-Ligne">
<xs:selector xpath="Ligne"></xs:selector>
<xs:field xpath="@Nom"></xs:field>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="COMETE" type="typeCOMETE">
<xs:unique name="unique-CAB">
<xs:selector xpath="*"></xs:selector>
<xs:field xpath="CAB"></xs:field>
</xs:unique>
<!-- <xs:unique name="unique-Cons">
<xs:selector xpath="*/*/Consommable"></xs:selector>
<xs:field xpath="CAB"></xs:field>
</xs:unique>
-->
</xs:element>
</xs:schema> |
Partager