我要找选择一个属性的元素的变体,可以直接设置或引用。选择在XML实例属性(S)直接定义的属性或引用
这就是我的想法:
<root>
<element>
<attribute ref="shortname" />
</element>
<element>
<attribute name="shortname" isEditable="true" anotherattrib="0815" />
</element>
</root>
由于这也不是没有的XML解决方案的问题,这个属性的定义是,如果需要元素属性的属性“名”挺难的。
方案可能看起来像这样
<xs:element name="attribute">
<xs:complexType>
<xs:attribute name="ref" use="required" />
<xs:attribute name="name" use="required" />
</xs:complexType>
</xs:element>
是否有可能作出选择(类似于XS:为元素选择)属性之间?就像如果从名为ref的元素属性中有一个属性一样,则不允许其他属性。如果不是,属性“名称”必须设置...
这个问题听起来很纯虚和学术,但我会很高兴,如果有可能是一个解决方案,或者如果我完全错了与我有什么记: )
预先感谢您的帮助!
戴夫
我认为,只有这样,才能表达这一点,将是:全内容声明一个复杂类型,对于限制声明两个派生类型,声明父内容使用的选择时。 – 2010-10-12 20:46:48
@Alejandro:你可以声明两种类型。这不是问题,但是如何定义一个具有**相同名称**“”和不同类型的元素的选择?我不确定这是可能的。在我看来,你会收到错误,元素“”的定义是模糊的。 –
Oleg
2010-10-12 21:07:29
@Oleg:选择是两个元件(每一个与不同的派生类型),但相同的名称,**在父声明**之间,如例如:复杂类型名为'Base';从'Base'派生的complexType,名为'BaseA',有限制;对于名为'BaseB'的complexType也是一样的;元素名称“Parent”,可以在名为'Child'的元素与'BaseA'类型或名为'Child'的元素与'BaseB'类型之间进行选择。 – 2010-10-12 22:14:45