Является ли XML чувствительным к регистру? - PullRequest
101 голосов
/ 14 сентября 2011

Короткий вопрос

Является ли XML чувствительным к регистру?

Более длинный вопрос

Например:

<Shirt color="Red"/>

Атрибут color имеет тип string, который может содержать набор допустимых цветов (Red, Blue и Green).

Для проверки XML я использовал следующий XSD:

  <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>

Ожидаю ли я , чтобы принимать различные варианты регистраций: Красный, Синий и Зеленый? Или XML широко считается регистрозависимым?

Ответы [ 2 ]

75 голосов
/ 14 сентября 2011

Краткий ответ:

Да - XML ​​чувствителен к регистру.

Более длинный ответ:

Широко признается, что он учитывает регистр, однако, если вы хотите принять более гибко, взгляните на вопрос ниже, в котором обсуждается наличие нечувствительных к регистру перечислений:

Перечень нечувствительных к регистру схем XML простого типа

15 голосов
/ 14 сентября 2011

С XSD 1.1 вы можете достичь нечувствительного к регистру перечисления, используя утверждение:

<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 поддерживается в последних выпусках Saxon и Xerces.

...