multiple élément avec le même nom invalide
Bonjour,
Je dois respecter une spécification exigeant d'avoir plusieurs blocs xml portant le même nom.
Voici, ce que j'aimerais comme structure xml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <?xml version="1.0" encoding="utf-8"?>
<xml>
<Content>
<libellenom>
<ss_nom1 />
<ss_nom2>str1234</ss_nom2>
</libellenom>
<libellenom>
<ss_nom1 />
<ss_nom2 />
<ss_nom3 />
<ss_nom4 />
</libellenom>
<libellenom>
<ss_nom1 />
<ss_nom2 />
</libellenom>
</Content>
</xml> |
et voici une partie du schéma xsd :
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
| <!-- CONTENT -->
<xs:complexType name="ContentType">
<xs:sequence>
<xs:element name="libellenom" type="type1" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="libellenom" type="type2" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="libellenom" type="type3" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="type1">
<xs:sequence>
<xs:element name="ss_nom1" nillable="false"/>
<xs:element name="ss_nom2" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="type2">
<xs:sequence>
<xs:element name="ss_nom1" nillable="false"/>
<xs:element name="ss_nom2"/>
<xs:element name="ss_nom3"/>
<xs:element name="ss_nom4"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="type3">
<xs:sequence>
<xs:element name="ss_nom1" nillable="false"/>
<xs:element name="ss_nom2"/>
</xs:sequence>
</xs:complexType>
</xs:schema> |
je ne parviens pas à valider ce schéma comme plusieurs éléments d'une même séquence portent le même nom et ne possédent pas le même type,
mais n'y aurait-il pas un moyen de contourner cela pour parvenir à forcer sa validation ?
Cordialement,