我有以下兩個元素,product和customerAccount。在xsd中如何重新聲明不同的組元素
該產品具有以下結構,有兩個元素,productSerialNumber和serviceGuidingIdentifer
<xs:element name="product">
<xs:complexType>
<xs:sequence>
<xs:element name="productSerialNumber" type="xs:string" />
<xs:element name="serviceGuidingIdentifer">
<xs:complexType>
<xs:sequence>
<xs:element name="ID" type="xs:string" />
<xs:element name="type" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
客戶賬戶結構如下
<xs:element name="customerAccount">
<xs:complexType>
<xs:sequence>
<xs:element name="ID"type="xs:string" />
</xs:sequence>
</xs:complexType>
現在我想有一個用戶可以只聲明以上三個元素中的一個,即 1)productSerialNu MBER OR 2)serviceGuidingIdentifer OR 3)customerAccount
每當我試圖申報的選擇,我面對錯誤說要麼未找到要素或元素的定義不一致。
我曾嘗試以下選擇申報
<xs:choice>
<xs:element ref="tns:productSerialNumber"/>
<xs:element ref="tns:serviceGuidingIdentifer"/>
<xs:element ref="tns:customerAccount"/>
</xs:choice>
什麼是重新宣佈在選擇不同組元素的正確途徑。
任何幫助將非常感激
感謝和問候, 開發
它必須注意的是** **所有頂級元素,可以有效地用作基於該模式,這可能會或可能不會是OP想要的文檔中的根元素。 – 2013-10-30 22:44:17
謝謝你的快速回復。可悲的部分是,我正在使用soapUI,它在加載時拋出一個錯誤,指出中所有引用的「找不到元素」。我認爲解析它時不考慮命名空間。我們將使用soapUI,所以我不太確定什麼可以使UI正確解析 –
user2939206