<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://www.dhl.com/datatypes" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.dhl.com/datatypes" elementFormDefault="unqualified" attributeFormDefault="unqualified">
	<xsd:element name="DataTypes">
		<xsd:annotation>
			<xsd:documentation>Comment describing your root element</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:simpleType name="AccountNumber">
		<xsd:annotation>
			<xsd:documentation>DHL Account Number</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:maxInclusive value="9999999999"/>
			<xsd:minInclusive value="100000000"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="AccountType">
		<xsd:annotation>
			<xsd:documentation>Account Type by method of payment ( DHL account vs. Credit card)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<!--Updated by Amruta on 25-Jan-08 for charge card removal requirement-->
			<xsd:enumeration value="D"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="AddressLine">
		<xsd:annotation>
			<xsd:documentation>Address Line</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35" fixed="false"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="AdvanceDaysNotice">
		<xsd:annotation>
			<xsd:documentation>Days of advance notice required</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:nonNegativeInteger">
			<xsd:pattern value="\d{0,3}"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="AWBNumber">
		<xsd:annotation>
			<xsd:documentation>Airway bill number</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="11"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="DHLRoutingCode">
        <xsd:annotation>
            <xsd:documentation>Routing Code Text</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="InternalServiceCode">
        <xsd:annotation>
            <xsd:documentation>Handling feature code returned by GLS</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            </xsd:restriction>
    </xsd:simpleType>
	<xsd:simpleType name="BillCode">
		<xsd:annotation>
			<xsd:documentation>DHL billing options</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="2"/>
			<xsd:maxLength value="3"/>
			<xsd:enumeration value="DSA"/>
			<xsd:enumeration value="DBA"/>
			<!--Commented by Amruta on 25-Jan-08 for charge card removal requirement-->
			<!--xsd:enumeration value="CC"/-->
			<xsd:enumeration value="TCA"/>
			<xsd:enumeration value="IEA"/>
			<xsd:enumeration value="UAN"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Billing">
		<xsd:sequence>
			<xsd:element name="ShipperAccountNumber" type="AccountNumber"/>
			<xsd:element name="ShippingPaymentType" type="PaymentType"/>
			<xsd:element name="BillingAccountNumber" type="AccountNumber"/>
			<xsd:element name="DutyPaymentType" type="DutyTaxPaymentType"/>
			<xsd:element name="DutyAccountNumber" type="AccountNumber" minOccurs="0"/>
			<!--Commented by Amruta on 25-Jan-08 for charge card removal requirement-->			
			<!--xsd:element name="ChargeCardInfo" type="ChargeCard" minOccurs="0"/-->
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="ChargeCardConfNo">
		<xsd:annotation>
			<xsd:documentation>Charge card approval number</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:pattern value="\d{0,6}"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ChargeCardExpDateValidator">
		<xsd:annotation>
			<xsd:documentation>Charge card expiration date</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:pattern value="(0[1-9]|1[0-2])\d{1}[0-9]"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ChargeCardNo">
		<xsd:annotation>
			<xsd:documentation>Charge card number</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:minInclusive value="1000000000000"/>
			<xsd:maxInclusive value="9999999999999999"/>
			<xsd:pattern value="\d{13,16}"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="ChargeCard">
		<xsd:sequence>
			<xsd:element name="ChargeCardNo" type="ChargeCardNo"/>
			<xsd:element name="ChargeCardType" type="ChargeCardType"/>
			<xsd:element name="ChargeCardConfNo" type="ChargeCardConfNo"/>
			<xsd:element name="ChargeCardExpiryDate" type="ChargeCardExpDateValidator"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="ChargeCardType">
		<xsd:annotation>
			<xsd:documentation>Charge card issuer type</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="2"/>
			<xsd:enumeration value="AM"/>
			<xsd:enumeration value="DC"/>
			<xsd:enumeration value="DI"/>
			<xsd:enumeration value="MC"/>
			<xsd:enumeration value="VI"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="City">
		<xsd:annotation>
			<xsd:documentation>City name</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CommodityCode">
		<xsd:annotation>
			<xsd:documentation>Commodity codes for shipment type</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
           <xsd:maxLength value="20"/>
        </xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CommodityName">
		<xsd:annotation>
			<xsd:documentation>Commodity name for shipment content</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Commodity">
		<xsd:sequence>
			<xsd:element name="CommodityCode" type="CommodityCode"/>
			<xsd:element name="CommodityName" type="CommodityName" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="CommunicationAddress">
		<xsd:annotation>
			<xsd:documentation>Communications line number: phone number, fax number</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="50"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CommunicationType">
		<xsd:annotation>
			<xsd:documentation>Communications line type (P: phone, F: fax)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="P"/>
			<xsd:enumeration value="F"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CompanyNameValidator">
		<xsd:annotation>
			<xsd:documentation>Name of company / business</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Consignee">
		<xsd:sequence>
			<xsd:element name="CompanyName" type="CompanyNameValidator" minOccurs="0"/>
			<xsd:element name="AddressLine" type="AddressLine" minOccurs="0" maxOccurs="3"/>
			<xsd:element name="City" type="City"/>
			<xsd:element name="Division" type="Division" minOccurs="0"/>
			<xsd:element name="DivisionCode" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="2"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PostalCode" type="PostalCode" minOccurs="0"/>
			<xsd:element name="CountryCode" type="CountryCode"/>
			<xsd:element name="CountryName" type="CountryName"/>
			<xsd:element name="FederalTaxId" minOccurs="0">

				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0"></xsd:minLength>
						<xsd:maxLength value="20"></xsd:maxLength>
				</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="StateTaxId" minOccurs="0">

				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0"></xsd:minLength>
						<xsd:maxLength value="20"></xsd:maxLength>

					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Contact" type="Contact"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Contact">
		<xsd:sequence>
			<xsd:element name="PersonName" type="PersonName"/>
			<xsd:element name="PhoneNumber" type="PhoneNumber"/>
			<xsd:element name="PhoneExtension" type="PhoneExtension" minOccurs="0"/>
			<xsd:element name="FaxNumber" type="PhoneNumber" minOccurs="0"/>
			<xsd:element name="Telex" type="Telex" minOccurs="0"/>
			<xsd:element name="Email" type="Email" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="PhoneExtension">
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="5"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CountryCode">
		<xsd:annotation>
			<xsd:documentation>ISO country codes</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CountryName">
		<xsd:annotation>
			<xsd:documentation>ISO country name</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CourierMsg">
		<xsd:annotation>
			<xsd:documentation>Courier message for printing on airway bill</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="90"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CurrencyCode">
		<xsd:annotation>
			<xsd:documentation>ISO currency code</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="3"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="CurrencyName">
		<xsd:annotation>
			<xsd:documentation>ISO currency name</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="DateTime">
		<xsd:annotation>
			<xsd:documentation>Date and time</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:dateTime"/>
	</xsd:simpleType>
	<xsd:simpleType name="Date">
		<xsd:annotation>
			<xsd:documentation>Date only</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:date"/>
	</xsd:simpleType>
	<xsd:simpleType name="DayHour">
		<xsd:annotation>
			<xsd:documentation>Day and hour only</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="(0[1-9]|1[0-9]|2[0-9]|3[0-1]) ([01-24])"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="DoorTo">
		<xsd:annotation>
			<xsd:documentation>Defines the type of delivery service that applies to the shipment</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="2"/>
			<xsd:enumeration value="DD"/>
			<xsd:enumeration value="DA"/>
			<xsd:enumeration value="AA"/>
			<xsd:enumeration value="DC"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Dutiable">
		<xsd:sequence>
			<xsd:element name="DeclaredValue" type="Money" minOccurs="0" />
			<xsd:element name="DeclaredCurrency" type="CurrencyCode" minOccurs="0" />
			<xsd:element name="ScheduleB" type="ScheduleB" minOccurs="0" />
			<xsd:element name="ExportLicense" minOccurs="0" />
			<xsd:element name="ShipperEIN" minOccurs="0" >
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="20"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ShipperIDType" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="S" />
						<xsd:enumeration value="E" />
						<xsd:enumeration value="D" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ConsigneeIDType" minOccurs="0">

				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:length value="1"></xsd:length>
						<xsd:enumeration value="S" />
						<xsd:enumeration value="E" />
						<xsd:enumeration value="D" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ImportLicense" minOccurs="0" />
			<xsd:element name="ConsigneeEIN" minOccurs="0">
				<xsd:simpleType>
					<xsd:annotation>
						<xsd:documentation>
							Consignee’s tax ID or VAT number.
						</xsd:documentation>
					</xsd:annotation>
				<!--<xsd:element name="ConsigneeIDType" minOccurs="0">-->
				
						<xsd:restriction base="xsd:string">
							<xsd:maxLength value="20"/>
						</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="TermsOfTrade" minOccurs="0" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="DutyTaxPaymentType">
		<xsd:annotation>
			<xsd:documentation>Duty and tax charge payment type (S:Shipper, R:Recipient, T:Third Party/Other)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="S"/>
			<xsd:enumeration value="R"/>
			<xsd:enumeration value="T"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="DivisionCode">
		<xsd:annotation>
			<xsd:documentation>Division (e.g. state, prefecture, etc.) code</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Division">
		<xsd:annotation>
			<xsd:documentation>Division (e.g. state, prefecture, etc.) name</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="EmailBody">
		<xsd:annotation>
			<xsd:documentation>Body of an email message</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="255"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Email">
		<xsd:annotation>
			<xsd:documentation>Email message</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="From" type="EmailAddress"/>
			<xsd:element name="To" type="EmailAddress"/>
			<xsd:element name="cc" type="EmailAddress" minOccurs="0" maxOccurs="5"/>
			<xsd:element name="Subject" type="xsd:string" minOccurs="0"/>
			<xsd:element name="ReplyTo" type="EmailAddress" minOccurs="0"/>
			<xsd:element name="Body" type="EmailBody" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="EmailAddress">
		<xsd:annotation>
			<xsd:documentation>Email address containing '@'</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>
	<xsd:complexType name="ExportDeclaration">
		<xsd:sequence>
			<xsd:element name="InterConsignee" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="70"/>
						<xsd:minLength value="0"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="IsPartiesRelation" type="YesNo" minOccurs="0"/>
			<xsd:element name="ECCN" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0"/>
						<xsd:maxLength value="11"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="SignatureName" type="SignatureName" minOccurs="0"/>
			<xsd:element name="SignatureTitle" type="SignatureTitle" minOccurs="0"/>
			<xsd:element name="ExportReason" type="ExportReason" minOccurs="0"/>
			<xsd:element name="ExportReasonCode" type="ExportReasonCode" minOccurs="0"/>
			<xsd:element name="SedNumber" type="SEDNumber" minOccurs="0"/>
			<xsd:element name="SedNumberType" type="SEDNumberType" minOccurs="0"/>
			<xsd:element name="MxStateCode" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0"/>
						<xsd:maxLength value="2"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ExportLineItem" type="ExportLineItem" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>specifics  about  each of the line item</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ExportLineItem">
		<xsd:sequence>
			<xsd:element name="LineNumber" type="LineNumber"/>
			<xsd:element name="Quantity" type="Quantity"/>
			<xsd:element name="QuantityUnit" type="QuantityUnit"/>
			<xsd:element name="Description" type="xsd:string"/>
			<xsd:element name="Value" type="Money"/>
			<xsd:element name="IsDomestic" type="YesNo" minOccurs="0"/>
			<xsd:element name="CommodityCode" type="CommodityCode" minOccurs="0"/>
			<xsd:element name="ScheduleB" type="ScheduleB" minOccurs="0"/>
			<xsd:element name="ECCN" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Weight" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Weight" type="Weight"/>
						<xsd:element name="WeightUnit" type="WeightUnit"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="License" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="LicenseNumber" type="LicenseNumber">
							<xsd:annotation>
								<xsd:documentation>shipper export license</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="ExpiryDate" type="xsd:date"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="LicenseSymbol" type="LicenseNumber" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>license excption symbol</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="SignatureName">
		<xsd:annotation>
			<xsd:documentation>Signature name </xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="SignatureTitle">
		<xsd:annotation>
			<xsd:documentation>Signature title </xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ExportReasonCode">
		<xsd:annotation>
			<xsd:documentation>Export reason code (P:Permanent, T:Temporary, R:Re-Export)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="P"/>
			<xsd:enumeration value="T"/>
			<xsd:enumeration value="R"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="GlobalProductCode">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
            <xsd:maxLength value="4"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ExportReason">
		<xsd:annotation>
			<xsd:documentation>Export reason</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="IDType">
		<xsd:annotation>
			<xsd:documentation>ID Type</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="SSN"/>
			<xsd:enumeration value="EIN"/>
			<xsd:enumeration value="DUNS"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PiecesEnabled">
        <xsd:annotation>
            <xsd:documentation>Pieces Enabling Flag</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="Y"/>
            <xsd:enumeration value="N"/>
        </xsd:restriction>
    </xsd:simpleType>
	<xsd:simpleType name="LanguageCode">
		<xsd:annotation>
			<xsd:documentation>ISO Language Code</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>
	<xsd:simpleType name="LicenseNumber">
		<xsd:annotation>
			<xsd:documentation>Export license number</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="16"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="LineNumber">
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:minInclusive value="1"/>
			<xsd:maxInclusive value="200"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="LocalProductCode">
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
            <xsd:maxLength value="4"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Money">
		<xsd:annotation>
			<xsd:documentation>Monetary amount (with 2 decimal precision)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:float">
			<xsd:minInclusive value="0.00"/>
			<xsd:maxInclusive value="9999999999.99"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PackageType">
		<xsd:annotation>
			<xsd:documentation>Package Type (EE: DHL Express Envelope, OD:Other DHL Packaging, CP:Customer-provided.Ground shipments must choose CP)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="2"/>
			<xsd:enumeration value="EE"/>
			<xsd:enumeration value="OD"/>
			<xsd:enumeration value="CP"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PersonName">
		<xsd:annotation>
			<xsd:documentation>Name</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PhoneExt">
		<xsd:annotation>
			<xsd:documentation>Phone extension</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:maxInclusive value="99999"/>
			<xsd:minInclusive value="1"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PhoneNumber">
		<xsd:annotation>
			<xsd:documentation>Phone Number</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>
	<xsd:simpleType name="PieceID">
		<xsd:annotation>
			<xsd:documentation>Piece ID</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Piece">
		<xsd:sequence>
			<xsd:element name="PieceID" type="PieceID" minOccurs="0"/>
			<xsd:element name="PackageType" type="PackageType" minOccurs="0"/>
			<xsd:element name="Weight" type="Weight" minOccurs="0"/>
			<xsd:element name="DimWeight" type="Weight" minOccurs="0"/>
			<xsd:element name="Width" type="xsd:positiveInteger" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>required if height and depth are  specified</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Height" type="xsd:positiveInteger" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>required if width and depth are specified</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Depth" type="xsd:positiveInteger" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>required if width and height are specified</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="PieceContents" type="xsd:string" minOccurs="0" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Pieces">
		<xsd:annotation>
			<xsd:documentation>Element encapsulating peices information</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Piece" type="Piece" maxOccurs="99"/>
		</xsd:sequence>
	</xsd:complexType>
	
	<!--Add Comment by Himanshu on 10-Aug-09 for Piece Enablement-->
	<xsd:complexType name="ShipValResponsePiece">
                         <xsd:sequence>
                            <xsd:element name="PieceNumber" type="PieceNumber" minOccurs="1" maxOccurs="1"/>
                            <xsd:element name="Depth"  type="xsd:positiveInteger" minOccurs="0" maxOccurs="1"/>
                            <xsd:element name="Width"  type="xsd:positiveInteger" minOccurs="0" maxOccurs="1"/>
                            <xsd:element name="Height" type="xsd:positiveInteger" minOccurs="0" maxOccurs="1"/>
                            <xsd:element name="Weight" type="Weight" minOccurs="0" maxOccurs="1"/>
                            <xsd:element name="PackageType" type="PackageType" minOccurs="0" maxOccurs="1"/>
                            <xsd:element name="DimWeight" type="Weight" minOccurs="0" maxOccurs="1"/> 
                            <xsd:element name="PieceContents" type="PieceContents" minOccurs="0" maxOccurs="1"/>
                            <xsd:element name="DataIdentifier" type="xsd:string" minOccurs="1" maxOccurs="1"/>
                            <xsd:element name="LicensePlate" type="PieceID" minOccurs="1" maxOccurs="1"/>
                            <xsd:element name="LicensePlateBarCode" type="BarCode" minOccurs="1" maxOccurs="1"/>
                          </xsd:sequence>
                        </xsd:complexType>
	<xsd:complexType name="ShipValResponsePieces">
        <xsd:annotation>
            <xsd:documentation>Element encapsulating pieces information</xsd:documentation>
        </xsd:annotation>
        <xsd:sequence>
            <xsd:element name="Piece" type="ShipValResponsePiece" minOccurs="0" maxOccurs="99"/>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:simpleType name="PieceNumber">
        <xsd:annotation>
            <xsd:documentation>Piece Number</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:positiveInteger">
         </xsd:restriction>
    </xsd:simpleType>
     <xsd:simpleType name="PieceContents">
        <xsd:annotation>
            <xsd:documentation>Piece contents description</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:maxLength value="90"/>
        </xsd:restriction>
    </xsd:simpleType>
    <!--End Comment by Himanshu on 10-Aug-09 for Piece Enablement-->
    
	<xsd:complexType name="Place">
		<xsd:sequence>
			<xsd:element name="ResidenceOrBusiness" type="ResidenceOrBusiness" minOccurs="0"/>
			<xsd:element name="CompanyName" type="CompanyNameValidator" minOccurs="0"/>
			<xsd:element name="AddressLine" type="AddressLine" minOccurs="0" maxOccurs="3"/>
			<xsd:element name="City" type="City"/>
			<xsd:element name="CountryCode" type="CountryCode"/>
			<xsd:element name="DivisionCode" type="StateCode" minOccurs="0"/>
			<xsd:element name="Division" type="State"/>
			<xsd:element name="PostalCode" type="PostalCode"/>
			<!--<xsd:element name="Division" type="StateCode" minOccurs="0"/>-->
			<!--	<xsd:element name="PackageLocation" type="PackageLocation" minOccurs="0"/>-->
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="StateCode">
		<xsd:annotation>
			<xsd:documentation>Division (state) code.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="2"/>
			<xsd:minLength value="2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PostalCode">
		<xsd:annotation>
			<xsd:documentation>Full postal/zip code for address</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>
	<xsd:simpleType name="ProductCode">
		<xsd:annotation>
			<xsd:documentation>DHL product code 
			D : US Overnight  (>0.5 lb) and Worldwide Express Non-dutiable  (>0.5 lb) 
			X : USA Express Envelope   (less than or  = 0.5 lb) and Worldwide Express-International Express Envelope  (less than or = 0.5 lb) 
			W : Worldwide Express-Dutiable
			Y : DHL Second Day Express . Must be Express Envelop with weight lessthan or = 0.5 lb
			G : DHL Second Day . Weight > 0.5 lb or not an express envelop
			T : DHL Ground Shipments
		 </xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
  	        <!-- Added by mary on 6th Oct 2009 for restrict the global product code pattern -->		
			<xsd:pattern value="([A-Z0-9])*"/>
			<xsd:minLength value="1"/>
			<xsd:maxLength value="4"/>
			<!--xsd:enumeration value="D"/>
			<xsd:enumeration value="W"/>
			<xsd:enumeration value="X"/>
			<xsd:enumeration value="G"/>
			<xsd:enumeration value="Y"/>
			<xsd:enumeration value="T"/-->
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="QuantityUnit">
		<xsd:annotation>
			<xsd:documentation>Quantity unit of measure (tens, hundreds, thousands, etc.)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="8"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Quantity">
		<xsd:annotation>
			<xsd:documentation>Quantity</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:positiveInteger">
			<xsd:maxInclusive value="32000"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ReferenceID">
		<xsd:annotation>
			<xsd:documentation>Shipper reference ID</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Reference">
		<xsd:sequence>
			<xsd:element name="ReferenceID" type="ReferenceID"/>
			<xsd:element name="ReferenceType" type="ReferenceType" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="ReferenceType">
		<xsd:annotation>
			<xsd:documentation>Shipment reference type</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ResidenceOrBusiness">
		<xsd:annotation>
			<xsd:documentation>Identifies if a location is a business, residence, or both (B:Business, R:Residence, C:Business Residence)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="B"/>
			<xsd:enumeration value="R"/>
			<xsd:enumeration value="C"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ScheduleB">
		<xsd:annotation>
			<xsd:documentation>Schedule B numner</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="15"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="SEDDescription">
		<xsd:annotation>
			<xsd:documentation>Shippers Export declaration line item description</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="75"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="SEDNumberType">
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="F"/>
			<xsd:enumeration value="X"/>
			<xsd:enumeration value="S"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="SEDNumber">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="FTSR"/>
			<xsd:enumeration value="XTN"/>
			<xsd:enumeration value="SAS"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ShipmentContents">
		<xsd:annotation>
			<xsd:documentation>Shipment contents description</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="90"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="ShipmentDetails">
		<xsd:sequence>
			<xsd:element name="NumberOfPieces" type="xsd:positiveInteger"/>
			<xsd:element name="Pieces" type="Pieces"/>
			<xsd:element name="Weight" type="Weight"/>
			<xsd:element name="WeightUnit" type="WeightUnit"/>
			<xsd:element name="ProductCode" type="ProductCode" minOccurs="0"/>
			<xsd:element name="GlobalProductCode" type="ProductCode"/>
			<xsd:element name="LocalProductCode" type="LocalProductCode" minOccurs="0"/>
			<xsd:element name="Date" type="Date"/>
			<xsd:element name="Contents" type="ShipmentContents" minOccurs="0"/>
			<xsd:element name="DoorTo" type="DoorTo" minOccurs="0"/>
			<xsd:element name="DimensionUnit" type="DimensionUnit" minOccurs="0"/>
			<xsd:element name="InsuredAmount" type="Money" minOccurs="0"/>
			<xsd:element name="PackageType" type="PackageType" minOccurs="0"/>
			<xsd:element name="IsDutiable" type="YesNo" minOccurs="0"/>
			<xsd:element name="CurrencyCode" type="CurrencyCode"/>
			<!--Target date for when package(s) will be shipped (but usually current date).Value may range from today to ten days after.-->
			<!--<xsd:element name="ShipmentContents" type="ShipmentContents" minOccurs="0"/>-->
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="DimensionUnit">
		<xsd:annotation>
			<xsd:documentation>Dimension Unit I (inches)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="C"/>
			<xsd:enumeration value="I"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ShipmentPaymentType">
		<xsd:annotation>
			<xsd:documentation>Shipment payment type (S:Shipper, R:Recipient, T:Third party/other, C:Credit Card)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="S"/>
			<xsd:enumeration value="R"/>
			<xsd:enumeration value="T"/>
			<xsd:enumeration value="C"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Shipment">
		<xsd:sequence>
			<xsd:element name="Weight" type="Weight"/>
			<xsd:element name="WeightUnit" type="WeightUnit"/>
			<xsd:element name="Pieces" type="Pieces"/>
			<xsd:element name="DoorTo" type="DoorTo"/>
			<xsd:element name="AirwarBillNumber" type="AWBNumber" minOccurs="0"/>
			<xsd:element name="AccountType" type="AccountType" minOccurs="0"/>
			<xsd:element name="ProductType" type="xsd:string" minOccurs="0"/>
			<xsd:element name="GlobalProductType" type="xsd:string" minOccurs="0"/>
			<xsd:element name="LocalProductType" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Commodity" type="Commodity" minOccurs="0"/>
			<xsd:element name="DeclaredValue" type="Money" minOccurs="0"/>
			<xsd:element name="DeclaredCurrency" type="CurrencyCode" minOccurs="0"/>
			<xsd:element name="InsuredValue" type="Money" minOccurs="0"/>
			<xsd:element name="InsuredCurrency" type="CurrencyCode" minOccurs="0"/>
			<xsd:element name="DimensionalUnit" type="WeightUnit" minOccurs="0"/>
			<xsd:element name="DimensionalWeight" type="Weight" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="ShipperID">
		<xsd:annotation>
			<xsd:documentation>Shipper's ID</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="30"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Shipper">
		<xsd:sequence>
			<xsd:element name="ShipperID" type="ShipperID" />
			<xsd:element name="CompanyName" type="CompanyNameValidator" />
			<xsd:element name="RegisteredAccount" type="AccountNumber" />
			<xsd:element name="AddressLine" type="AddressLine"
				minOccurs="0" maxOccurs="3" />
			<xsd:element name="City" type="City" />
			<xsd:element name="Division" type="Division" />
			<xsd:element name="DivisionCode" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:maxLength value="2" />
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="PostalCode" type="PostalCode" />
			<xsd:element name="CountryCode" type="CountryCode" />
			<xsd:element name="CountryName" type="CountryName" />
			<xsd:element name="FederalTaxId" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0"></xsd:minLength>
						<xsd:maxLength value="20"></xsd:maxLength>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="StateTaxId" minOccurs="0">

				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:minLength value="0"></xsd:minLength>
						<xsd:maxLength value="20"></xsd:maxLength>

					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Contact" type="Contact" />
			
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="SpecialService">
		<xsd:sequence>
			<xsd:element name="SpecialServiceType" type="SpecialServiceType" minOccurs="0"/>
			<xsd:element name="CommunicationAddress" type="CommunicationAddress" minOccurs="0"/>
			<xsd:element name="CommunicationType" type="CommunicationType" minOccurs="0"/>
			<xsd:element name="ChargeValue" type="Money" minOccurs="0"/>
			<xsd:element name="CurrencyCode" type="CurrencyCode" minOccurs="0"/>
			<xsd:element name="IsWaived" type="YesNo" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="SpecialServiceType">
		<xsd:annotation>
			<xsd:documentation>Special Service codes</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="3" />
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="State">
		<xsd:annotation>
			<xsd:documentation>State</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ServiceAreaCode">
		<xsd:annotation>
			<xsd:documentation>DHL service area code</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="3"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="FacilityCode">
        <xsd:annotation>
            <xsd:documentation>Destination Facility Code</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:length value="3"/>
        </xsd:restriction>
    </xsd:simpleType>
    <xsd:simpleType name="InboundSortCode">
        <xsd:annotation>
            <xsd:documentation>InBound Sort Code</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:length value="4"/>
        </xsd:restriction>
    </xsd:simpleType>
     <xsd:simpleType name="OutboundSortCode">
        <xsd:annotation>
            <xsd:documentation>OutBound Sort Code</xsd:documentation>
        </xsd:annotation>
        <xsd:restriction base="xsd:string">
            <xsd:length value="4"/>
        </xsd:restriction>
    </xsd:simpleType>
	<xsd:simpleType name="Telex">
		<xsd:annotation>
			<xsd:documentation>Telex number and answer back code</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="25"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="TimeHM">
		<xsd:annotation>
			<xsd:documentation>Time in hours and minutes (HH:MM)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:time"/>
	</xsd:simpleType>
	<xsd:complexType name="WeightSeg">
		<xsd:sequence>
			<xsd:element name="Weight" type="Weight"/>
			<xsd:element name="WeightUnit" type="WeightUnit"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="WeightUnit">
		<xsd:annotation>
			<xsd:documentation>Unit of weight measurement (L:Pounds)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="K"/>
			<xsd:enumeration value="L"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Weight">
		<xsd:annotation>
			<xsd:documentation>Weight of piece or shipment</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:decimal">
			<xsd:fractionDigits value="1"/>
			<xsd:maxInclusive value="999999.9"/>
			<xsd:totalDigits value="7"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="YesNo">
		<xsd:annotation>
			<xsd:documentation>Boolean flag</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="Y"/>
			<xsd:enumeration value="N"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Request">
		<xsd:annotation>
			<xsd:documentation>Generic request header</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ServiceHeader" type="ServiceHeader"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ServiceHeader">
		<xsd:annotation>
			<xsd:documentation>Standard routing header</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="MessageTime" type="xsd:dateTime" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Time this message is sent</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MessageReference" type="MessageReference" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>A string, peferably number,  to uniquely identify individual messages. Minimum length must be 28 and maximum length is 32</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="SiteID" type="SiteID"/>
			<xsd:element name="Password" type="Password"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="SiteID">
		<xsd:annotation>
			<xsd:documentation>Site ID used for verifying the sender</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="6"/>
			<xsd:maxLength value="20"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Password">
		<xsd:annotation>
			<xsd:documentation>Password used for verifying the sender</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="8"/>
			<xsd:maxLength value="20"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="MessageReference">
		<xsd:annotation>
			<xsd:documentation>Reference to the requested Message</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="28"/>
			<xsd:maxLength value="32"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PaymentType">
		<xsd:annotation>
			<xsd:documentation>payment type (S:Shipper,R:Recipient,T:Third Party,C:Credit Card)</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1"/>
			<xsd:enumeration value="S"/>
			<xsd:enumeration value="R"/>
			<xsd:enumeration value="T"/>
			<!--Commented by Amruta on 07-Feb-08 for charge card removal requirement-->
			<!--xsd:enumeration value="C"/-->
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Response">
		<xsd:annotation>
			<xsd:documentation>Generic response header</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ServiceHeader" type="ServiceHeader"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Status">
		<xsd:annotation>
			<xsd:documentation>Status/Exception signal element</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ActionStatus" type="xsd:string"/>
			<xsd:element name="Condition" type="Condition" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Note">
		<xsd:annotation>
			<xsd:documentation>Note/Warning</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ActionNote" type="xsd:string"/>
			<xsd:element name="Condition" type="Condition" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Condition">
		<xsd:sequence>
			<xsd:element name="ConditionCode" type="xsd:string"/>
			<xsd:element name="ConditionData" type="xsd:string" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Customer">
		<xsd:sequence>
			<xsd:element name="CustomerID" type="xsd:string"/>
			<xsd:element name="Name" type="xsd:string"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="BarCode">
		<xsd:restriction base="xsd:base64Binary"/>
	</xsd:simpleType>
	<xsd:complexType name="BarCodes">
		<xsd:annotation>
			<xsd:documentation>Element containing BarCode data</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="BarCode" type="BarCode" minOccurs="0" maxOccurs="unbounded">
				<xsd:annotation>
					<xsd:documentation>Contains barcodes as Base64 encoded binary data</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="DestinationServiceArea">
		<xsd:sequence>
			<xsd:element name="ServiceAreaCode" type="ServiceAreaCode" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>three letter service area code</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Description" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Detailed description for the Area code such as city, state,country etc</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="FacilityCode" type="FacilityCode" minOccurs="0" maxOccurs="1">
                <xsd:annotation>
                    <xsd:documentation>Destination Facility Code</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="InboundSortCode" type="InboundSortCode" minOccurs="0" maxOccurs="1">
                <xsd:annotation>
                    <xsd:documentation>InBound Sort Code</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="OriginServiceArea">
        <xsd:sequence>
            <xsd:element name="ServiceAreaCode" type="ServiceAreaCode" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>three letter service area code</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Description" type="xsd:string" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>Detailed description for the Area code such as city, state,country etc</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="OutboundSortCode" type="OutboundSortCode" minOccurs="0" maxOccurs="1">
                <xsd:annotation>
                    <xsd:documentation>OutBound Sort Code</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
        </xsd:sequence>
    </xsd:complexType>
    <xsd:complexType name="ServiceArea">
        <xsd:sequence>
            <xsd:element name="ServiceAreaCode" type="ServiceAreaCode" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>three letter service area code</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
            <xsd:element name="Description" type="xsd:string" minOccurs="0">
                <xsd:annotation>
                    <xsd:documentation>Detailed description for the Area code such as city, state,country etc</xsd:documentation>
                </xsd:annotation>
            </xsd:element>
        </xsd:sequence>
    </xsd:complexType>
	<xsd:complexType name="ServiceEvent">
		<xsd:annotation>
			<xsd:documentation>Complex type to describe a service event. Eg Pickup, Delivery</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="EventCode">
				<xsd:annotation>
					<xsd:documentation>Two letter Code denoting a specific service event</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:length value="2"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Description" type="xsd:string" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Description of the service event code</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<!--Add Tracking start -->
	<xsd:simpleType name="LevelOfDetails">
		<xsd:annotation>
			<xsd:documentation>Checkpoint details selection flag</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="LAST_CHECK_POINT_ONLY"/>
			<xsd:enumeration value="ALL_CHECK_POINTS"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="ShipmentDate">
		<xsd:sequence>
			<xsd:element name="ShipmentDateFrom" type="Date"/>
			<xsd:element name="ShipmentDateTo" type="Date"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="AWBInfo">
		<xsd:sequence>
			<xsd:element name="AWBNumber" type="AWBNumber"/>
			<xsd:element name="Status" type="Status"/>
			<xsd:element name="ShipmentInfo" type="ShipmentInfo" minOccurs="0"/>
			<!--Add Comment by Sarvani on 10-Aug-09 for Piece Enablement-->
			<xsd:element name="Pieces" type="TrackingPieces" minOccurs="0" />
			<!--End Add Comment by Sarvani on 10-Aug-09 for Piece Enablement-->
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ShipmentInfo">
		<xsd:sequence>
			<xsd:element name="OriginServiceArea" type="OriginServiceArea"/>
			<xsd:element name="DestinationServiceArea" type="DestinationServiceArea" minOccurs="0"/>
			<xsd:element name="ShipperName" type="PersonName"/>
			<xsd:element name="ShipperAccountNumber" type="AccountNumber" minOccurs="0"/>
			<xsd:element name="ConsigneeName" type="PersonName"/>
			<xsd:element name="ShipmentDate" type="xsd:dateTime"/>
			<xsd:element name="Pieces" minOccurs="0"/>
			<xsd:element name="Weight" type="xsd:string" minOccurs="0"/>
			<xsd:element name="WeightUnit" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
						<xsd:enumeration value="L"/>
						<xsd:enumeration value="K"/>
						<xsd:enumeration value="G"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="EstDlvyDate" type="xsd:dateTime" minOccurs="0"/>
			<!-- Start Priya 27/4/2011 Tracking CR Start  -->
			<xsd:element name="GlobalProductCode" type="GlobalProductCode" minOccurs="0"/>
			<xsd:element name="ShipmentDesc" type="xsd:string" minOccurs="0"/>
			<xsd:element name="DlvyNotificationFlag" minOccurs="0">
				<xsd:simpleType>
					<xsd:restriction base="xsd:string">
					<xsd:length value="1"/>
						<xsd:enumeration value="Y"/>
						<xsd:enumeration value="N"/>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="Shipper" type="Shipper" minOccurs="0"/>
			<xsd:element name="Consignee" type="Consignee" minOccurs="0"/>
			<!-- End Priya 27/4/2011 Tracking CR Start  -->
			<xsd:choice>
				<xsd:element name="ShipmentEvent" type="ShipmentEvent" maxOccurs="unbounded"/>
				<xsd:element name="ShipperReference" type="Reference"/>
			</xsd:choice>
		</xsd:sequence>
	</xsd:complexType>
	<!--Add Tracking end -->
	<xsd:complexType name="ErrorResponse">
		<xsd:annotation>
			<xsd:documentation>Generic response header</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ServiceHeader" type="ServiceHeader"/>
			<xsd:element name="Status" type="Status"/>
		</xsd:sequence>
	</xsd:complexType>
	<!--Shippment Event Start -->
	<xsd:complexType name="ShipmentEvent">
		<xsd:annotation>
			<xsd:documentation>Describes the checkpoint information</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Date" type="xsd:date"/>
			<xsd:element name="Time" type="xsd:time"/>
			<xsd:element name="ServiceEvent" type="ServiceEvent"/>
			<xsd:element name="Signatory" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Signatory</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string"/>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ServiceArea" type="ServiceArea"/>
		</xsd:sequence>
	</xsd:complexType>
	<!--Shippment Event End -->
	
	<!--Add Comment by Sarvani on 10-Aug-09 for Piece Enablement-->
	<xsd:complexType name="PieceInfo">
	<xsd:sequence>
			<xsd:element name="PieceDetails" type="PieceDetails" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="PieceEvent" type="PieceEvent" maxOccurs="unbounded"/>
	</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PieceEvent">
		<xsd:annotation>
			<xsd:documentation>Describes the checkpoint information</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Date" type="xsd:date"/>
			<xsd:element name="Time" type="xsd:time"/>
			<xsd:element name="ServiceEvent" type="ServiceEvent"/>			
			<xsd:element name="Signatory" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Signatory</xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:string"/>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="ServiceArea" type="ServiceArea"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PieceDetails">
		<xsd:sequence>
			<xsd:element name="AWBNumber" type="xsd:string" minOccurs="1"/>
			<xsd:element name="LicensePlate" type="TrackingPieceID" minOccurs="1"/>
			<xsd:element name="PieceNumber" type="xsd:string" minOccurs="0"/>
						
			<xsd:element name="ActualDepth" type="xsd:string" minOccurs="0"/>
			<xsd:element name="ActualWidth" type="xsd:string" minOccurs="0"/>
			<xsd:element name="ActualHeight" type="xsd:string" minOccurs="0"/>
			<xsd:element name="ActualWeight" type="xsd:string" minOccurs="0"/>
			
			<xsd:element name="Depth" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Width" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Height" type="xsd:string" minOccurs="0"/>
			<xsd:element name="Weight" type="xsd:string" minOccurs="0"/>
			
			<xsd:element name="PackageType" type="PackageType" minOccurs="0"/>
			<xsd:element name="DimWeight" type="xsd:string" minOccurs="0"/>
			<xsd:element name="WeightUnit" type="xsd:string" minOccurs="0"/>
			<xsd:element name="PieceContents" type="xsd:string" minOccurs="0"/>
			
		</xsd:sequence>
	</xsd:complexType>
	<!--Add Comment by Sarvani on 27-Aug-09 for Piece Enablement-->
	<xsd:complexType name="TrackingPieces">
		<xsd:annotation>
			<xsd:documentation>Piece Info</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="PieceInfo" type="PieceInfo" minOccurs="1" maxOccurs="unbounded" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="TrackingPieceID">
		<xsd:annotation>
			<xsd:documentation>Piece ID</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="35"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="Fault">
		<xsd:annotation>
			<xsd:documentation>Piece Fault</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="PieceFault" type="PieceFault" minOccurs="1" maxOccurs="unbounded" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="PieceFault">
		<xsd:sequence>
			<xsd:element name="PieceID" type="TrackingPieceID" minOccurs="1">
				<xsd:annotation>
					<xsd:documentation>The License Plate identifier.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ConditionCode" type="xsd:string" minOccurs="1">
				<xsd:annotation>
					<xsd:documentation>Condition Code</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="ConditionData" type="xsd:string" minOccurs="1">
				<xsd:annotation>
					<xsd:documentation>Condition Data</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="LabelImageFormat">
		<xsd:annotation>
			<xsd:documentation>LabelImageFormat</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="3"/>
			<xsd:maxLength value="4" />
			<xsd:enumeration value="EPL2" />
			<xsd:enumeration value="PDF" />
			<xsd:enumeration value="ZPL2" />
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PLTStatus">
		<xsd:annotation>
			<xsd:documentation>PLTStatus</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="1" />
			<xsd:enumeration value="A" />
			<xsd:enumeration value="D" />
			<xsd:enumeration value="S" />
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="QtdSInAdCur">
		<xsd:annotation>
			<xsd:documentation>QtdSInAdCur</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="CurrencyCode" type="CurrencyCode"
				minOccurs="1" />
			<xsd:element name="CurrencyRoleTypeCode" type="CurrencyRoleTypeCode"
				minOccurs="1" />
			<xsd:element name="PackageCharge" type="PackageCharge"
				minOccurs="1" />
			<xsd:element name="ShippingCharge" type="ShippingCharge"
				minOccurs="1" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="CurrencyRoleTypeCode">
		<xsd:annotation>
			<xsd:documentation>CurrencyRoleTypeCode</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="5"/>
			<xsd:enumeration value="BILLCU"/>
			<xsd:enumeration value="PULCL"/>
			<xsd:enumeration value="INVCU"/>
			<xsd:enumeration value="BASEC"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PackageCharge">
		<xsd:annotation>
			<xsd:documentation>PackageCharge</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:decimal">
            <xsd:fractionDigits value="3"/>
            <xsd:totalDigits value="18"/>
        </xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="ShippingCharge">
		<xsd:annotation>
			<xsd:documentation>ShippingCharge</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:decimal">
            <xsd:fractionDigits value="3"/>
            <xsd:totalDigits value="18"/>
        </xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="LabelImage">
		<xsd:annotation>
			<xsd:documentation>LabelImage</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="OutputFormat" type="OutputFormat" minOccurs="0" />
			<xsd:element name="OutputImage" type="OutputImage" minOccurs="0" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="OutputFormat">
		<xsd:annotation>
			<xsd:documentation>OutputFormat</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
		<xsd:enumeration value="EPL2" />
		<xsd:enumeration value="PDF" />
		<xsd:enumeration value="ZPL2" />
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="OutputImage">
		<xsd:annotation>
			<xsd:documentation>OutputImage</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:base64Binary" />
	</xsd:simpleType>
	<xsd:complexType name="DocImages">
		<xsd:annotation>
			<xsd:documentation>DocImages</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="DocImage" type="DocImage" minOccurs="0" maxOccurs="unbounded" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="DocImage">
		<xsd:annotation>
			<xsd:documentation>DocImage</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Type" type="Type" />
			<xsd:element name="Image" type="Image" />
			<xsd:element name="ImageFormat" type="ImageFormat" />
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="Type">
		<xsd:annotation>
			<xsd:documentation>Image Type</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="3" />
			<xsd:enumeration value="HWB" />
			<xsd:enumeration value="INV" />
			<xsd:enumeration value="PNV" />
			<xsd:enumeration value="COO" />
			<xsd:enumeration value="NAF" />
			<xsd:enumeration value="CIN" />
			<xsd:enumeration value="DCL" />
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="Image">
		<xsd:annotation>
			<xsd:documentation>Image</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:base64Binary" />
	</xsd:simpleType>
	<xsd:simpleType name="ImageFormat">
		<xsd:annotation>
			<xsd:documentation>Image Format</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="5" />
			<xsd:enumeration value="PDF" />
			<xsd:enumeration value="PNG" />
			<xsd:enumeration value="TIFF" />
			<xsd:enumeration value="GIF" />
			<xsd:enumeration value="JPEG" />
		</xsd:restriction>
	</xsd:simpleType>
</xsd:schema>
