<?xml version='1.0' encoding='UTF-8'?><!-- Published by JAX-WS RI at http://jax-ws.dev.java.net. RI's version is JAX-WS RI 2.1.7-b01-. --><!--
    SEFL Pickup Web Service (c) Southeastern Freightlines, Inc.
    Notice:  You must have a valid MySefl login and account number for submitting
             a pickup request.  
             Please visit http://www.sefl.com/seflWebsite/mysefl/requestid.jsp to 
             apply for a MySefl Account.
    Layout last updated: 5/29/2009
--><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:data="pickup.sefl.com/xsd" xmlns:tns="pickup.sefl.com/wsdl" name="SeflPickupWebService" targetNamespace="pickup.sefl.com/wsdl">
    
    <types>
        <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:data="pickup.sefl.com/xsd" targetNamespace="pickup.sefl.com/xsd">
            <complexType name="Contact">
                <sequence>
                    <element name="company" type="xsd:string" />
                    <element name="name" type="xsd:string" />
                    <element name="phone" type="xsd:string" />
                    <element name="email" type="xsd:string" />
                </sequence>
            </complexType>
            <complexType name="Shipper">
                <sequence>
                    <element name="username" type="xsd:string" />
                    <element name="password" type="xsd:string" />
                    <element name="acctNum">
                        <simpleType>
                            <restriction base="xsd:string">
                                <maxLength value="9" />
                                <minLength value="9" />
                            </restriction>
                        </simpleType>
                    </element>
                    <element name="address" type="xsd:string" />
                    <element name="city" type="xsd:string" />
                    <element name="state" type="xsd:string" />
                    <element name="zip">
                        <simpleType>
                            <restriction base="xsd:string">
                                <maxLength value="5" />
                                <minLength value="5" />
                            </restriction>
                        </simpleType>
                    </element>
                    <element name="pickupContactName" type="xsd:string" />
                    <element name="phone" type="xsd:string" />
                    <element name="email" type="xsd:string" />
                    <element name="email2" nillable="true" type="xsd:string" />
                    <element name="email3" nillable="true" type="xsd:string" />
                    <element name="fax" nillable="true" type="xsd:string" />
                    <element name="requestPickupDate" type="xsd:string" />
                    <element name="requestPickupTime" type="xsd:string" />
                    <element name="pickupTimeStart" type="xsd:string" />
                    <element name="pickupTimeEnd" type="xsd:string" />
                    <element name="closeTime" type="xsd:string" />
                    <element name="driverInstructions" nillable="true" type="xsd:string" />
                    <element name="pickupNotes" nillable="true" type="xsd:string" />
        <!--
        shipAs: S = Shipper
                C = Consignee
                T = Third-party
        -->
                    <element name="shipAs" type="xsd:string" />
                    <element name="developer" nillable="true" type="xsd:string" />
                </sequence>
            </complexType>
            <complexType name="Consignee">
                <sequence>
                    <element name="name" type="xsd:string" />
                    <element name="destZip">
                        <simpleType>
                            <restriction base="xsd:string">
                                <maxLength value="5" />
                                <minLength value="5" />
                            </restriction>
                        </simpleType>
                    </element>
                    <element name="weight" type="xsd:integer" />
                    <element name="pieces" type="xsd:integer" />
        <!--
        pkgType: PT = Pallet
                 RL = Roll
                 BX = Box
                 BL = Bundle
                 DR = Drum
                 MS = Misc
                 CT = Carton
                 PL = Cylinder
                 PC = Piece
                 SK = Skid
                 TB = Tube
        -->
                    <element name="pkgType" type="xsd:string" />
        <!--
        (optional)
        specialNumType: PO = Purchase Order Number
                        LN = Load Number
                        BOOK = Booking Number
                        ORN = Order Number
        -->                  
                    <element name="specialNumType" nillable="true" type="xsd:string" />
                    <element name="specialNum" nillable="true" type="xsd:string" />
                </sequence>
            </complexType>
            <complexType name="ArrayOfConsignees">
                <sequence>
                    <element maxOccurs="10" minOccurs="1" name="Consignee" type="data:Consignee" />
                </sequence>
            </complexType>
            <complexType name="ArrayOfXSDAnyType">
                <sequence>
                    <element maxOccurs="unbounded" minOccurs="0" name="anyType" nillable="true" type="xsd:anyType" />
                </sequence>
            </complexType>
            <element name="Pickup">
                <complexType>
                    <sequence>
                        <element name="contact" type="data:Contact" />
                        <element name="shipper" type="data:Shipper" />
                        <element name="consignees" type="data:ArrayOfConsignees" />
                    </sequence>
                </complexType>
            </element>
            <complexType name="pickupConfirm">
                <sequence>
                    <element name="confirmationNumber" type="xsd:string" />
                    <element name="dateTimeSubmitted" type="xsd:string" />
                    <element name="totalShipments" type="xsd:integer" />
                    <element name="totalWeight" type="xsd:integer" />
                </sequence>
            </complexType>
            <element name="PickupResult">
                <complexType>
                    <sequence>
                        <element name="errMessages" nillable="true" type="data:ArrayOfXSDAnyType" />
                        <element name="confirmation" nillable="true" type="data:pickupConfirm" />
                    </sequence>
                </complexType>
            </element>
        </schema>
    </types>
    
    <message name="pickupRequest">
        <part name="requestParameters" element="data:Pickup" />
    </message>
    <message name="pickupResponse">
        <part name="responseParameters" element="data:PickupResult" />
    </message>
    
    <portType name="SeflPickup">
        <operation name="pickup">
            <input message="tns:pickupRequest" />
            <output message="tns:pickupResponse" />
        </operation>
    </portType>
    
    <binding name="SeflPickupSoapBinding" type="tns:SeflPickup">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
        <operation name="pickup">
            <soap:operation soapAction="" />  
            <input>
                <soap:body use="literal" />
            </input>
            <output>
                <soap:body use="literal" />
            </output>
        </operation>
    </binding>
    
    <service name="SeflPickupService">
        <port name="SeflPickupPort" binding="tns:SeflPickupSoapBinding">
            <soap:address location="http://www.sefl.com:80/SeflPickup/SeflPickupService" />
        </port>
    </service>
    
</definitions>