У меня есть XML-схема (XSD), которую я хочу использовать для проверки данных XML, но одна очень специфическая вещь в отношении данных XML не совместима.Я хочу создать альтернативный XSD для успешной проверки XML.Более конкретно, я хочу расширить определение типа, чтобы разрешить значение, не допускаемое исходным XSD.Нецелесообразно изменять исходный XSD.
Вот исходное определение из исходного XSD:
<simpleType name="fooType">
<restriction base="token">
<pattern value="[a-z]+"/>
<enumeration value="foo"/>
</restriction>
</simpleType>
Я хочу разрешить значение "123" также для объекта, который использует этоопределение типа.Итак, я попробовал это:
<redefine schemaLocation="original.xsd">
<simpleType name="fooType">
<extension base="orig:fooType">
<enumeration value="123"/>
</extension>
</simpleType>
</redefine>
Я признаю, что я просто наплеватель, я не знаю XSD.Но прежде чем читать стандарт, я хочу знать, возможно ли это вообще?Все (и я имею в виду все ) примеры, которые я мог найти для xsd: переопределить, были ограничивают возможные значения, а не расширяют их.
А если не использовать xsd: redefine, то как мне это сделать?
Редактировать: Связанные, но неинформативные: Расширение XSD-файлов