Проверка схемы не обрезает строки перед проверкой - PullRequest
6 голосов
/ 08 ноября 2011

У меня проблема с проверкой моего XML-файла после его автоматического форматирования.Проверка не обрезает строку перед ее проверкой.Это ошибка в реализации валидации XML .NET или это допустимое поведение?Если это допустимое поведение, как обычно обрабатываются подобные случаи, потому что, по моему мнению, два XML-файла эквивалентны.

Мой XSD:

<xs:schema ...>
  ...
  <xs:simpleType name="ItemTypeData">
    <xs:restriction base="xs:string">
      <xs:enumeration value="ItemA" />
    </xs:restriction>
  </xs:simpleType>
</xs:schema>

Мой XML перед форматированиемпроходит):

...
<ItemType>ItemA</ItemType>
...

После форматирования (проверка не проходит):

...
<ItemType>
  ItemA
</ItemType>
...

1 Ответ

3 голосов
/ 08 ноября 2011

Ваш валидатор ведет себя правильно, учитывая способ определения схемы. Либо вам нужно остановить средство форматирования, использующее такие возможности с содержимым, либо изменить схему - например, сделав ItemTypeData ограничением xs: token, а не xs: string (в xs: token, считается начальный и конечный пробелы незначительный).

...