我在XSD文件中的兩個元素:條件的XSD
<element name="accountnumber" type="" />
<element name="accounttype" type="" />
有兩種類型的帳戶:1)保存2)當前
的賬戶號碼的格式應該是保存和不同當前帳戶類型。
我該如何在XSD中實現這一目標?是否可以在XSD中編寫ifs?
我在XSD文件中的兩個元素:條件的XSD
<element name="accountnumber" type="" />
<element name="accounttype" type="" />
有兩種類型的帳戶:1)保存2)當前
的賬戶號碼的格式應該是保存和不同當前帳戶類型。
我該如何在XSD中實現這一目標?是否可以在XSD中編寫ifs?
如果<SavingsAccount>
和<CurrentAccount>
是不同的元素名稱,那麼他們可以有不同的類型,這兩種類型可以包括<AccountNumber>
元素,這些可以有不同的類型 - 只要確保在各種情況下賬戶號碼是本地元素聲明,而而不是對全局元素聲明的引用。
如果您通過屬性(例如<account type="current">
和<account type="savings">
)阻止帳戶類型,那麼該解決方案不起作用。在這種情況下,您將需要使用名爲Conditional Type Assignment的XSD 1.1功能,其中元素的類型可能取決於其屬性的值。 XSD 1.1目前在Xerces和Saxon中實施。
當屬性是xsi:type時,可以使用屬性進行區分。 –
只是爲了確認你所問的問題,你基本上提出了兩個問題,首先是如何定義'accounttype'爲「Savings」或「Checking」並拒絕其他任何事情。第二,你正在尋找基於'accounttype'中的值來定義'accountnumber'的格式? – psubsee2003
@ psubsee2003第一個問題可以使用我知道的限制來完成......但是我提出了第二個問題,您提到 –