xCBL 4.0

Order 4.0.1.0 Transport and Packaging
Recommended Use

Version 1.1
March 28, 2003
Table of ContentsPurpose
Packaging
Transport
Header Level Transport
Schedule Line Transport
Other Transport Notes

Purpose

The purpose of this document is to detail the recommended use of the packaging and transport information for the xCBL 3.5 Order document.  This is not intended to give details of every possible element, but rather to give a general guideline of the use of these elements.

Packaging

Packaging is described by first defining the outermost level of packaging using a top level PackageDetail element (Order/OrderDetail/ListOfPackageDetail/PackageDetail).   The top level PackageDetail elements should be used to group a collection of  packages of the same type.  For instance, if a collection of ten pallets is being described, all of which are the same, one top level PackageDetail element should be used (PackageType = “Pallet” and NumberOfPackages = 10) to describe the collection.  The //PackageDetail/ListOfPackage/Package element is used to describe any unique characteristics between the individual packages in the collection, such as marks, packages contained within, special handling instructions, etc.  The Package element should be used to group the next degree on commonality.  Consider the following scenarios for the example of a pallet:

•	If all pallets in the collection are identical (contain the same in packaging structure, marks, special handling instructions, etc.) then one Package element should be used to describe the entire collection.
•	If all pallets in the collection are identical, with the exception of individual top level identification (for example, the pallets are marked as 1, 2, 3, etc., but there is no further distinction between them) use one Package element, but use multiple //Package/ListOfPackageMark/PackageMark elements.
•	If half of the pallets contain one collection of inner packaging, and the other half contains another collection of inner packaging, use two Package elements to describe the two inner packing structures.  
•	If each pallet contains a different collection of cartons on it, or the packages on a pallet are also identified (pallet 1 contains carton A, pallet 2 contains carton B, etc.), a separate Package element would be used to describe the details of each pallet.

In all of the above cases, the //Package/PackageDetail element is used to describe an inner package.  Furthermore, multiple top level PackageDetail elements can be used.  An example of this would be a shipment of a pallet and a loose carton.  In this case, since the type of packages are different, each would be described by a unique top level PackageDetail element.
The examples described above are only a few possible scenarios.  The important thing to take away from this is always group when it makes sense to.

An item is related to a package in one of two ways.  The first is the //PackageDetail/ListOfPackage/Package/ListOfItemReference/PackageItemReference/.  Use the LineItemReference in this element to hold the line item number (ReferenceTypeCoded = “LineItemReferenceNumber”).  

The second method is to use the Order/OrderDetail/ListOfItemDetail/ItemDetail/DeliveryDetail/ItemPackagingReference element.  This element is also recursive to be able to show the entire packaging structure, although it should suffice to only reference the innermost package.  The package is reference by the //ItemPackagingReference/PackageReference/PackageIDReference element.  This is set to the //PackageDetail/ListOfPackage/Package/PackageID of the package it is contained in.  ItemPackagingReference also allows for multiple PackageReference elements, for cases when the innermost package may differ.  The Quantity element in the PackageReference is the amount of the item contained in the package being referenced.

Transport

In the Order, the Transport element is used to describe the basic transportation information pertaining to the items ordered.  Routing information is not included, since it is not likely to be known at the time of Order creation.

The Transport element exists in two places in the Order, in the OrderHeader element and in the ScheduleLine element.  Furthermore, there are also two places to reference a Transport element, in the ScheduleLine element, and in the Package element.

Header Level Transport

This element (Order/OrderHeader/ListOfTransportRouting/TransporRouting) is used for the default, or most common, transport information for the Order.  It is useful to use the TransportRouting at this level, when many line items will have the same transport information associated with them, since it avoids repeating the information for every item.  The items can be related to the header level Transport elements one of two ways.  
The first is TransportReference element, contained in //ItemDetail/DeliveryDetail/ListOfScheduleLine/ScheduleLine.  This element is used to reference the TransportRouting/TrasnportRouteID element.  This reference means that for the given delivery date, the transportation information is contained in header level TransportRouting where TransportRouteID = //ItemDetail/DeliveryDetail/ListOfScheduleLine/ScheduleLine/ TrasnportReference.
The second method of relating an item to a Transport element is through a package.  As discussed above, an item can be related to a package, which in turn can be related to transport information by the Order/OrderDetail/ListOfPackageDetail/PackageDetail/ListOfPackage/Package/ListOfDestinationReference/DestinationReference/RouteID element.  By referencing a package to transport information, you are able to say an entire package, possibly containing many items, has certain transportation information relating to it.  This method should be used when it makes more sense to relate a package, as opposed to individual items, to transport information. 

Schedule Line Transport

This element should only be used in the exception cases, where the transport is different for only one item or one schedule of an item.  For all other cases, it is recommended that the TransportReference element be used.

Other Transport Notes

When the transport information is related to an item, it is done so through a ScheduleLine element.  If there is no schedule related to the delivery of the item (i.e. an quantity is expect to be delivered on only one date), the schedule line should be populated with the total quantity order and the requested delivery date for the line item.  Furthermore, if transport information is specific to only an item and not a particular schedule for that item, each schedule should reference the same transport information.