我想動態這個詞有誤導性。我感興趣的元素可能有三種可能的子結構。一個例子可以是:動態子結構的xml元素的XSD設計
<body>
<date></date>
<addr></addr>
</body>
或
<body>
<loc></loc>
<time> </time>
<city> </city>
</body>
或
<body>
//a whole lot of different sub elements
</body>
我停留在設計,可以被用來驗證上述三種結構中的XSD(三種結構是已知和固定)。我不確定我是否正確地提出了這個問題。請闡明解決方案,甚至是可行性。
爲了完整性......有一個潛在的警告,因爲第三組沒有明確的界定......由於XSD的唯一粒子屬性的約束。換句話說,如果第三組以「date」或「loc」開始,那麼上述解決方案將需要修改。 –
@PetruGardea非常感謝,這正是我的目標。 – liudaisuda
@Petter正是我需要的。這裏只是另一個問題,沒有在網上找到很多信息。在我的情況下,這些組將需要使用xs:all作爲子元素,因爲它們的順序是任意的,而body元素不是我整個xml文檔中的根元素。在我做了所有的調整之後,vs2012給了我:「所有的組都不是根粒子,或者它被用作延伸」警告。據我所知,這是不允許的是xml規範1.0。但是有沒有解決方法,只要不改變我正在升級的xml文檔? – liudaisuda