用于捕获“源数据字段”的XSD属性

时间:2011-03-09 11:31:48

标签: xsd

我有一个域模型,旨在概括几个源系统。因此,在某些情况下,决定将数据重载到新的通用字段中,而不是创建几个特定字段。

考虑到这一点,当源系统数据映射到新域模型时,我希望将源字段名记录为属性,例如:

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

将这样的属性添加到XSD中的适当方法是什么?我是否需要专门将它附加到每个这样的重载字段,或者是否有一种允许跨所有元素的属性的一般方法?

请注意,如果我需要区分不同的数据 - 我已经做出了决定,我只需要解决它,我就应该在域模型中添加额外的字段!

提前致谢。

1 个答案:

答案 0 :(得分:0)

不是。

如果所有元素声明都从公共基本类型定义扩展,那么您可以将该属性添加到基础。

如果所有元素声明都包含anyAttribute,则可以为sourceField创建全局属性定义。然后验证器至少允许您的属性,但不需要。如果anyAttributestrictlax,验证者将确保该属性的内容有效。