2017-04-12 21 views
0

以下のsoap封筒にxsdを書き込もうとしています。 「:異なったタイプで、モデルのグループに表示され、タイプのエラー 『#AnonType_process』名前を持つ複数の要素は 『カルク』。COS-要素一貫性を。」以下はxsd - 同じ名前の複数の要素が異なる種類の

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <xs:element name="process"> 
    <xs:complexType> 
     <xs:sequence> 
     <xs:element name="calc" type="wsInput"/> 
     <xs:element name="calc" type="wsCalc"/> 
     </xs:sequence> 
    </xs:complexType> 
    </xs:element> 

    <xs:complexType name="wsInput"> 
    <xs:sequence> 
     <xs:element type="xs:string" name="fieldName" minOccurs="0"/> 
     <xs:element type="xs:string" name="value" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

    <xs:complexType name="wsCalc"> 
    <xs:sequence> 
     <xs:element type="xs:string" name="txnAmt" minOccurs="0"/> 
    </xs:sequence> 
    </xs:complexType> 

</xs:schema> 

ですが、私は述べています私の期待される石鹸は石鹸のクライアントで生成するためにエンベロープ。

<S:Envelope> 
<S:Body> 
<ns2:process xmlns:ns2="http://soap.com/"> 
// List of calc input fields will be here 
<calc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:wsInput"> 
      <fieldName>DATE</fieldName> 
      <value>20170101</value> 
     </calc> 

// List of output/result fields will be here 
<calc xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns2:wsCalc"> 
      <txnAmt>100.00</txnAmt> 
     </calc > 
</ns2:process 
</S:Body> 
</S:Envelope> 

このタイプの要件を達成するための入力をお願いします。

答えて

1

<xs:choice>が必要です。要素がyou can't define sibling with different types

+0

ためADS @別の名前を持っているが、私は必要

<xs:element name="process"> <xs:choice> <xs:element name="calc1" type="wsInput"> <xs:element name="calc2" type="wsCalc"> 

ノートのようなもの。要素名は同じですが型が違うので、私の石鹸封筒の上を見てください。 – Easy2DownVoteHard2Ans

+0

私はこれを達成するためにいくつかの入力を提供してください、私はここで無力です。 – Easy2DownVoteHard2Ans

+1

@ Easy2DownVoteHard2あなたは**これを行うことはできません** – ADS

関連する問題