namespace TM.TransSmart.Schemas {
    using Microsoft.XLANGs.BaseTypes;
    
    
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.BizTalk.Schema.Compiler", "3.0.1.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
    [SchemaType(SchemaTypeEnum.Document)]
    [Schema(@"http://TM.TransSmart.Shipment",@"carrierBooking")]
    [System.SerializableAttribute()]
    [SchemaRoots(new string[] {@"carrierBooking"})]
    public sealed class Shipment : Microsoft.XLANGs.BaseTypes.SchemaBase {
        
        [System.NonSerializedAttribute()]
        private static object _rawSchema;
        
        [System.NonSerializedAttribute()]
        private const string _strSchema = @"<?xml version=""1.0"" encoding=""utf-16""?>
<xs:schema xmlns:t=""http://TM.TransSmart.Shipment"" xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:b=""http://schemas.microsoft.com/BizTalk/2003"" elementFormDefault=""qualified"" targetNamespace=""http://TM.TransSmart.Shipment"" xmlns:xs=""http://www.w3.org/2001/XMLSchema"">
  <xs:annotation>
    <xs:appinfo>
      <schemaInfo root_reference=""carrierBooking"" xmlns=""http://schemas.microsoft.com/BizTalk/2003"" />
    </xs:appinfo>
  </xs:annotation>
  <xs:element name=""carrierBooking"">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref=""t:carrierBookingInfo"" />
        <xs:element ref=""t:shipments"" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name=""carrierBookingInfo"">
    <xs:complexType>
      <xs:all>
        <xs:element ref=""t:version"" />
        <xs:element ref=""t:status"" />
        <xs:element ref=""t:description"" />
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name=""version"" type=""xs:string"" />
  <xs:element name=""status"" type=""xs:string"" />
  <xs:element name=""shipments"">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs=""unbounded"" ref=""t:shipmentInfo"" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name=""shipmentInfo"">
    <xs:complexType>
      <xs:all>
        <xs:element minOccurs=""0"" ref=""t:customerId"" />
        <xs:element minOccurs=""0"" ref=""t:costcenter"" />
        <xs:element minOccurs=""0"" ref=""t:carrier"" />
        <xs:element minOccurs=""0"" ref=""t:executingCarrier"" />
        <xs:element minOccurs=""0"" ref=""t:reference"" />
        <xs:element minOccurs=""0"" ref=""t:awb"" />
        <xs:element minOccurs=""0"" ref=""t:description"" />
        <xs:element minOccurs=""0"" ref=""t:instruction"" />
        <xs:element minOccurs=""0"" ref=""t:value"" />
        <xs:element minOccurs=""0"" ref=""t:valueCurrency"" />
        <xs:element minOccurs=""0"" ref=""t:pickupDate"" />
        <xs:element minOccurs=""0"" ref=""t:pickupTime"" />
        <xs:element minOccurs=""0"" ref=""t:pickupTimeTo"" />
        <xs:element minOccurs=""0"" ref=""t:requestedDeliveryDate"" />
        <xs:element minOccurs=""0"" ref=""t:requestedDeliveryTime"" />
        <xs:element minOccurs=""0"" ref=""t:requestedDeliveryTimeTo"" />
        <xs:element minOccurs=""0"" ref=""t:plannedDeliveryDate"" />
        <xs:element minOccurs=""0"" ref=""t:plannedDeliveryTime"" />
        <xs:element minOccurs=""0"" ref=""t:service"" />
        <xs:element minOccurs=""0"" ref=""t:serviceLevelTime"" />
        <xs:element minOccurs=""0"" ref=""t:serviceLevelOther"" />
        <xs:element minOccurs=""0"" ref=""t:incoterms"" />
        <xs:element minOccurs=""0"" ref=""t:inbound"" />
        <xs:element minOccurs=""0"" ref=""t:noOfPackages"" />
        <xs:element minOccurs=""0"" ref=""t:weight"" />
        <xs:element minOccurs=""0"" ref=""t:weightUom"" />
        <xs:element minOccurs=""0"" ref=""t:price"" />
        <xs:element minOccurs=""0"" ref=""t:salesPrice"" />
        <xs:element minOccurs=""0"" ref=""t:currency"" />
        <xs:element minOccurs=""0"" ref=""t:trackingUrl"" />
        <xs:element minOccurs=""0"" ref=""t:shipmentStatusCode"" />
        <xs:element minOccurs=""0"" ref=""t:additionalReferences"" />
        <xs:element minOccurs=""0"" ref=""t:shipmentLines"" />
        <xs:element minOccurs=""0"" ref=""t:addresses"" />
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name=""customerId"" type=""xs:string"" />
  <xs:element name=""costcenter"" type=""xs:string"" />
  <xs:element name=""carrier"" type=""xs:string"" />
  <xs:element name=""executingCarrier"" type=""xs:string"" />
  <xs:element name=""reference"" type=""xs:string"" />
  <xs:element name=""instruction"" type=""xs:string"" />
  <xs:element name=""valueCurrency"" type=""xs:string"" />
  <xs:element name=""pickupDate"" type=""xs:string"" />
  <xs:element name=""pickupTime"" type=""xs:string"" />
  <xs:element name=""pickupTimeTo"" type=""xs:string"" />
  <xs:element name=""requestedDeliveryDate"" type=""xs:string"" />
  <xs:element name=""requestedDeliveryTime"" type=""xs:string"" />
  <xs:element name=""requestedDeliveryTimeTo"" type=""xs:string"" />
  <xs:element name=""plannedDeliveryDate"" type=""xs:string"" />
  <xs:element name=""plannedDeliveryTime"" type=""xs:string"" />
  <xs:element name=""service"" type=""xs:string"" />
  <xs:element name=""serviceLevelTime"" type=""xs:string"" />
  <xs:element name=""serviceLevelOther"" type=""xs:string"" />
  <xs:element name=""incoterms"" type=""xs:string"" />
  <xs:element name=""inbound"" type=""xs:string"" />
  <xs:element name=""noOfPackages"" type=""xs:integer"" />
  <xs:element name=""weightUom"" type=""xs:string"" />
  <xs:element name=""price"" nillable=""true"" type=""xs:string"" />
  <xs:element name=""salesPrice"" nillable=""true"" type=""xs:string"" />
  <xs:element name=""currency"" type=""xs:string"" />
  <xs:element name=""trackingUrl"" type=""xs:string"" />
  <xs:element name=""shipmentStatusCode"" type=""xs:string"" />
  <xs:element name=""additionalReferences"">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs=""0"" maxOccurs=""unbounded"" ref=""t:additionalReference"" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name=""additionalReference"">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref=""t:type"" />
        <xs:element ref=""t:value"" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name=""shipmentLines"">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs=""unbounded"" ref=""t:shipmentLine"" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name=""shipmentLine"">
    <xs:complexType>
      <xs:all>
        <xs:element minOccurs=""0"" ref=""t:sequence"" />
        <xs:element minOccurs=""0"" ref=""t:lineNo"" />
        <xs:element minOccurs=""0"" ref=""t:shipmentLineId"" />
        <xs:element minOccurs=""0"" ref=""t:awb"" />
        <xs:element minOccurs=""0"" ref=""t:packageType"" />
        <xs:element minOccurs=""0"" ref=""t:description"" />
        <xs:element minOccurs=""0"" ref=""t:quantity"" />
        <xs:element minOccurs=""0"" ref=""t:genericStatusCode"" />
        <xs:element minOccurs=""0"" ref=""t:carrierStatusCode"" />
        <xs:element minOccurs=""0"" ref=""t:carrierStatusDescription"" />
        <xs:element minOccurs=""0"" ref=""t:deliveryDate"" />
        <xs:element minOccurs=""0"" ref=""t:deliveryTime"" />
        <xs:element minOccurs=""0"" ref=""t:acceptedBy"" />
        <xs:element minOccurs=""0"" ref=""t:measurements"" />
        <xs:element minOccurs=""0"" ref=""t:dangerousGoods"" />
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name=""sequence"" type=""xs:integer"" />
  <xs:element name=""lineNo"" type=""xs:integer"" />
  <xs:element name=""shipmentLineId"" type=""xs:string"" />
  <xs:element name=""packageType"" type=""xs:string"" />
  <xs:element name=""quantity"" type=""xs:integer"" />
  <xs:element name=""genericStatusCode"" type=""xs:string"" />
  <xs:element name=""carrierStatusCode"" type=""xs:string"" />
  <xs:element name=""carrierStatusDescription"" type=""xs:string"" />
  <xs:element name=""deliveryDate"" type=""xs:date"" />
  <xs:element name=""deliveryTime"" type=""xs:time"" />
  <xs:element name=""acceptedBy"" type=""xs:string"" />
  <xs:element name=""measurements"">
    <xs:complexType>
      <xs:all>
        <xs:element minOccurs=""0"" ref=""t:length"" />
        <xs:element minOccurs=""0"" ref=""t:width"" />
        <xs:element minOccurs=""0"" ref=""t:height"" />
        <xs:element minOccurs=""0"" ref=""t:weight"" />
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name=""length"" nillable=""true"" type=""xs:decimal"" />
  <xs:element name=""width"" nillable=""true"" type=""xs:decimal"" />
  <xs:element name=""height"" nillable=""true"" type=""xs:decimal"" />
  <xs:element name=""addresses"">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs=""unbounded"" ref=""t:address"" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name=""address"">
    <xs:complexType>
      <xs:all>
        <xs:element minOccurs=""0"" ref=""t:type"" />
        <xs:element minOccurs=""0"" ref=""t:name"" />
        <xs:element minOccurs=""0"" ref=""t:street1"" />
        <xs:element minOccurs=""0"" ref=""t:street2"" />
        <xs:element minOccurs=""0"" ref=""t:city"" />
        <xs:element minOccurs=""0"" ref=""t:houseNo"" />
        <xs:element minOccurs=""0"" ref=""t:zipCode"" />
        <xs:element minOccurs=""0"" ref=""t:state"" />
        <xs:element minOccurs=""0"" ref=""t:countryCode"" />
        <xs:element minOccurs=""0"" ref=""t:contact"" />
        <xs:element minOccurs=""0"" ref=""t:telNo"" />
        <xs:element minOccurs=""0"" ref=""t:faxNo"" />
        <xs:element minOccurs=""0"" ref=""t:email"" />
        <xs:element minOccurs=""0"" ref=""t:VATNumber"" />
        <xs:element minOccurs=""0"" ref=""t:accountNo"" />
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name=""dangerousGoods"" nillable=""true"">
    <xs:complexType>
      <xs:sequence>
        <xs:element maxOccurs=""unbounded"" ref=""t:dangerousGoodsInfo"" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name=""name"" type=""xs:string"" />
  <xs:element name=""street1"" type=""xs:string"" />
  <xs:element name=""street2"" type=""xs:string"" />
  <xs:element name=""city"" type=""xs:string"" />
  <xs:element name=""houseNo"" type=""xs:string"" />
  <xs:element name=""zipCode"" type=""xs:string"" />
  <xs:element name=""state"" type=""xs:string"" />
  <xs:element name=""countryCode"" type=""xs:string"" />
  <xs:element name=""contact"" type=""xs:string"" />
  <xs:element name=""telNo"" type=""xs:string"" />
  <xs:element name=""faxNo"" type=""xs:string"" />
  <xs:element name=""email"" type=""xs:string"" />
  <xs:element name=""VATNumber"" type=""xs:string"" />
  <xs:element name=""accountNo"" type=""xs:string"" />
  <xs:element name=""description"" type=""xs:string"" />
  <xs:element name=""awb"" type=""xs:string"" />
  <xs:element name=""value"" nillable=""true"" type=""xs:string"" />
  <xs:element name=""weight"" nillable=""true"" type=""xs:string"" />
  <xs:element name=""type"" type=""xs:string"" />
  <xs:element name=""dangerousGoodsInfo"" nillable=""true"">
    <xs:complexType>
      <xs:all>
        <xs:element minOccurs=""0"" ref=""t:idCode"">
          <xs:annotation>
            <xs:documentation>hazard identification code</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:unCode"">
          <xs:annotation>
            <xs:documentation>united nations dangerous goods (UNDG) identifier</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:packingGroup"">
          <xs:annotation>
            <xs:documentation>packing group</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:packingType"">
          <xs:annotation>
            <xs:documentation>packing instruction type code</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:packingClassification"">
          <xs:annotation>
            <xs:documentation>classification identifier</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:description"">
          <xs:annotation>
            <xs:documentation>description of the dangerous good</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:markingIdentifier"">
          <xs:annotation>
            <xs:documentation>dangerous goods marking identifier</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:limitedQuantity"">
          <xs:annotation>
            <xs:documentation>flag to indicate if limited quantity is true or false</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:instruction"">
          <xs:annotation>
            <xs:documentation>special instructions concerning the dangerous good</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:flashPointDegree"">
          <xs:annotation>
            <xs:documentation>dangerous goods flashpoint degree</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:limitedQuantityPoints"">
          <xs:annotation>
            <xs:documentation>limited quantity points</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:tunnelCode"">
          <xs:annotation>
            <xs:documentation>dangerous goods tunnel code</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element minOccurs=""0"" ref=""t:measurements"" />
      </xs:all>
    </xs:complexType>
  </xs:element>
  <xs:element name=""idCode"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""64"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name=""unCode"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""64"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name=""packingGroup"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""64"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name=""packingType"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""64"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name=""packingClassification"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""64"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name=""markingIdentifier"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""64"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name=""limitedQuantity"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""1"" />
        <xs:enumeration value="""" />
        <xs:enumeration value=""0"" />
        <xs:enumeration value=""1"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
  <xs:element name=""flashPointDegree"" nillable=""true"" type=""xs:decimal"" />
  <xs:element name=""limitedQuantityPoints"" nillable=""true"" type=""xs:int"" />
  <xs:element name=""tunnelCode"" nillable=""true"">
    <xs:simpleType>
      <xs:restriction base=""xs:string"">
        <xs:minLength value=""0"" />
        <xs:maxLength value=""16"" />
      </xs:restriction>
    </xs:simpleType>
  </xs:element>
</xs:schema>";
        
        public Shipment() {
        }
        
        public override string XmlContent {
            get {
                return _strSchema;
            }
        }
        
        public override string[] RootNodes {
            get {
                string[] _RootElements = new string [1];
                _RootElements[0] = "carrierBooking";
                return _RootElements;
            }
        }
        
        protected override object RawSchema {
            get {
                return _rawSchema;
            }
            set {
                _rawSchema = value;
            }
        }
    }
}
