Comment valider une chaîne vide balise de valeur dans xsd
J'ai un fichier xml qui est d'avoir des valeurs de date et d'autres types de données.
<Purchasedate Name="purcaseDate" value=""/>
Je suis la validation de ces fichiers xml avec un fichier xsd.
Dans xsd shcema j'ai écrit un modèle d'expression régulière pour dd/mm/yyyy
format.
Cela fonctionne bien si la valeur de l'attribut à une valeur.
Mon modèle est la validation par rapport à la valeur de l'attribut.
Le terrain (purchasedate
) n'est pas obligatoire.
si valeur="", cela signifie que mon modèle est de valider à l'encontre d'une chaîne vide aussi, ce qui n'est pas obligatoire.
J'ai besoin de valider le champ facultatif
et je suis en utilisant <xs:attribute name="PurchaseDate" use="optional">
aussi.
J'ai besoin de valider ce domaine lors de la balise de valeur n'est pas vide.
Vous devez vous connecter pour publier un commentaire.
C'est trop facile ..
Juste tout ce que vous avez à faire est d'inclure vide spécification de la chaîne dans votre
pattern
C'est la façon de le faire ..
<xs:pattern value="|(Regular_pattern_goes_here)"/>
Pour référence, j'ai écrit un échantillon des morceaux de codes .. il suffit d'aller à travers eux ..
XML exemple:
exemple XSD:(comprend le type personnalisé def)
essayez d'ajouter cet attribut nillable="true" dans la balise xml de définition
Aussi, vous pouvez prendre un coup d'oeil à son lien http://www.zvon.org/xxl/XMLSchemaTutorial/Output/ser_over_st0.html
Meilleur Reagds,
Iordan
Le caractère '?' dans la Regex signifie que le personnage avant qu'il ne doit apparaître 0 ou 1 fois.
Afin de résoudre votre problème, vous devez envelopper la regex dans la parenthèse et de mettre un questionmark à la fin:
Utilisation de ce type sur votre terrain et vous devriez être bien
Si vous le contrôle de la syntaxe du XML, vous devez envisager de définir l'élément comme suit. Depuis XML-Schema fournit déjà une date de type, vous devez l'utiliser, sauf si vous avez une très bonne raison. Je dis cela parce que c'est plus facile pour les autres d'utiliser le xml et pour vous d'utiliser au mieux le code de cadres plus tard. Je ne comprend pas l'attribut "name" parce qu'il paraît superflu de le nom de l'élément.