Добавить метаданные в определение XSD - PullRequest
3 голосов
/ 11 марта 2009

Не всем, кто знаком с XSD, интересно, можно ли сделать следующее:

<xs:group name="SomeGroup">
    <xs:sequence>
        <xs:element name="Groupingcode" type="OurType" origin="DB" />
        <xs:element name="Description" type="StringType" origin="XML" />

Для пояснения: у меня есть файл схемы XSD. Мне нужно сгенерировать XML-файл в соответствии с XSD (эта часть работает нормально), содержащий данные базы данных. Тем не менее, некоторые элементы нуждаются в дополнительных данных, чтобы найти правильное поле для получения из базы данных. Вот где должен появиться тег origin . Это позволило бы мне описать в XSD, где искать данные. Тег не обязательно должен присутствовать в сгенерированном XML, но, если возможно, тот же XSD будет использоваться для проверки сгенерированного XML. Другой способ - использовать отдельный файл XML для описания этого, я знаю. Но я хотел бы знать, можно ли вообще сделать это в моем XSD.

Приведенный выше фрагмент генерирует следующий XML:

<SomeGroup>
    <Groupingcode>None</Groupingcode>
    <Description>This item does not belong to any group.</Description>

Надеюсь, это имеет смысл.

1 Ответ

3 голосов
/ 11 марта 2009

Вперед. Просто поместите ваши дополнительные атрибуты в собственное пространство имен и создайте схему, которая их определяет. Microsoft делает это для файлов .XSD, сгенерированных при создании DataSet.

...