gabrielbull/php-ups-api

View on GitHub
src/WSDL/LandedCostWebServiceSchema.xsd

Summary

Maintainability
Test Coverage
<?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>