2
我想我的XML架構包含兩個字符串的枚舉,一個用於擴展其它:一個XML模式枚舉可以擴展另一個嗎?
- 枚舉1:狗,貓
- 枚舉2(增加了「蛇」到第一個):狗,貓,蛇
我試過union,但由此產生的類型似乎並沒有成爲一個枚舉,至少它不是由xAmple這樣的認可。
有沒有辦法有一個枚舉再延長,仍然是一個枚舉?
我想我的XML架構包含兩個字符串的枚舉,一個用於擴展其它:一個XML模式枚舉可以擴展另一個嗎?
我試過union,但由此產生的類型似乎並沒有成爲一個枚舉,至少它不是由xAmple這樣的認可。
有沒有辦法有一個枚舉再延長,仍然是一個枚舉?
簡單類型只能通過限制而不是擴展導出。 (聯盟是特殊的,並且被認爲是anySimpleType
的限制。)
如果你只是想避免重複(而不是定義層次結構),那麼聯合應該適用於驗證,儘管一些工具贏得'不要看着工會做些聰明的事情。
另一種選擇是,以限定一個基本類型將所有的值(狗,貓,蛇),然後推導出只包含所述子集的類。這就給了你一個層次,但派生類必須通過正則表達式重複的子集(狗,貓)或禁止他人(蛇)。 (和使用正則表達式可能也絆倒了許多編輯。)
可悲的是,用一個正則表達式來排除枚舉的成員不會在XML編輯器我試過(Eclipse和xAmple)工作。 – 2011-04-05 23:43:29