Le XML est-il sensible à la casse?

courte question

XML Est sensible à la casse?

question plus longue

par exemple:

<Shirt color="Red"/>

l'attribut couleur est de type string qui peut contenir un ensemble de couleurs valides ( Red , Blue et Green ).

pour valider le XML, j'ai utilisé le XSD suivant:

  <xs:simpleType name="ColorType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Red"/>
      <xs:enumeration value="Blue"/>
      <xs:enumeration value="Green"/>
    </xs:restriction>
  </xs:simpleType>

Suis-je attendu pour accepter différents cas, les variations de Rouge, de Bleu et de Vert? Ou le XML est-il largement accepté comme sensible à la casse?

90
demandé sur Ian 2011-09-14 14:25:18

2 réponses

Brève Réponse:

Oui-le XML est sensible à la casse.

Plus Longue Réponse:

il est largement accepté comme sensible à la casse, cependant si vous voulez accepter de manière plus souple, jetez un oeil à la question ci-dessous, qui traite d'avoir des énumérations non sensibles à la casse:

"1519130920 de Schéma XML" Insensible à la casse Énumération de Type Simple Chaîne de caractères

69
répondu Jon Egerton 2017-10-04 15:26:09

avec XSD 1.1 vous pouvez obtenir une énumération non sensible à la casse en utilisant une assertion:

<xs:simpleType name="RGB">
  <xs:restriction base="xs:string">
    <xs:assert test="lower-case($value) = ('red', 'green', 'blue')"/>
  </xs:restriction>
</xs:simpleType>

XSD 1.1 est supporté dans les versions récentes de Saxon et Xerces.

14
répondu Michael Kay 2011-09-14 11:16:29