J'ai une situation où un élément dans le fichier XML peut être de deux types différents dans le XSD. Ce que je veux faire est d'abord de valider la valeur entrée au type plus strict (si c'est une personne qui remplit le formulaire) et si cela ne fonctionne pas, validez-la au type strict inférieur (si c'est une organisation qui remplit le formulaire), sinon laissez la validation échouer si elle ne valide pas du tout.xsd même élément, différents types?
C'est donc essentiellement il:
<xsd:complexType name="ForminfoType"> `
<xsd:sequence>
<xsd:element name="formname" type="xsd:string" />
<xsd:element name="timestamp" type="xsd:dateTime" />
<xsd:element name="sender" type="PersonType" minOccurs="0" />
<xsd:element name="receiver" type="OrganizationType" minOccurs="0" />
<xsd:element name="signature" type="xsd:string" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
Ce que le PersonType déclare est essentiellement un numéro à 12 chiffres construit selon un modèle spécifique. Ce que le type d'organisation déclare est essentiellement un nombre à 10 chiffres.
donc ce que je voudrais logiquement faire est de mettre ceci:
<xsd:element name="sender" type="OrganizationType" minOccurs="0" />
dans la séquence, mais vous ne pouvez pas avoir deux éléments avec le même nom et différents types. Donc, je pense que je dois le résoudre d'une autre manière.
Ce que j'ai trouvé était le suivant: http://xsd.stylusstudio.com/2007Oct/post05003.htm
Ce qui est à peu près ce que je veux faire, mais je ne suis pas sûr qu'il est possible. Quelqu'un at-il d'autres idées sur la façon de résoudre ce problème?
Merci d'avance.
Vous ne voulez pas utiliser les accents graves pour plusieurs lignes de code. Sélectionnez simplement les lignes et utilisez Control-K. –
@Arizon: pour mettre en forme le code correctement, mettez-le en surbrillance puis cliquez sur le bouton avec les zéros et les uns (01010 0101010) dans la barre d'outils au dessus de l'éditeur! –