attribut même nom avec valeur unique
Bonjour ,
Voici mon xml:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
<?xml version="1.0" encoding="utf-8"?>
<articles >
<article>
<city lg="fr">ville_en_fr</city>
<city lg="nl">ville_en_nl</city>
<city lg="de">ville_en_de</city>
<city lg="en">ville_en_en</city>
<title lg="fr">titre_en_fr</title>
<title lg="nl">titre_en_nl</title>
<title lg="de">titre_en_de</title>
<title lg="en">titre_en_en</title>
</article>
</articles> |
Voici mon xml:
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 27 28 29 30 31 32 33 34 35 36 37 38
| <?xml version="1.0" ?>
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" version="1.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="articles" type="articlesType" />
<xsd:complexType name="articlesType">
<xsd:sequence>
<xsd:element name="article" type="articleType" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="articleType">
<xsd:sequence>
<xsd:element minOccurs="4" maxOccurs="4" name="city" type="cityType" />
<xsd:element minOccurs="4" maxOccurs="4" name="title" type="titleType" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="titleType">
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="lg" type="Langue" use="required"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:complexType name="cityType">
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="lg" type="Langue" use="required"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
<xsd:simpleType name="Langue" >
<xsd:restriction base="xsd:string">
<xsd:enumeration value="en" />
<xsd:enumeration value="fr" />
<xsd:enumeration value="de" />
<xsd:enumeration value="nl" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema> |
Ce que j'aimerai faire,c'est que l’énumération soit obligatoire et unique ,
donc pour le noeud city , il faudrait pas qu'il y ait 2 fois le noeud city avec la même valeur de l'attribut mais de chacune des langues .
Donc ceci ne devait pas passer :
Code:
1 2 3 4 5 6 7 8 9
|
<city lg="fr">ville_en_fr</city>
<city lg="nl">ville_en_nl</city>
OU
<city lg="fr">ville_en_fr</city>
<city lg="fr">ville_en_fr</city>
<city lg="de">ville_en_de</city>
<city lg="en">ville_en_en</city> |
Bien à vous,
Merci
--
Tiger360