我的XSD文件中有两个元素:
<element name="accountnumber" type="" />
<element name="accounttype" type="" />
帐户有两种类型:1)保存2)当前
保存和当前帐户类型的帐号格式应该不同。
如何在XSD中实现这一目标?是否可以在XSD中编写ifs。
答案 0 :(得分:0)
如果<SavingsAccount>
和<CurrentAccount>
是不同的元素名称,那么它们可以有不同的类型,并且这两种类型都可以包含<AccountNumber>
元素,并且这些元素可以有不同的类型 - 只需确保在每种情况下,AccountNumber都是本地元素声明,而不是对全局元素声明的引用。
如果您通过属性(例如<account type="current">
和<account type="savings">
)来干扰帐户类型,则该解决方案不起作用。在这种情况下,您将需要使用名为条件类型分配的XSD 1.1功能,其中元素的类型可能取决于其属性的值。 XSD 1.1目前在Xerces和Saxon中实现。