在XML模式中定義全局元素,然後在特定父元素的上下文中重寫該元素定義是否合法?同一個元素是可以在全局和本地模式中定義的,還是必須是一個或另一個?可以用局部元素定義覆蓋全局元素定義嗎?
重寫全局元素的示例可能如下所示。注意被定義爲包含其他幾個元素的全局元素。但是,在一本書的上下文中,它是一個簡單地包含一個字符串的元素。
<xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="to" type="xs:string"/>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="book">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string"/>
<xs:element name="note" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
感謝您的回覆。我還通過http://www.validome.org/grammar/validate/上的在線驗證器對我的示例模式進行了雙重檢查,並確認這確實是有效的。 – Scott
是的,我只是將它粘貼到XMLSpy中,然後按F8鍵:p不知道XML Schema規格是否足以回答這個問題。有時候我只能像我的工具一樣聰明。 –