如何在 xsd 上定义不同的属性范围?
<Metamodel>
<Package Name="serhat">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
<Package Name="serhat2">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
<Class Name="serhat"></Class>
</Metamodel>
我在元素上有名称属性。此名称属性在包元素中必须是唯一的 但在类元素中名称属性可能会在另一个类元素上重复,例如;
<Package Name="serhat">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
<Package Name="serhat2">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
我如何定义这个属性?
<Metamodel>
<Package Name="serhat">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
<Package Name="serhat2">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
<Class Name="serhat"></Class>
</Metamodel>
i have name attribute on elements.This name attribute must be unique in Package element
but in Class element name attribute may repeat on another class element like;
<Package Name="serhat">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
<Package Name="serhat2">
<OwnedType>
<Class Name="serhat"></Class>
</OwnedType>
</Package>
how can i define this attribute ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我相信你想要的不是属性,而是身份约束。因此,生成的 XSD 将如下所示(我假设 Package 下的类必须以某种方式重复):
使用此假设模型,以下 XML 将验证:
但不是这样:
错误将是:
I believe that what you want is not in the attribute, but in a identity constraint. So, a generated XSD would look like this (I assume the Class under Package must somehow repeat):
With this assumed model, the following XML will validate:
But not this:
The error would be: