Validation d'unicité de l'attribut Name
Bonjour,
Je cherche depuis 3 semaines à valider un schema xml.
Dans ce dernier j'aimerais bien que l'attribut Name des tags Insert soient uniques, mais je ne parviens à rien.
Voici le xsd simplifié avec un seul tag parent et sous tag
Code:
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
|
<xs:complexType name="TypeQueryList">
<xs:sequence>
<xs:element name="Inserts" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="1" name="Insert">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="name" type="xs:string" use="required"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:unique name="unique-Insert-name">
<xs:selector xpath="Inserts/Insert"/>
<xs:field xpath="@name"/>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="QueryList" type="TypeQueryList"/> |
Le xml donnerait
Code:
1 2 3 4 5 6 7 8 9
|
<QueryList xmlns="http://www.osames.org/osamesorm"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.osames.org/osamesorm file:/C:/Development/Tests/TestXmlValidation/TestValidation/xml_schemas/orm.xsd">
<Inserts>
<Insert name="test1"></Insert>
<Insert name="test1"></Insert>
</Inserts>
</QueryList> |
Je suis complètement largué sur comment avoir une erreur si j'ai déjà un nom donné.
Merci.