【发布时间】:2016-09-12 11:37:47
【问题描述】:
是否可以声明一个对所有元素都有效的属性,无论范围如何,而不必在每个元素/类型上定义它(或者必须在每个元素/类型中包含一些全局类型)?
我不确定你会在 XSD 中的哪个位置定义这样的东西,因此我怀疑它无法完成。
【问题讨论】:
标签: xml xsd xsd-validation xml-validation
是否可以声明一个对所有元素都有效的属性,无论范围如何,而不必在每个元素/类型上定义它(或者必须在每个元素/类型中包含一些全局类型)?
我不确定你会在 XSD 中的哪个位置定义这样的东西,因此我怀疑它无法完成。
【问题讨论】:
标签: xml xsd xsd-validation xml-validation
正如您所怀疑的,在 XSD 1.0 中无法全局声明一个属性可能出现在所有元素上,而无需以某种方式调整这些元素的声明。
但是,有一些替代方法可以为每个元素重复一个公共属性定义:
@ref 它来自每个元素。在 XSD 1.1 中,您可以通过 xsd:schema 元素上的 defaultAttributes 声明指定默认属性组。
【讨论】: