2013-10-31 101 views
1

我對XSD文件的工作,包括elemets如具有相同名稱的屬性:元素與兩個命名

<xs:element name="group"> 
    <xs:complexType> 
     <xs:attribute name="role" type="xs:string"/> 
     <xs:attribute ref="xlink:role"/> 
    </xs:complexType> 
</xs:element> 

如果沒有類型爲「角色」定義的屬性在XLink命名空間。 具有此架構的XML如何看起來像? 我應該如何知道哪個屬性的'角色'是在XML中的含義? 使這些屬性具有相同名稱的目的是什麼?

回答

0

這是XML可能看起來怎麼樣:

<?xml version="1.0" encoding="utf-8" standalone="yes"?> 
<!-- Sample XML generated by QTAssistant (http://www.paschidev.com) --> 
<group xmlns:xlink="http://www.w3.org/1999/xlink" role="role1" xlink:role="http://uri1"/> 

的名稱,如您在XSD看到的,是合格的;屬性,在你的情況下 - 或者至少對於我用過的XSD測試 - 也可以是合格的或不合格的。憑藉合格,{http://www.w3.org/1999/xlink}角色因此與{}角色不同。

至於目的...爲什麼我們有同名詞?我相信通過使用同義詞可以提高合同的質量,特別是在處理不喜歡XML名稱空間的人時,或者其他什麼......我不會評論你的特定情況,因爲我不知道是否角色確實是一個小小的代價,談論它所造成的混亂,與XSD可能試圖捕捉/應用的商業詞彙的滲透程度有關。