2010-11-08 9 views
2

Disons que je peux obtenir XML comme ceci:Schéma XML: Comment valider un attribut avec plusieurs clés concaténées?

<Property Name="Title"/> 
<Property Name="Content"/> 
<Property Name="Address"/> 

<Source properties="Title,Content,Address"/> 

Comment Coud Je valide les éléments « propriétés » attribut de « Source », de sorte que toute composition des « biens » énumérées ci-dessus pourrait être vérifié? (Par exemple: "Titre", "Titre, Contenu", toutes ces concaténations sont correctes, alors que "Titre, URL" n'est pas correct.)

+0

On m'a dit de produire un XSD (simple) pour valider le format XML avec ce format, assez ennuyé de le faire si cela ne peut pas être fait. –

Répondre

0

Vous ne pouvez pas faire cela dans XML Schema. Vous pouvez le faire avec votre propre niveau de validation supérieur basé sur XSLT, XQuery ou Schematron, par exemple.

0

x a raison; La validation signifie toujours, pour faire correspondre un fichier XML avec un schéma donné. Mais il n'y a pas de schéma impliqué, votre problème est plutôt de lire un fichier de données et de valider les entrées ultérieures par rapport aux précédentes (si la case ci-dessus est censée représenter un fichier) ou un fichier de données par rapport à un autre. est censé être un séparateur de fichiers). Au-delà de cela, un schéma définit la structure des éléments et des attributs et éventuellement des types de données (valeurs uniquement, s'il existe une énumération stricte des valeurs valides). Il n'y a pas non plus de correspondance ici, mais vous voulez vérifier les données par rapport aux données. Désolé, l'outil d'un schéma ne correspond pas au problème à résoudre.