1)我認識到命名空間是區分使用XML模式指定的不同模式/詞彙表的一種方式,但我不明白爲什麼命名空間(模式正在開發詞彙表)是一個好主意,在模式本身內指定(通過targetNamespace
屬性)。Xml模式命名空間
a)如果我們能夠將特定名稱空間與實例文檔中的特定詞彙表/模式關聯起來,會不會更好?這樣,那些編寫實例文檔就可以完全自由地將模式與任何他們想要的名稱空間名稱關聯起來?!
b)我在指定目標名稱空間的模式中看到的好處是,它的創建者可以選擇將文檔放在名稱空間的末尾,以描述該名稱空間的元素(假定架構使用URL作爲名稱空間) 。還有其他好處嗎?
2)如果架構沒有targetNamespace
,則必須使用noNamespaceSchemaLocation
屬性而不是schemaLocation
屬性(在實例文檔中)引用特定架構。
如果文檔實例只是指定模式的位置並讓XML模式驗證程序判斷模式是否指定了targetNamespace
,那麼這樣做會不會更簡單?
謝謝
術語「XML Schema」僅指模式描述語言。個別模式被簡單地稱爲「模式」或「模式」。 – 2010-10-21 17:24:16