我還沒有設法找到答案,這個確切的問題和它的竊聽我。重複元素的XML順序問題
我需要創建一個XML模式,其中重複元素的順序很重要。例如:
<article>
<line>This article was</line>
<line>written by</line>
</article>
我知道上面的例子很有意思,但它說明了我的情況。我必須對執行順序很重要的一系列命令進行反序列化。我可以看到實現此目的的唯一方法是將order="[integer]"
屬性添加到每個子元素(上例中的<line>
標記)。儘管這似乎有點沉重,特別是當XML文檔將被手動輸入時。有其他選擇嗎?
對於XSD太多了,只需使用XPath查詢文檔並填充對象屬性即可。使用應用程序邏輯(不是XSD)來驗證訂單。 –
我真的不想僅僅依靠XML解析器來確保解析時的順序。我不認爲這是非常安全的。如果沒有更好的解決方案,我將使用 – Clivest
問題中所述的'order'屬性?在解析過程中Order始終保持不變,所有解析器都保留它。它是XML數據模型的重要組成部分。它可能是頂部的其他庫可能不關心,但解析器永遠不會改變順序,也不會像DOM那樣的基本數據模型。 – StaxMan