如果我在xsd中有很多複雜類型,例如具有一些常用字段,比如'id','name'或'date'或'anyspecificId',這意味着這些類型彼此非常相似,並且向它們中的每一個添加一個共同字段將是噩夢。是否可以爲複雜類型定義一些基本類型,以便這種複雜類型可以擴展基本父類型的字段/項目? 在這種情況下,我只是將這個新字段添加到基本類型,而不是每個子字段。 這可能嗎?多個元素在xsd模式中有很多共同點
1
A
回答
2
當然,你應該使用類型的擴展名:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="employee" type="fullpersoninfo"/>
<xs:complexType name="personinfo">
<xs:sequence>
<xs:element name="firstname" type="xs:string"/>
<xs:element name="lastname" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="fullpersoninfo">
<xs:complexContent>
<xs:extension base="personinfo">
<xs:sequence>
<xs:element name="address" type="xs:string"/>
<xs:element name="city" type="xs:string"/>
<xs:element name="country" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
2
通過擴展派生類型肯定是要解決的方式之一。有時可以更好地工作的另一種方法是使用命名的模型組。這可以更加靈活,例如它不會強制通用元素必須放在自定義元素之前。
相關問題
- 1. Java很多arraylist - 尋找共同元素
- 2. xsd一個或多個元素
- 3. Biztalk的2010:映射一個xsd有很多具有相同名稱的元件
- 4. r中有多個元素的向量的公共元素
- 5. XSD中多個元素的正則表達式
- 6. 根據是否存在多個元素,XSD模式可以具有不同的條件嗎?
- 7. xsd - 具有不同類型的相同名稱的多個元素
- 8. 多個模式的唯一元素
- 9. 多元素共享一個共同的背景
- 10. 訪問中有一個元素有很多關係
- 11. Javascript隱藏/顯示有很多元素
- 12. JQuery position.top()慢很多元素
- 13. ExtJS切換很多元素?
- 14. 寫有多個元素的XML中又包含多個元素
- 15. 有很多頂點
- 16. 如何在XSD中爲多個元素重用複雜類型?
- 17. 如何從多個向量中找到共同元素?
- 18. 如何在xsd模式中定義XML元素以使所有子元素具有相同的屬性值?
- 19. 多種類型的用戶有很多共同的屬性
- 20. 隻影響在jQuery中點擊的元素爲多個元素相同的類
- 21. XSD - 定義多個必需的元素用不同的ID屬性,其中之一有子元素
- 22. 在Android中有很多元素的列表中的CeckAll按鈕
- 23. 在XSD中創建不同的元素
- 24. 如何在同一元素中添加多個屬性元素?
- 25. 點擊在同一時間多個元素,什麼是「這個」
- 26. 從DOM中讀取很多元素
- 27. 在很多元素上使用函數
- 28. 在很多元素上綁定動畫
- 29. 如何選擇元素時,根元素有很多屬性的
- 30. 在多個元素
擴展並不總是最好的東西;如果遇到涉及限制的問題,將它們轉換爲對象並不乾淨,因此使用組模型(對於元素xsd:group和attributes attributeGroup)是您可能想要考慮實現可重用性的另一種方法。 – 2012-03-16 17:30:28