<!--
   Tech Data Corporation
   XML Shipment Status Response Message Guideline.
   https://tdxml.techdata.com:443/xmlservlet
   Version 1.4
   Date: 02/22/04 

   Revision History:
	Version 1.3
	  12/21/03  - Added ResponseVersion: Optional element for specifying the Response DTD version.

   	Version 1.4
	  02/22/04 - UserName and Password now optional	
 
-->

<!ELEMENT XML_ShipmentStatus_Response (
	Header ,
	Detail ,
	Summary ) >

<!ELEMENT Header (
	UserName? ,
	Password? ,
	TransSetIDCode ,
	TransControlID? ,
	ResponseVersion? ) >

<!-- Segment -->
<!ELEMENT UserName (#PCDATA) >
<!ELEMENT Password (#PCDATA) >

<!-- ST Segment -->
<!ELEMENT TransSetIDCode (#PCDATA) >
<!ELEMENT TransControlID (#PCDATA) >
<!ELEMENT ResponseVersion (#PCDATA) >

<!ELEMENT Detail (
	PurposeCode ,
	RefInfo+ ,
	ErrorInfo* ,
	ContactFuncCode ,
	ContactName ,
	ContainerInfo+ ,
	NbrOfContainers ) >

<!-- BSN Segment -->
<!ELEMENT PurposeCode (#PCDATA) >

<!ELEMENT RefInfo (
	RefID , 
	RefIDQual ) >

<!-- REF Segment -->
<!ELEMENT RefID (#PCDATA) >
<!ELEMENT RefIDQual (#PCDATA) >

<!ELEMENT ErrorInfo (
	ErrorID ,
	ErrorIDQual ,
	ErrorDesc ) >

<!-- Error REF Segment -->
<!ELEMENT ErrorID (#PCDATA) >
<!ELEMENT ErrorIDQual (#PCDATA) >
<!ELEMENT ErrorDesc (#PCDATA) >

<!-- PER Segment -->
<!ELEMENT ContactFuncCode (#PCDATA) >
<!ELEMENT ContactName (#PCDATA) >

<!ELEMENT ContainerInfo (
	CIAssignedID ,
	ContainerID ,
	ShipToName ,
	ShipToAddr1 ,
	ShipToAddr2 ,
	ShipToAddr3 ,
	ShipToCity ,
	ShipToStateProv ,
	ShipToPostalCode , 
	DateShipped ,
	DateInvoiced ,
	Weight ,
	WhseDesc ,
	ShipVia ,
	ContainerValue ,
	HandlingCharge ,
	CODCharge ,
	DebitCredit ,
	NetFreightCharge ,
	TaxCharge ,
	TotalOrderValue ,
	ItemInfo+ ,
	NbrOfItems ) >
	  
<!-- LIN Segment -->
<!ELEMENT CIAssignedID (#PCDATA) >
<!ELEMENT ContainerID (#PCDATA) >

<!-- N1 Segment -->
<!ELEMENT ShipToName (#PCDATA) >

<!-- N3 Segment -->
<!ELEMENT ShipToAddr1 (#PCDATA) >
<!ELEMENT ShipToAddr2 (#PCDATA) >
<!ELEMENT ShipToAddr3 (#PCDATA) >

<!-- N4 Segment -->
<!ELEMENT ShipToCity (#PCDATA) >
<!ELEMENT ShipToStateProv (#PCDATA) >
<!ELEMENT ShipToPostalCode (#PCDATA) >

<!-- DTA Segment -->
<!ELEMENT DateShipped (#PCDATA) >
<!ELEMENT DateInvoiced (#PCDATA) >

<!-- TD1 Segment -->
<!ELEMENT Weight (#PCDATA) >

<!-- TD5 Segment -->
<!ELEMENT WhseDesc (#PCDATA) >
<!ELEMENT ShipVia (#PCDATA) >

<!-- TDS Segment -->
<!ELEMENT ContainerValue (#PCDATA) >
<!ELEMENT HandlingCharge (#PCDATA) >
<!ELEMENT CODCharge (#PCDATA) >
<!ELEMENT DebitCredit (#PCDATA) >
<!ELEMENT NetFreightCharge (#PCDATA) >
<!ELEMENT TaxCharge (#PCDATA) >
<!ELEMENT TotalOrderValue (#PCDATA) >

<!ELEMENT ItemInfo (
	IIAssignedID ,
	ProductID ,
	ProductIDQual ,
	ProductDesc ,
	QtyShipped ,
	MultiPieceInd ,
	SerialInd ,
	SerialInfo* ) >

<!-- SN1 Segment -->
<!ELEMENT IIAssignedID (#PCDATA) >
<!ELEMENT ProductID (#PCDATA) >
<!ELEMENT ProductIDQual (#PCDATA) >
<!ELEMENT ProductDesc (#PCDATA) >
<!ELEMENT QtyShipped (#PCDATA) >
<!ELEMENT MultiPieceInd (#PCDATA) >
<!ELEMENT SerialInd (#PCDATA) >

<!ELEMENT SerialInfo (
	SerialNbr ) >
	  
<!-- REF Segment -->
<!ELEMENT SerialNbr (#PCDATA) >

<!-- CTT Segment -->
<!ELEMENT NbrOfItems (#PCDATA) >

<!ELEMENT Summary (
	NbrOfContainers ,
	NbrOfSegments ) >

<!-- SE Segment -->
<!ELEMENT NbrOfContainers (#PCDATA) >
<!ELEMENT NbrOfSegments (#PCDATA) >