Атрибут XSD для захвата «поля данных источника» - PullRequest
0 голосов
/ 09 марта 2011

У меня есть модель предметной области, которая предназначена для обобщения нескольких исходных систем. Таким образом, в некоторых случаях было принято решение перегрузить данные в новое общее поле, а не создавать несколько конкретных полей.

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

<Event>
  <Description sourceField="subject">...</Description>
  <Description sourceField="description">...</Description>
  <Description sourceField="issue">...</Description>
  <...>
</Event>

Каким образом можно добавить такой атрибут в XSD? Нужно ли специально прикреплять его к каждому такому перегруженному полю или есть общий способ разрешить атрибут для всех элементов?

Пожалуйста, не указывайте, что я должен просто добавить дополнительные поля в модель предметной области, если мне нужно различать разные данные - решение принято, мне просто нужно обойти это!

Заранее спасибо.

1 Ответ

0 голосов
/ 10 марта 2011

Не совсем.

Если все ваши объявления элементов выходят из общего определения базового типа, вы можете добавить атрибут в базу.

Если все ваши объявления элементов включают anyAttribute, вы можете сделать глобальное определение атрибута для sourceField. Тогда валидатор по крайней мере разрешит ваш атрибут, но не потребует его. И если anyAttribute равно strict или lax, то валидатор удостоверится, что содержимое атрибута является действительным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...