<?xml version="1.0" encoding="UTF-8"?> 
   
   
<xsd:schema targetNamespace="http://www.dhl.com/pickupdatatypes_global" xmlns:dhl="http://www.dhl.com/datatypes_global" xmlns:dhlPickup="http://www.dhl.com/pickupdatatypes_global" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified" attributeFormDefault="unqualified"> 
	<xsd:import namespace="http://www.dhl.com/datatypes_global" schemaLocation="../xsd/datatypes_global.xsd"/> 
	<xsd:complexType name="LargestPiece"> 
		<xsd:annotation> 
			<xsd:documentation>Lists measurements of largest piece. This element is mandatory if the weight of shipment for ground service exceeds 50 pounds</xsd:documentation> 
		</xsd:annotation> 
		<xsd:sequence> 
			<xsd:element name="Width" type="xsd:positiveInteger"> 
				<xsd:annotation> 
					<xsd:documentation>Required when requesting pickup for a ground shipment with weight exceeding 50 pounds</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="Height" type="xsd:positiveInteger"> 
				<xsd:annotation> 
					<xsd:documentation>Required when requesting pickup for a ground shipment with weight exceeding 50 pounds</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="Depth" type="xsd:positiveInteger"> 
				<xsd:annotation> 
					<xsd:documentation>Required when requesting pickup for a ground shipment with weight exceeding 50 pounds</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:complexType name="Place"> 
		<xsd:annotation> 
			<xsd:documentation>Pickup place</xsd:documentation> 
		</xsd:annotation> 
		<xsd:sequence> 
			<xsd:element name="LocationType"> 
				<xsd:annotation> 
					<xsd:documentation>Type Of Location B=Business R=Residence  C= Business/Residence</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:minLength value="1"/> 
						<xsd:maxLength value="1"/> 
						<xsd:enumeration value="B"/> 
						<xsd:enumeration value="R"/> 
						<xsd:enumeration value="C"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="CompanyName" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Unless location type is residence, company name is required</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:minLength value="0"/> 
						<xsd:maxLength value="35"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="Address1"> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:minLength value="0"/> 
						<xsd:maxLength value="35"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="Address2" minOccurs="0"> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:minLength value="0"/> 
						<xsd:maxLength value="35"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="PackageLocation"> 
				<xsd:annotation> 
					<xsd:documentation>Example : front desk</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:minLength value="0"/> 
						<xsd:maxLength value="35"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="City" type="dhl:City"/> 
			<xsd:element name="StateCode" type="dhl:DivisionCode" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>two letter state code is required if location is within the  US</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="DivisionName" type="dhl:Division" minOccurs="0"/> 
			<xsd:element name="CountryCode" type="dhl:CountryCode"> 
				<xsd:annotation> 
					<xsd:documentation>Two letter ISO country code</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="PostalCode" type="dhl:PostalCode" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Required if country is US</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			  
			<xsd:element name="RouteCode" minOccurs="0">
				<xsd:annotation> 
					<xsd:documentation>Place route code, first 2 Uppercase charaters and follow by 2 digits</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:pattern value="([A-Z]{2}\d{2})" />
						<xsd:minLength value="0"/> 
						<xsd:maxLength value="4"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			  
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:complexType name="Requestor"> 
		<xsd:sequence> 
			<xsd:element name="AccountType"> 
				<xsd:annotation> 
					<xsd:documentation>Valid values are D or C.    D =DHL  C = credit Card</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:minLength value="1"/> 
						<xsd:maxLength value="1"/> 
						<xsd:enumeration value="D"/> 
						<xsd:enumeration value="C"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="AccountNumber" type="dhl:AccountNumber" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>DHL Account Number Required only if Account Type is DHL</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="RequestorContact" type="dhlPickup:RequestorContact" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Contact information for the requestor</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element>
			<xsd:element name="CompanyName" type="dhl:CompanyNameValidator" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Required if Contact Name and Contact Phone No.is given</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:complexType name="Pickup"> 
		<xsd:sequence> 
			<xsd:element name="PickupDate" type="xsd:date"> 
				<xsd:annotation> 
					<xsd:documentation>Date of pickup</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="ReadyByTime" type="dhlPickup:TimeHM"> 
				<xsd:annotation> 
					<xsd:documentation>Time pickup must be ready by</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="CloseTime" type="dhlPickup:TimeHM"> 
				<xsd:annotation> 
					<xsd:documentation>Closing time of pickup location</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="AfterHoursClosingTime" type="dhlPickup:TimeHM" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>If this is given, AfterHoursLocation also must be given</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="AfterHoursLocation" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>if this is given, AfterHoursClosingTime must also be given</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="35"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="Pieces" minOccurs="0"> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:positiveInteger"> 
						<xsd:minInclusive value="1"/> 
						<xsd:maxInclusive value="99"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="weight" type="dhl:WeightSeg" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>This is an optional segment</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="SpecialInstructions" minOccurs="0"> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="75"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:simpleType name="PickupType"> 
		<xsd:annotation> 
			<xsd:documentation>Type of pickup (G: Pickup for DHL Ground)</xsd:documentation> 
		</xsd:annotation> 
		<xsd:restriction base="xsd:string"> 
			<xsd:length value="1"/> 
			<xsd:enumeration value="G"/> 
		</xsd:restriction> 
	</xsd:simpleType> 
	<xsd:complexType name="contact"> 
		<xsd:sequence> 
			<xsd:element name="PersonName"> 
				<xsd:annotation> 
					<xsd:documentation>Contact Person Name</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="35"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="Phone"> 
				<xsd:annotation> 
					<xsd:documentation>Contact Phone Number</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="25"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="PhoneExtension" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Contact Phone Extension</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="5"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:complexType name="RequestorContact"> 
		<xsd:sequence> 
			<xsd:element name="PersonName" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Contact Person Name</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="35"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="Phone" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Contact Phone Number</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="25"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="PhoneExtension" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Contact Phone Extension</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:maxLength value="5"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:complexType name="Piece"> 
		<xsd:sequence> 
			<xsd:element name="Weight" type="dhl:Weight" minOccurs="0"/> 
			<xsd:element name="Width" type="xsd:positiveInteger" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>required if height and depth are  specified. Also required when requesting pickup for a ground shipment with weight exceeding 50 pounds</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. Also required when requesting pickup for a ground shipment with weight exceeding 50 pounds</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. Also required when requesting pickup for a ground shipment with weight exceeding 50 pounds</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:complexType name="ChargeCard"> 
		<xsd:sequence> 
			<xsd:element name="ChargeCardNo" type="dhl:ChargeCardNo"/> 
			<xsd:element name="ChargeCardType" type="dhl:ChargeCardType"/> 
			<xsd:element name="ChargeCardExpiryDate" type="dhl:ChargeCardExpDateValidator"/> 
		</xsd:sequence> 
	</xsd:complexType> 
	<xsd:complexType name="ShipmentDetails"> 
		<xsd:sequence> 
			<xsd:element name="AccountType" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Valid values are D or C.    D =DHL  C = credit Card</xsd:documentation> 
				</xsd:annotation> 
				<xsd:simpleType> 
					<xsd:restriction base="xsd:string"> 
						<xsd:minLength value="1"/> 
						<xsd:maxLength value="1"/> 
						<xsd:enumeration value="D"/> 
						<xsd:enumeration value="C"/> 
					</xsd:restriction> 
				</xsd:simpleType> 
			</xsd:element> 
			<xsd:element name="AccountNumber" type="dhl:AccountNumber" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>DHL Account Number Required only if Account Type is DHL</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="ChargeCard" type="dhlPickup:ChargeCard" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>Required if AccountType is Credit Card</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="BillToAccountNumber" type="dhl:AccountNumber" minOccurs="0"/> 
			<xsd:element name="AWBNumber" type="dhl:AWBNumber" minOccurs="0"/> 
			<xsd:element name="NumberOfPieces" type="xsd:positiveInteger" minOccurs="0"/> 
			<xsd:element name="Weight" type="dhl:Weight"/> 
			<xsd:element name="WeightUnit" type="dhl:WeightUnit"/> 
			<xsd:element name="GlobalProductCode" type="dhl:ProductCode" minOccurs="0"/> 
			<xsd:element name="DoorTo" type="dhlPickup:DoorTo"/> 
			<xsd:element name="DimensionUnit" type="dhl:DimensionUnit" minOccurs="0"> 
				<xsd:annotation> 
					<xsd:documentation>If piece information is specified, DiemnsionUnit must be gievn</xsd:documentation> 
				</xsd:annotation> 
			</xsd:element> 
			<xsd:element name="InsuredAmount" type="dhl:Money" minOccurs="0"/> 
			<xsd:element name="InsuredCurrencyCode" type="dhl:CurrencyCode" minOccurs="0"/> 
			<xsd:element name="Pieces" type="dhlPickup:Piece" minOccurs="0"/> 
			<xsd:element name="SpecialService" type="dhl:SpecialServiceType" minOccurs="0" maxOccurs="unbounded"/> 
		</xsd:sequence> 
	</xsd:complexType> 
	<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="DC"/> 
		</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:string"> 
			<xsd:length value="5"/> 
			<xsd:pattern value="([0-1][0-9]|2[0-3]):([0-5][0-9])"/> 
		</xsd:restriction> 
	</xsd:simpleType> 
</xsd:schema> 
