<?xml version="1.0" encoding="UTF-8"?>
<!-- edited by WWA EI Support -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="BookingRequest">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="BookingEnvelope">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="SenderID" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="50"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="ReceiverID" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="6"/>
										<xs:maxLength value="100"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="Password" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="6"/>
										<xs:maxLength value="100"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="Type">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="50"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="Version" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="8"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="EnvelopeID" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="40"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="BookingDetails" maxOccurs="unbounded">
					<xs:complexType>
						<xs:sequence>
						 <xs:element name="ApplicationType" nillable="true" >
					         <xs:annotation>
					          <xs:documentation>WE=WWA-EDI,WO=WWAOnline,WS=WebServices</xs:documentation>
					          </xs:annotation>
					          <xs:simpleType>
            				  <xs:restriction base="xs:string">
					          <xs:maxLength value="2"/>
					          </xs:restriction>
					          </xs:simpleType>
				            </xs:element>
							
							
							<xs:element name="BookingType" nillable="false">
								<xs:annotation>
									<xs:documentation>"F"=FCL; "L"=LCL</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="F"/>
										<xs:enumeration value="L"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="BookingDate" type="xs:date" nillable="false"/>
							<xs:element name="LastSentDate" type="xs:date" nillable="false" minOccurs="0"/>
							<xs:element name="RequestType" nillable="false">
								<xs:annotation>
									<xs:documentation>"N" = New, "U" = Update, "C" = Cancellation</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="BookingNumber" nillable="false" minOccurs="0">
								<xs:annotation>
									<xs:documentation>If RequestType = 'U' or 'C', then BookingNumber is mandatory.</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="20"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="WWAShipmentReference" nillable="true" minOccurs="0">   <!-- Customer/portal, need not to provide this segment, WWA will generate it -->
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="0"/>
										<xs:maxLength value="20"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CustomerControlCode" nillable="false">    <!-- 15 Dec 2021; Max length updated to 40 from 30-->
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="40"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="BookingOffice" minOccurs="0">
											<xs:annotation>
												<xs:documentation>UN Locode.</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="5"/>
												</xs:restriction>
											</xs:simpleType>
							</xs:element>
							<xs:element name="FPI" nillable="true">
											<xs:annotation>
												<xs:documentation>"P" = Prepaid "C" = Collect
												</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="P"/>
													<xs:enumeration value="C"/>
												</xs:restriction>
											</xs:simpleType>
							</xs:element>
							
							<xs:element name="TSRType" nillable="true" minOccurs="0">
					              <xs:annotation>
					                 <xs:documentation>DD=Door to Door, DP=Door to Port, PD=Port to Door, PP=Port to Port</xs:documentation>
					              </xs:annotation>
					              <xs:simpleType>
            				           <xs:restriction base="xs:string">
					                   <xs:maxLength value="2"/>
					                   </xs:restriction>
					              </xs:simpleType>
				            </xs:element>
							
							<xs:element name="ShipmentType" nillable="true" minOccurs="0">   <!-- 15 Dec 2021 -->
					              <xs:annotation>
					                 <xs:documentation>1=Consolidation, 2=Master, 3=Direct, 4=House</xs:documentation>
					              </xs:annotation>
					              <xs:simpleType>
            				           <xs:restriction base="xs:string">
					                   <xs:maxLength value="2"/>
					                   </xs:restriction>
					              </xs:simpleType>
				            </xs:element>
							
							
							<xs:element name="MemberSCAC" nillable="true" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							
							<xs:element name="CustomerSCAC" nillable="true" minOccurs="0">  <!-- 15 Dec 2021 -->
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							
							<xs:element name="CustomerAlias" nillable="true" minOccurs="0">   <!-- 6 June 2022 -->
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="1"/>
										<xs:maxLength value="15"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							
							<xs:element name="CommunicationReference" minOccurs="0" >
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="30"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CustomerReference" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="30"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="ShipperReference" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="30"/>
										<xs:minLength value="0"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="ForwarderReference" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="0"/>
										<xs:maxLength value="30"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="ConsigneeReference" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="0"/>
										<xs:maxLength value="30"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="ContractNumber" minOccurs="0" nillable="true">   <!-- 6 June 2022 -->
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="0"/>
										<xs:maxLength value="30"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							
							<xs:element name="SHInvoiceNumber" minOccurs="0" nillable="true">   <!-- 6 June 2022 ; Shipper Invoice number is available in carting docs which comes along with cargo in CFS -->
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="0"/>
										<xs:maxLength value="30"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							
							<xs:element name="CustGSTNumber" minOccurs="0" nillable="true">   <!-- 6 June 2022 ; Customer GST number -->
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:minLength value="0"/>
										<xs:maxLength value="30"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							
							<xs:element name="Address" maxOccurs="unbounded">   <!-- New Segment -->
								<xs:complexType>
									<xs:sequence>
										<xs:element name="AddressID" nillable="true">
											<xs:annotation>
												<xs:documentation>
												"SH" = Shipper
												"CN" = Consignee
												"N1" = Notify 1
												"N2" = Notify 2
												"FW" = Forwarder
												"AG" = Agent Details
												</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="2"/>
													<xs:minLength value="2"/>
													<xs:enumeration value="SH"/>
													<xs:enumeration value="CN"/>
													<xs:enumeration value="N1"/>
													<xs:enumeration value="N2"/>
													<xs:enumeration value="FW"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="AddressLine1">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="40"/>
													<xs:minLength value="1"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="AddressLine2" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="1"/>
													<xs:maxLength value="40"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="AddressLine3" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="1"/>
													<xs:maxLength value="40"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="AddressLine4" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="1"/>
													<xs:maxLength value="40"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="AddressLine5" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="1"/>
													<xs:maxLength value="40"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="AddressLine6" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="1"/>
													<xs:maxLength value="40"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Phone" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="1"/>
													<xs:maxLength value="20"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Fax" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="1"/>
													<xs:maxLength value="20"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Email" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="50"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										
							<xs:element name="GovtReferences" minOccurs="0" maxOccurs="unbounded">     <!-- 15 Dec 2021 -->
								<xs:annotation>
									<xs:documentation>If customer wants to provide any specific references against the parties. Example: Type=ACID, Reference=123456</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Type" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="20"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Reference" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="0"/>
													<xs:maxLength value="50"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="CustomerContact" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="50"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CustomerPhone" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="20"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CustomerEmail" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="50"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="BUCustomerEmail" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="50"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="OnHold" nillable="false">
								<xs:annotation>
									<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="HVC" nillable="false" minOccurs="0">
								<xs:annotation>
									<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="BondedCargo" nillable="false" minOccurs="0">
								<xs:annotation>
									<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="3"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
										<xs:enumeration value="Yes"/>
										<xs:enumeration value="No"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CFSOrigin" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="PortOfLoading" nillable="false" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
			
							<xs:element name="CFSDestination" nillable="false">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="PortOfDischarge" nillable="true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="FinalDestination" nillable="true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5" fixed="false"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="FinalDestinationPlace" nillable="true" >
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="35"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="FinalDestinationType" nillable="true" >
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="10"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="FinalDestinationCountry" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="20"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="OncarriageFlag" nillable="false">
								<xs:annotation>
									<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="OncarriagePlace" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="20"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="AmsFlag" nillable="false">
								<xs:annotation>
									<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="AesFlag" nillable="false">
								<xs:annotation>
									<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="ColoadCommodity" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="Remarks" minOccurs="0" maxOccurs="unbounded">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="2048"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="OnwardGateway" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="PickupFlag" nillable="false">
								<xs:annotation>
									<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
								</xs:annotation>
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="1"/>
										<xs:enumeration value="N"/>
										<xs:enumeration value="Y"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="PickupDetails" minOccurs="0">
								<xs:annotation>
									<xs:documentation>If PickupFlag="Y" then PickupDetails is mandatory!</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:annotation>
											<xs:documentation>Use the individual fields for address information. If you application instead supports a clobbed address, use the CombinedCompanyNameandAddress field.</xs:documentation>
										</xs:annotation>
										<xs:element name="CombinedCompanyNameandAddress" minOccurs="0">
											<xs:annotation>
												<xs:documentation>5 lines 35 characters per line</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="175"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="PickupReference" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="254"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="CompanyName" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="64"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Address" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="192"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="City" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="64"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="PostalCode" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="64"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="StateProvince" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="64"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Country" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="64"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Contact" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="64"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Phone" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="64"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Email" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="50"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Date" type="xs:date" nillable="false" minOccurs="0"/>
										<xs:element name="TimeFrom" nillable="false" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="5"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="TimeTo" nillable="true" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="5"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Remarks" maxOccurs="unbounded">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="2048"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							
							
							
	<xs:element name="TransportationDetails" minOccurs="0" maxOccurs="unbounded" nillable="true">     <!-- 6 June 2022 -->
      <xs:complexType>
				<xs:sequence>
				<xs:element name="CarriageType" minOccurs="0" nillable="true">
				   <xs:annotation>
				      <xs:documentation>"Pre=PreCarriage"; "On=OnCarriage"</xs:documentation>
			      </xs:annotation>
						<xs:simpleType>
							<xs:restriction base="xs:string">
								<xs:maxLength value="20"/>
							</xs:restriction>
						</xs:simpleType>
					</xs:element>
				<xs:element name="Mode" minOccurs="0" nillable="true">
					<xs:annotation>
				       <xs:documentation>"1=Road"; "2=Rail" </xs:documentation>
			        </xs:annotation>
						<xs:simpleType>
							<xs:restriction base="xs:string">
								<xs:maxLength value="20"/>
							</xs:restriction>
						</xs:simpleType>
					</xs:element>
			       
					<xs:element name="PortOfLoading" nillable="true" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="EstimatedDeparture" nillable="true" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Date" type="xs:date" nillable="false"/>
										<xs:element name="Time" type="xs:time" nillable="false"/>
										<xs:element name="TimeZone" nillable="false">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="4"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							
							<xs:element name="PortOfDischarge" nillable="true" minOccurs="0">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="5"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							
							<xs:element name="EstimatedArrival" nillable="true" minOccurs="0">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Date" type="xs:date" nillable="false"/>
										<xs:element name="Time" type="xs:time" nillable="false"/>
										<xs:element name="TimeZone" nillable="false">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="4"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							
				</xs:sequence>
			</xs:complexType>
