XML element avec attribut - generation XJC
Bonjour,
je souhaite définir un type énuméré avec un attribut de la forme:
<param>
<enum attr="attr1">valeur 1</enum>
<enum attr="attr2">valeur 2</enum>
</param>
Donc j'ai défini mon XSD comme ceci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <!-- param -->
<xsd:complexType name="ParamType">
<xsd:sequence>
<!-- enumType -->
<xsd:element name="enum" type="enumType"
minOccurs="0" maxOccurs="unbounded">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- enumType -->
<xsd:complexType name="enumType">
<xsd:attribute name="attr" type="xsd:string" use="required" />
</xsd:complexType> |
Je compile mon code et j'obtiens une classe java EnumType avec les fonctions getAttr() et setAttr(string value).
Question: comment puis-je lire la valeur de mon EnumType? La génération ne m'offre aucune fonction pour lire ce qu'il y a entre <enum> et </enum>.
Pour le moment je contourne le problème en créant un attribut "value" et je lis dedans, mais ca m'oblige à abandonner le format <enum attr="">value</enum> au profit de <enum attr="" value="value" />, ... ce qui me dérange "conceptuellement" parlant.
Merci par avance pour tout dépannage!
... et bonnes fêtes