0

このURLのスキーマ定義に従って サービスURL

このようにXMLをリクエストしましたが、 https://www.con-way.com/XMLj/X-Rateにリクエストを送信するとエラーが発生します。ItemType要素を渡す方法は?

<RateRequest>
<OriginZip country='us'>97006</OriginZip> 
<DestinationZip country='us'>33179</DestinationZip> 
<CustNmbr shipcode="S">883885</CustNmbr>
<ChargeCode>P</ChargeCode> 
<EffectiveDate>10/30/12</EffectiveDate> 

<Item> 
<CmdtyClass>775</CmdtyClass> 
<Weight unit='lbs'>667</Weight> 
</Item> 

<ItemType>
<Quantity pkgtype='PCS'>100</Quantity>
</ItemType>

<Accessorial>SSC</Accessorial> 
<Accessorial>DNC</Accessorial>   
<Accessorial>GUR</Accessorial> 

</RateRequest>
4

1 に答える 1

1

スキーマ定義からわかる限り、ItemTypeはRateRequest要素の有効な子要素ではありません。これにより、おそらくエラーが発生します。

<xs:element name="RateRequest">
  <xs:complexType>
    <xs:sequence>
      <xs:element ref="OriginZip"/>
      <xs:element ref="DestinationZip"/>
      <xs:element name="CustNmbr" minOccurs="0">
        <xs:complexType>
          <xs:simpleContent>
            <xs:extension base="xs:positiveInteger">
              <xs:attribute name="shipcode" type="ShipCodeType" use="optional" default="S"/>
            </xs:extension>
          </xs:simpleContent>
        </xs:complexType>
      </xs:element>
      <xs:element ref="ChargeCode" minOccurs="0"/>
      <xs:element name="DiscountRate" type="xs:decimal" minOccurs="0"/>
      <xs:element name="EffectiveDate" type="DateMMDDYYType" minOccurs="0"/>
      <xs:element name="Item" maxOccurs="4">
        <xs:complexType>
          <xs:sequence>
            <xs:element ref="CmdtyClass"/>
            <xs:element name="Weight" type="WeightWithUnitType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="Accessorial" type="RatingAccessorialCodeType" minOccurs="0" maxOccurs="7"/>
      <xs:element ref="TotalCubeVolume" minOccurs="0"/>
      <xs:element ref="SIC" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute name="schemaVersion" type="SchemaVersionType"/>
  </xs:complexType>
</xs:element>

conwayサイトでRateRequestxmlの推奨される使用法を調べましたが、ItemType複合型はリクエストで使用できないようです。ただし、Item要素は、CmdtyClassタイプ参照を使用して(事前に)定義されたアイテムを参照できます。このCmdtyClassタイプは、アイテムが定義されているときにItemType複合タイプでも使用されます。

于 2012-10-30T13:39:56.633 に答える