Je voudrais définir un type complexe XSD en utilisant un autre type complexe.Extension de type complexe XSD avec un autre type complexe
<xs:complexType name="A">
<!-- sequence with some elements -->
</xs:complexType>
<xs:complexType name="B">
<!-- sequence with some elements -->
</xs:complexType>
<xs:complexType name="C">
<xs:complexContent>
<xs:extension base="A">
<!-- ??? reference to complex type B ??? -->
</xs:extension>
</xs:complexContent>
</xs:complexType>
Y at-il un moyen de le faire sans déclarer un nouvel élément de type B?
EDIT:
Maintenant que je pense, type d'extension avec un autre type est probablement pas autorisé afin d'interdire l'auto-prolongation. Comme RCB l'a suggéré, on peut utiliser un groupe comme une solution de contournement comme
<xs:complexType name="A">
<!-- sequence with some elements -->
</xs:complexType>
<xs:group name="B">
<!-- sequence with some elements -->
</xs:group>
<xs:complexType name="B">
<xs:group ref="B"/>
</xs:complexType>
<xs:complexType name="C">
<xs:complexContent>
<xs:extension base="A">
<xs:group ref="B"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
pour autant que je sache, il n'y a pas d'autre moyen. – Kachna