</xs:element>
							<xs:element name="SailingDetails">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="VesselVoyageID" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="40"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="VesselName" nillable="false">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="50"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="IMONumber" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="7"/>
													<xs:maxLength value="7"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Voyage" nillable="false">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="10"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										
										<xs:element name="WarehouseCutoffDate">  <!-- 15 Dec 2021;  . Date can be provided in the following formats (if not available with members) YYYY:MM:DD ex: 0000:00:00 -->
											<xs:simpleType>
												<xs:restriction base="xs:date"></xs:restriction>
											</xs:simpleType>
										</xs:element>
										
										<xs:element name="WarehouseCutoffTime" minOccurs="0" nillable="true">  <!-- 15 Dec 2021;  Timestamps may be provided in the following Two formats (if not available with members) 00:00:00.000 OR 00:00:00 -->
											<xs:simpleType>
												<xs:restriction base="xs:time"></xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="ETDCFS" type="xs:date" nillable="false"/>
										<xs:element name="ETDCFSTime" minOccurs="0" nillable="true">  <!-- 15 Dec 2021;  Timestamps may be provided in the following Two formats (if not available with members) 00:00:00.000 OR 00:00:00 -->
											<xs:simpleType>
												<xs:restriction base="xs:time"></xs:restriction>
											</xs:simpleType>
										</xs:element>
										
										<xs:element name="ETACFS" type="xs:date" nillable="false"/>
										<xs:element name="ETACFSTime" minOccurs="0" nillable="true">   <!-- 15 Dec 2021;  Timestamps may be provided in the following Two formats (if not available with members) 00:00:00.000 OR 00:00:00 -->
											<xs:simpleType>
												<xs:restriction base="xs:time"></xs:restriction>
											</xs:simpleType>
										</xs:element>
										
										<xs:element name="ETSOrigin" type="xs:date" nillable="false"/>
										<xs:element name="ETSOriginTime" minOccurs="0" nillable="true">  <!-- 15 Dec 2021;  Timestamps may be provided in the following Two formats (if not available with members) 00:00:00.000 OR 00:00:00 -->
											<xs:simpleType>
												<xs:restriction base="xs:time"></xs:restriction>
											</xs:simpleType>
										</xs:element>
										
										<xs:element name="ETSPoL" type="xs:date" nillable="false" minOccurs="0"/>
										<xs:element name="ETSPoLTime" minOccurs="0" nillable="true">    <!-- 15 Dec 2021; Timestamps may be provided in the following Two formats (if not available with members) 00:00:00.000 OR 00:00:00 -->
											<xs:simpleType>
												<xs:restriction base="xs:time"></xs:restriction>
											</xs:simpleType>
										</xs:element>
										
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							
						   <xs:element name="TransshipmentSailingDetailsFlag" nillable="false">
											<xs:annotation>
												<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="N"/>
													<xs:enumeration value="Y"/>
												</xs:restriction>
											</xs:simpleType>
							</xs:element>
						    
					<xs:element name="TransshipmentSailingDetails" minOccurs="0" maxOccurs="unbounded"> 
                                         <xs:annotation>
                                         	<xs:documentation>If TransshipmentSailingDetailsFlag="Y" then TransshipmentSailingDetails are mandatory!</xs:documentation>
                                         </xs:annotation>
                        <xs:complexType>
                     			     <xs:sequence>
                     						<xs:element name="TSPortIdentifier" nillable="true" minOccurs="0" >    
                                                     <xs:simpleType>
                                                         <xs:restriction base="xs:string">
                                                            <xs:minLength value="0"/>
                                                            <xs:maxLength value="3"/>
                                                         </xs:restriction>
                                                     </xs:simpleType>
                                             </xs:element>
                     
                                              <xs:element name="TSMode" nillable="true" minOccurs="0" >   
											         <xs:annotation>
                               					         <xs:documentation>Vessel, RAIL, ROAD</xs:documentation>
                               					     </xs:annotation>
                                                     <xs:simpleType>
                                                         <xs:restriction base="xs:string">
                                                            <xs:minLength value="0"/>
                                                            <xs:maxLength value="50"/>
                                                         </xs:restriction>
                                                     </xs:simpleType>
                                              </xs:element>											
                     					      <xs:element name="TSVesselName" nillable="true" minOccurs="0" >   
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                           <xs:minLength value="0"/>
                                                           <xs:maxLength value="50"/>
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                              </xs:element>
											  <xs:element name="TSVesselIMO" nillable="true" minOccurs="0">
								                 <xs:simpleType>
								                 	<xs:restriction base="xs:string">
								                 		<xs:minLength value="7"/>
								                 		<xs:maxLength value="8"/>
								                 	</xs:restriction>
								                 </xs:simpleType>
							                  </xs:element> 
                     						  
                     						  <xs:element name="TSVesselvoyage" nillable="true" minOccurs="0" >   <!-- Added New fields for Transshipment Ports -->  
                                                  <xs:simpleType>
                                                      <xs:restriction base="xs:string">
                                                         <xs:minLength value="0"/>
                                                         <xs:maxLength value="50"/>
                                                      </xs:restriction>
                                                  </xs:simpleType>
                                              </xs:element>
                     						  <xs:element name="TSContainerNumber" nillable="true">
								                   <xs:simpleType>
								                   	<xs:restriction base="xs:string">
								                   		<xs:minLength value="0"/>
								                   		<xs:maxLength value="12"/>
								                   	</xs:restriction>
								                   </xs:simpleType>
							                  </xs:element>
                     						  <xs:element name="TSSealNumber" nillable="true" minOccurs="0" >  
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                           <xs:minLength value="0"/>
                                                           <xs:maxLength value="50"/>
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                              </xs:element>
                     						  <xs:element name="TSPort" nillable="true" >   
                                                 	<xs:annotation>
                                                 		<xs:documentation>UN code.</xs:documentation>
                                                 	</xs:annotation>
                                                 	<xs:simpleType>
                                                 		<xs:restriction base="xs:string">
                                                 			<xs:maxLength value="5" />
                                                 		</xs:restriction>
                                                 	</xs:simpleType>
                                              </xs:element>
                                              <xs:element name="TSPortName" nillable="true" minOccurs="0" >  
                                              	 	<xs:annotation>
                                              	 		<xs:documentation>If UN code is not available, Name should be printed.</xs:documentation>
                                              	 	</xs:annotation>
                                              	 	<xs:simpleType>
                                              	 		<xs:restriction base="xs:string">
                                              	 			<xs:maxLength value="80" />
                                              	 		</xs:restriction>
                                              	 	</xs:simpleType>
                                              </xs:element>
                                              
                                             <xs:element name="EtaTSPort" type="xs:date" nillable="true" minOccurs="0" />  
                     					    <!-- Changed Data Type from String to Date -->
                     					    <xs:element name="EtdTSPort" type="xs:date" nillable="true" minOccurs="0" />  
                     					    <xs:element name="EtaTSPortTime" type="xs:time" nillable="true" minOccurs="0" />  <!-- 15 Dec 2021 -->
											<xs:element name="EtdTSPortTime" type="xs:time" nillable="true" minOccurs="0" />  <!-- 15 Dec 2021 --> 
                                               
                       		</xs:sequence>
                       	</xs:complexType>
                      </xs:element>

							
							<xs:element name="CargoDetails" maxOccurs="unbounded">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="Pieces" nillable="false">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="3"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="ShippingMarks" nillable="false" maxOccurs="unbounded">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="2048"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Packaging" nillable="false">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="20"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Commodity" nillable="false" maxOccurs="unbounded">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="254"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="HSCode" nillable="false" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="14"/>
													<xs:minLength value="8"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="Weight" type="xs:float" nillable="false"/>
										<xs:element name="Volume" type="xs:float" nillable="false"/>
										<xs:element name="UOM" nillable="false">
											<xs:annotation>
												<xs:documentation>"E"=English; "M"=Metric</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="M"/>
													<xs:enumeration value="E"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="HazardousFlag" nillable="false">
											<xs:annotation>
												<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="N"/>
													<xs:enumeration value="Y"/>
													<xs:enumeration value="L" />   <!-- stands for LQ = Limited Quntity--> <!-- 15 Dec 2021 -->
													<xs:enumeration value="E" />   <!-- stands for EQ = Excepted Quntity--> <!-- 15 Dec 2021 -->
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="HazardousDetails" minOccurs="0" maxOccurs="unbounded"> <!--Added the support for multiple Haz details on 10/04/2019 by dmaiti as discussed in WWA IT meeting -->
											<xs:annotation>
												<xs:documentation>If HazardousFlag="Y" then HazadousDetails is mandatory!</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:sequence>
													<xs:element name="HazardousClass" type="xs:float"/>
													<xs:element name="Flashpoint" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="10"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="FlashpointFlag" minOccurs="0">
														<xs:annotation>
															<xs:documentation>"F" = Fahrenheit "C" = Centigrade</xs:documentation>
														</xs:annotation>
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:minLength value="0"/>
																<xs:maxLength value="1"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="ShippingName" maxOccurs="unbounded">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="150"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="UNNumber">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="10"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="PackingGroup">
														<xs:annotation>
															<xs:documentation>Roman Numerals only (I, II, III)</xs:documentation>
														</xs:annotation>
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="3"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="Pieces" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="6"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="Packaging" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="10"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="Weight" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="8"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													
											  <xs:element name="Stackable" nillable="true" minOccurs="0" >     <!--  6 June 20221 -->  
											   <xs:annotation>
												<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
											   </xs:annotation>
											    <xs:simpleType>
												   <xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="N"/>
													<xs:enumeration value="Y"/>
												   </xs:restriction>
											    </xs:simpleType>
										    </xs:element>
													
											<xs:element name="Marinepollutant" nillable="true" minOccurs="0" >     <!-- 15 Dec 2021 -->
											   <xs:annotation>
												<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
											   </xs:annotation>
											    <xs:simpleType>
												   <xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="N"/>
													<xs:enumeration value="Y"/>
												   </xs:restriction>
											    </xs:simpleType>
										    </xs:element>
											
											<xs:element name="LimitedQuntity" nillable="true" minOccurs="0">     <!-- 15 Dec 2021 -->
											   <xs:annotation>
												<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
											   </xs:annotation>
											    <xs:simpleType>
												   <xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="N"/>
													<xs:enumeration value="Y"/>
												   </xs:restriction>
											    </xs:simpleType>
										    </xs:element>
											
											<xs:element name="ExceptedQuntity" nillable="true" minOccurs="0">     <!-- 15 Dec 2021 --> 
											   <xs:annotation>
												<xs:documentation>"Y"=Yes; "N"=No</xs:documentation>
											   </xs:annotation>
											    <xs:simpleType>
												   <xs:restriction base="xs:string">
													<xs:maxLength value="1"/>
													<xs:enumeration value="N"/>
													<xs:enumeration value="Y"/>
												   </xs:restriction>
											    </xs:simpleType>
										    </xs:element>
											
										<xs:element name="EMSNumber" nillable="true" minOccurs="0">    <!-- 15 Dec 2021 -->  
								               <xs:simpleType>
									                <xs:restriction base="xs:string">
										       <xs:maxLength value="13"/>
										       <xs:minLength value="0"/>
									                </xs:restriction>
								               </xs:simpleType>
							              </xs:element>
										  
										  <xs:element name="NetWeight" type="xs:string" nillable="true"/>    <!-- 15 Dec 2021 -->
										  
										  
										  <xs:element name="EmergencyContact" nillable="true" minOccurs="0">     <!-- 15 Dec 2021 -->  
								                  <xs:simpleType>
									                 <xs:restriction base="xs:string">
										                  <xs:maxLength value="100"/>
									                 </xs:restriction>
								                   </xs:simpleType>
							               </xs:element>
										   
										   
										   <xs:element name="EmergencyPhoneNo" nillable="true" minOccurs="0">     <!-- 15 Dec 2021 -->    
								                  <xs:simpleType>
									                 <xs:restriction base="xs:string">
										                  <xs:maxLength value="100"/>
									                 </xs:restriction>
								                   </xs:simpleType>
							               </xs:element>
										   
										           <xs:element name="InnerPieceCount" nillable="true" minOccurs="0">  <!-- 15 Dec 2021 -->  
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="6"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													
													<xs:element name="InnerPackingGroup" nillable="true" minOccurs="0">
														<xs:annotation>
															<xs:documentation>Roman Numerals only (I, II, III)</xs:documentation>   <!-- 15 Dec 2021 -->
														</xs:annotation>
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="3"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													
													<xs:element name="HazComponentInducer" nillable="true" minOccurs="0">     <!-- 15 Dec 2021 -->   
								                       <xs:simpleType>
									                       <xs:restriction base="xs:string">
										                  <xs:maxLength value="110"/>
									                   </xs:restriction>
								                      </xs:simpleType>
							                        </xs:element>
													
													
													
						     <xs:element name="HazDocument" nillable="true" minOccurs="0" maxOccurs="unbounded">     <!-- 15 Dec 2021 -->
								 <xs:annotation>
									<xs:documentation>Customer can to provide any specific Haz document URL with booking request</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element name="HazDocumentType" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="20"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="DocURL" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:minLength value="0"/>
													<xs:maxLength value="256"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="ImageData" type="xs:base64Binary" nillable="true" minOccurs="0"/>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
													
										   
										   

													
												</xs:sequence>
											</xs:complexType>
										</xs:element>
										<xs:element name="ShipmentRelatedData" maxOccurs="25" minOccurs="0">
											<xs:complexType>
												<xs:sequence>
													<xs:element name="Quantity" minOccurs="0">
														<xs:simpleType>
															<xs:restriction base="xs:string">
																<xs:maxLength value="3"/>
															</xs:restriction>
														</xs:simpleType>
													</xs:element>
													<xs:element name="Length" nillable="true" type="xs:string" minOccurs="0" />   <!-- 15 Dec 2021, data type changes as per PCS --> 
													<xs:element name="Width" nillable="true" type="xs:string" minOccurs="0" />    <!-- 15 Dec 2021 data type changes as per PCS --> 
													<xs:element name="Height" nillable="true" type="xs:string" minOccurs="0" />	 <!-- 15 Dec 2021 data type changes as per PCS --> 
	                                 	        <xs:element name="MeasurementUnit" nillable="true" minOccurs="0">            <!-- 6 June 2022 -->
	                                                    	<xs:annotation>
	                                                    		<xs:documentation>"IN"=Inch"; FT"=Feet; "CM"=centimetres; "M"=meters</xs:documentation>
	                                                    	</xs:annotation>
	                                         	       <xs:simpleType>
	                                         	       <xs:restriction base="xs:string">
	                                         	       	<xs:enumeration value="IN"/>
	                                                      <xs:enumeration value="FT"/>
	                                         	       	<xs:enumeration value="CM"/>
	                                         	       	<xs:enumeration value="M"/>
	                                         	       </xs:restriction>
	                                         	       </xs:simpleType>
	                                          </xs:element>
												</xs:sequence>
										</xs:complexType>
										</xs:element>																				
										<xs:element name="OverDimensionFlag" nillable="false" minOccurs="0">
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="3"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="OverHeightFlag" nillable="false" minOccurs="0">
											<xs:annotation>
												<xs:documentation> Not to exceed 230 cm/90 inches</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="3"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="OverLengthFlag" nillable="false" minOccurs="0">
											<xs:annotation>
												<xs:documentation> Not to exceed 590 cm/232 inches</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="3"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="OverWeightFlag" nillable="false" minOccurs="0">
											<xs:annotation>
												<xs:documentation>Not to exceed 3000 kg/6613 pounds</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="3"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
										<xs:element name="OverWidthFlag" nillable="false" minOccurs="0">
											<xs:annotation>
												<xs:documentation>Not to exceed 230 cm/90 inches</xs:documentation>
											</xs:annotation>
											<xs:simpleType>
												<xs:restriction base="xs:string">
													<xs:maxLength value="3"/>
												</xs:restriction>
											</xs:simpleType>
										</xs:element>
									</xs:sequence>
								</xs:complexType>
							</xs:element>
							<xs:element name="ChargeDetails" nillable="true" maxOccurs="unbounded" minOccurs="0">
										<xs:annotation>
                                             <xs:documentation>
                                                    If ChargeDetails are available, then details are mandatory.
                                             </xs:documentation>
                                         </xs:annotation>
                                     <xs:complexType>
                                     <xs:sequence>
                                     <xs:element name="ChargeCode" nillable="true" minOccurs="0" >
                                           <xs:simpleType>
                                           <xs:restriction base="xs:string">
                                           <xs:maxLength value="4"/>
                                           </xs:restriction>
                                           </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="ChargeName" nillable="true" minOccurs="0">
                                            <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                            <xs:maxLength value="50"/>
                                            </xs:restriction>
                                            </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="Rate" nillable="true" minOccurs="0">
                                            <xs:simpleType>
                                            <xs:restriction base="xs:decimal">
                                            <xs:totalDigits value="8"/>
                                            <xs:fractionDigits value="4"/>
                                            </xs:restriction>
                                            </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="Currency"  nillable="true" minOccurs="0">
                                            <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                            <xs:maxLength value="3"/>
                                            </xs:restriction>
                                            </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="Basis"  nillable="true" minOccurs="0">
                                            <xs:simpleType>
                                            <xs:restriction base="xs:string">
                                            <xs:maxLength value="2"/>
                                            </xs:restriction>
                                            </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="ESTCharge"  nillable="true" minOccurs="0">
                                           <xs:simpleType>
                                           <xs:restriction base="xs:decimal">
                                           <xs:totalDigits value="10"/>
                                           <xs:fractionDigits value="4"/>
                                           </xs:restriction>
                                           </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="MarkupRate"  nillable="true" minOccurs="0">
                                           <xs:simpleType>
                                           <xs:restriction base="xs:decimal">
                                           <xs:totalDigits value="4"/>
                                           <xs:fractionDigits value="2"/>
                                           </xs:restriction>
                                           </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="TotalCost"  nillable="true" minOccurs="0">
                                          <xs:simpleType>
                                          <xs:restriction base="xs:decimal">
                                          <xs:totalDigits value="10"/>
                                          <xs:fractionDigits value="4"/>
                                          </xs:restriction>
                                          </xs:simpleType>
                                     </xs:element>
                                     <xs:element name="Remarks"  nillable="true" minOccurs="0">
                                          <xs:simpleType>
                                          <xs:restriction base="xs:string">
                                          <xs:maxLength value="50"/>
                                          </xs:restriction>
                                          </xs:simpleType>
                                     </xs:element>
                                   </xs:sequence>
                                </xs:complexType>
                            </xs:element>
							<xs:element name="TransportTemperatureRangeFrom" minOccurs="0" nillable = "true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="6"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="TransportTemperatureRangeTo" minOccurs="0" nillable = "true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="6"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CustomsRelatedData" minOccurs="0" maxOccurs="10">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="255"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CTCCode" minOccurs="0" nillable="true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="3"/>
									</xs:restriction>
								</xs:simpleType>								
							</xs:element>
							<xs:element name="CTCDescription" minOccurs="0" nillable="true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="255"/>
									</xs:restriction>
								</xs:simpleType>								
							</xs:element>
							<xs:element name="CustomsContact" minOccurs="0" nillable="true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="64"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
							<xs:element name="CustomsPhone" minOccurs="0" nillable="true">
								<xs:simpleType>
									<xs:restriction base="xs:string">
										<xs:maxLength value="64"/>
									</xs:restriction>
								</xs:simpleType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>
