src/WSDL/LandedCostWebServiceSchema.xsd
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:lc="http://www.ups.com/schema/xpci/1.0/lc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.ups.com/schema/xpci/1.0/lc" elementFormDefault="qualified">
<xsd:element name="LandedCostRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Request" type="lc:RequestTransportType"/>
<xsd:choice>
<xsd:element name="QueryRequest" type="lc:QueryRequestType"/>
<xsd:element name="EstimateRequest" type="lc:EstimateRequestType"/>
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="LandedCostResponse">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Response" type="lc:ResponseTransportType"/>
<xsd:choice>
<xsd:element name="QueryResponse" type="lc:QueryResponseType"/>
<xsd:element name="EstimateResponse" type="lc:EstimateResponseType"/>
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="RequestTransportType">
<xsd:sequence>
<xsd:element name="RequestAction" type="xsd:string"/>
<xsd:element name="RequestOption" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="QueryRequestType">
<xsd:sequence>
<xsd:element name="Shipment" type="lc:ShipmentType"/>
<xsd:element name="TransactionReferenceID" type="xsd:string" minOccurs="0" maxOccurs="3"/>
<xsd:element name="SuppressQuestionIndicator" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="EstimateRequestType">
<xsd:sequence>
<xsd:element name="Shipment" type="lc:ShipmentAnswerType"/>
<xsd:element name="TransactionDigest" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ResponseTransportType">
<xsd:sequence>
<xsd:element name="Warning" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="QueryResponseType">
<xsd:sequence>
<xsd:element name="Shipment" type="lc:ShipmentResultType"/>
<xsd:element name="TransactionDigest" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="EstimateResponseType">
<xsd:sequence>
<xsd:element name="TransactionInfo" type="lc:TransactionInfoType"/>
<xsd:element name="ShipmentEstimate" type="lc:ShipmentEstimateType"/>
<xsd:element name="SuppressQuestionIndicator" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ShipmentType">
<xsd:sequence>
<xsd:element name="OriginCountryCode" type="xsd:string"/>
<xsd:element name="OriginStateProvinceCode" type="xsd:string" minOccurs="0"/>
<xsd:element name="DestinationCountryCode" type="xsd:string"/>
<xsd:element name="DestinationStateProvinceCode" type="xsd:string" minOccurs="0"/>
<xsd:element name="TransportationMode" type="xsd:string" minOccurs="0"/>
<xsd:element name="FreightCharges" type="lc:ChargesType" minOccurs="0"/>
<xsd:element name="AdditionalInsurance" type="lc:ChargesType" minOccurs="0"/>
<xsd:element name="Product" type="lc:ProductType" maxOccurs="99"/>
<xsd:element name="ResultCurrencyCode" type="xsd:string" minOccurs="0"/>
<xsd:element name="TariffCodeAlert" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ShipmentResultType">
<xsd:sequence>
<xsd:element name="Product" type="lc:ProductResultType" maxOccurs="99"/>
<xsd:element name="Question" type="lc:QuestionType" minOccurs="0" maxOccurs="5"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ShipmentAnswerType">
<xsd:sequence>
<xsd:element name="Product" type="lc:ProductAnswerType" maxOccurs="99"/>
<xsd:element name="Question" type="lc:AnswerType" minOccurs="0" maxOccurs="5"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ShipmentEstimateType">
<xsd:sequence>
<xsd:element name="CurrencyCode" type="xsd:string"/>
<xsd:element name="ShipmentCharges" type="lc:ShipmentChargesType"/>
<xsd:element name="ProductsCharges" type="lc:ProductsChargesType"/>
<xsd:element name="TotalLandedCost" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TransactionInfoType">
<xsd:sequence>
<xsd:element name="Date" type="xsd:string"/>
<xsd:element name="Time" type="xsd:string"/>
<xsd:element name="TransactionCharge">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MonetaryValue" type="xsd:string"/>
<xsd:element name="CurrencyCode" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ProductType">
<xsd:sequence>
<xsd:element name="ProductName" type="xsd:string" minOccurs="0"/>
<xsd:element name="ProductDescription" type="xsd:string" minOccurs="0"/>
<xsd:element name="ProductCountryCodeOfOrigin" type="xsd:string" minOccurs="0"/>
<xsd:element name="TariffInfo" type="lc:TariffInfoType"/>
<xsd:element name="Quantity" type="lc:ValueWithUnitsType"/>
<xsd:element name="UnitPrice" type="lc:ChargesType"/>
<xsd:element name="Weight" type="lc:ValueWithUnitsType" minOccurs="0"/>
<xsd:element name="TariffCodeAlert" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ProductResultType">
<xsd:sequence>
<xsd:element name="TariffCode" type="xsd:string"/>
<xsd:element name="Question" type="lc:QuestionType" minOccurs="0" maxOccurs="3"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ProductAnswerType">
<xsd:sequence>
<xsd:element name="TariffCode" type="xsd:string"/>
<xsd:element name="Question" type="lc:AnswerType" minOccurs="0" maxOccurs="3"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ProductsChargesType">
<xsd:sequence>
<xsd:element name="Product" type="lc:ProductEstimateType" maxOccurs="99"/>
<xsd:element name="ProductsSubTotal" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ProductEstimateType">
<xsd:sequence>
<xsd:element name="TariffCode" type="xsd:string"/>
<xsd:element name="Charges" type="lc:ProductChargesType" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="TariffInfoType">
<xsd:sequence>
<xsd:element name="TariffCode" type="xsd:string"/>
<xsd:element name="DetailID" type="xsd:string" minOccurs="0"/>
<xsd:element name="SecondaryTariffCode" type="xsd:string" minOccurs="0"/>
<xsd:element name="SecondaryDetailID" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ValueWithUnitsType">
<xsd:sequence>
<xsd:element name="Value" type="xsd:string"/>
<xsd:element name="UnitOfMeasure" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="UnitCode" type="xsd:string"/>
<xsd:element name="UnitDescription" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ChargesType">
<xsd:sequence>
<xsd:element name="MonetaryValue" type="xsd:string"/>
<xsd:element name="CurrencyCode" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="QuestionType">
<xsd:sequence>
<xsd:element name="Name" type="xsd:string"/>
<xsd:element name="Text" type="xsd:string"/>
<xsd:element name="Type" type="xsd:string"/>
<xsd:element name="Options" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Option" type="lc:KeyValuePairType" maxOccurs="99"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="KeyValuePairType">
<xsd:sequence>
<xsd:element name="Key" type="xsd:string" minOccurs="0"/>
<xsd:element name="Value" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="AnswerType">
<xsd:sequence>
<xsd:element name="Name" type="xsd:string"/>
<xsd:element name="Answer" type="xsd:string" minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ProductChargesType">
<xsd:sequence>
<xsd:element name="Duties" type="xsd:string" minOccurs="0"/>
<xsd:element name="TaxesAndFees" type="xsd:string" minOccurs="0"/>
<xsd:element name="VAT" type="xsd:string" minOccurs="0"/>
<xsd:element name="CostOfGoods" type="xsd:string"/>
<xsd:element name="SubTotal" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="ShipmentChargesType">
<xsd:sequence>
<xsd:element name="TaxesAndFees" type="xsd:string"/>
<xsd:element name="AdditionalInsuranceCost" type="xsd:string" minOccurs="0"/>
<xsd:element name="TransportationCost" type="xsd:string" minOccurs="0"/>
<xsd:element name="SubTotal" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>