<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema targetNamespace="http://www.state.gov/export/forms"
	xmlns="http://www.state.gov/export/forms"
	xmlns:exp="http://www.state.gov/export/forms"
	xmlns:ifs="http://northropgrumman.com/inflowsuite/submission"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
	xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
	jaxb:extensionBindingPrefixes="xjc"
	elementFormDefault="qualified">

<!--

****************************************************************************************************
  
  	D-TRADE DSP-62 FORM XML SCHEMA DEFINITION
	VERSION 4.0
	CORRESPONDING FORM VERSION: 4.0

	Revision History 01/10/2009
	
	1. Now the Schema version number is the same as the corresponding pureEdge form version number.
	2. Added element USMLCategory
		
****************************************************************************************************

  D-TRADE DSP-62 FORM XML SCHEMA DEFINITION
  CORRESPONDING FORM VERSION: 1.1

	Revision History 12/18/2006
	
	1. Added element DTCCompliance
	2. Added element ComplianceDisclosureNumber
	3. Updated ApplicantStatementCertificationType with two new restrictions

****************************************************************************************************
	
	D-TRADE DSP-62 FORM XML SCHEMA DEFINITION
	VERSION 1.1
	CORRESPONDING FORM VERSION: 1.0

	Revision History
	
	9/19/2006:
	1. Changed "ApprovalLetterDate" to "AcknowledgementLetterDate"
	2. Change restriction on SummaryOfAmendmentType and removed "Approval Letter" and added "Acknowledgement Letter"
	3. Removed "DeleteForeignFreightForwarder" from ModificationForeignIntermediateConsigneeType.
	4. The maxOccurs of the SummaryOfAmendment element is now 14.
	5. Added "AddUSIntermediateConsignee" to the restriction of the ModificationUSIntermediateConsigneeType.
	6. Removed the following elements from the "ChangeUSIntermediateConsigneeType":  NameChange and LocationChange.
	7. Added the following elements to the "ChangeUSIntermediateConsigneeType": ReasonForChange and CompletedAmendment.
	8. Removed "DeleteSource" from ModificationSourceType.

****************************************************************************************************
-->

	<xsd:annotation>
		<xsd:documentation>
			This is the schema for the DSP-62 Version 1.0.  It imports the common.schema.xsd.

			Definitions are in alphabetical order with the exception of the DSP62 complex type
			and element definition are last.
		</xsd:documentation>
	</xsd:annotation>

	<xsd:annotation>
		<xsd:documentation>
			(C)Northrop Grumman Corporation. 2005. All rights reserved.  No part of this
			copyrighted work may be reproduced, modified or distributed in
			any form or by any means or stored in any database or retrieval system,
			without the prior written permission of Northrop Grumman Corporation.
			Violation of copyright carries civil and criminal penalties.
		</xsd:documentation>
	</xsd:annotation>


	<!-- Import the common schema, defining common data elements across different form types -->
	<xsd:import namespace="http://northropgrumman.com/inflowsuite/submission" schemaLocation="../../common/common.schema.xsd"/>


	<!-- field type definitions -->
	
	<xsd:simpleType name="AdditionalDetailsType">
		<xsd:annotation>
			<xsd:documentation>
				Additional information that may useful in reviewing the transaction.
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="1000"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>		

	<xsd:simpleType name="AmendmentCFRType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an applicatant statememt certification type.
				Allowable values are restricted to '22 CFR 123.25' and '22 CFR 122.4'.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="22 CFR 123.25|22 CFR 122.4"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="AmendmentSummaryType">
		<xsd:annotation>
			<xsd:documentation>
				Collection of one or more amendment types to the DSP-61 license that the applicant wishes to make.
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="AcknowledgementLetter|ApplicantCode|ApplicantSubsidiary|CommodityQuantity|CommodityDescription|CommodityValue|ForeignEndUser|Manufacturer|ForeignConsignor|Source|ForeignIntermediateConsignee|USIntermediateConsignee|ForeignDestination|ForeignUltimateDestination|TotalCommodityValue"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="ComplianceDisclosureNumberType">
		<xsd:annotation>
			<xsd:documentation>
				The Compliance Disclosure field on the form.  The format is ##-#######, where the first two digits before the dash
				are supposed to be a year. 
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="\d{2}-\d{7}"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:complexType name="AmendForeignLocationType">
		<xsd:annotation>
			<xsd:documentation>
				Definition of a foreign location
			</xsd:documentation>		
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ReasonForChange" type="exp:ReasonForChangeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalName" type="ifs:NameType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalStreetAddress" type="ifs:AddressType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalCity" type="ifs:CityType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalCountryCode" type="ifs:ForeignCountryCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewName" type="ifs:NameType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewStreetAddress" type="ifs:AddressType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewCity" type="ifs:CityType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewCountryCode" type="ifs:ForeignCountryCodeType" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>	

	<xsd:complexType name="AmendSourceType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a Source/Manufacturer type.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="ReasonForChange" type="exp:ReasonForChangeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalName" type="ifs:NameType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalStreetAddress" type="ifs:AddressType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalCity" type="ifs:CityType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalStateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalPostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalCountryCode" type="ifs:CountryCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewName" type="ifs:NameType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewStreetAddress" type="ifs:AddressType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewCity" type="ifs:CityType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewStateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewPostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewCountryCode" type="ifs:CountryCodeType" minOccurs="0" maxOccurs="1"/>			
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="AmendUSLocationType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an U.S. location type.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="OriginalName" type="ifs:NameType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalStreetAddress" type="ifs:AddressType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalCity" type="ifs:CityType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalStateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalPostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewName" type="ifs:NameType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewStreetAddress" type="ifs:AddressType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewCity" type="ifs:CityType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewStateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewPostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>	
	
	<xsd:complexType name="ApplicantContactType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an application contact (name, phone, extension).
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Name" type="ifs:ShortNameType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="PhoneNumber" type="ifs:PhoneNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Extension" type="ifs:ExtensionType" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>	

	<xsd:simpleType name="ApplicantStatementCertificationType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an applicatant statememt certification type.
				Allowable values are restricted to 'AuthEligible' for authorized eligible, 'AuthNotEligible' for authorized not eligible, 'AuthNotEligibleException' or 'NotAuthEligible', or 'NotAuthNotEligible'or 'NotAuthNotEligibleException'
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="AuthEligible|AuthNotEligible|AuthNotEligibleException|NotAuthEligible|NotAuthNotEligible|NotAuthNotEligibleException"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:complexType name="ChangeApplicantSubsidiaryType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change an Applicant or Subsidiary.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendUSLocationType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>	
					<xsd:element name="ReasonForChange" type="exp:ReasonForChangeType" minOccurs="1" maxOccurs="1"/>	
					<xsd:element name="OriginalAttention" type="ifs:AttentionType" minOccurs="0" maxOccurs="1"/>
					<xsd:element name="NewAttention" type="ifs:AttentionType" minOccurs="0" maxOccurs="1"/>							
					<xsd:element name="ModificationType" type="exp:ModificationApplicantType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	
	<xsd:complexType name="ChangeCommodityDescriptionType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a commodity description.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:sequence>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ChangePartNumber" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="CorrectTypo" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>			
			<xsd:element name="ReasonForChange" type="exp:ReasonForChangeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalLineItemNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalCommodityDescription" type="ifs:CommmodityDescriptionType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="NewLineItemNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="NewCommodityDescription" type="ifs:CommmodityDescriptionType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>	
	
	<xsd:complexType name="ChangeCommodityQuantityValueType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change the commodity quantity or values.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:sequence>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="CorrectQuantity" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="CorrectValue" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>			
			<xsd:element name="ReasonForChange" type="exp:ReasonForChangeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalLineItemNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalQuantity" type="ifs:IntegerType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalUnitPrice" type="ifs:DecimalType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalMonetaryValue" type="ifs:IntegerType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OriginalUnitOfMeasure" type="ifs:UnitOfMeasureType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="NewLineItemNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="NewQuantity" type="ifs:IntegerType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewUnitPrice" type="ifs:DecimalType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewMonetaryValue" type="ifs:IntegerType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="NewUnitOfMeasure" type="ifs:UnitOfMeasureType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	
	<xsd:complexType name="ChangeForeignConsignorType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a foreign consignor.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendForeignLocationType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>	
					<xsd:element name="ModificationType" type="exp:ModificationForeignConsignorType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="CompletedAmendment" type="exp:CompletedAmendmentType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="Type" type="exp:ForeignConsignorTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	
	<xsd:complexType name="ChangeForeignDestinationType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a foreign destination.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendForeignLocationType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>	
					<xsd:element name="ModificationType" type="exp:ModificationForeignDestinationType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="CompletedAmendment" type="exp:CompletedAmendmentType" minOccurs="1" maxOccurs="1"/>						
					<xsd:element name="Type" type="exp:ForeignDestinationTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>	
	
	<xsd:complexType name="ChangeForeignEndUserType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a foreign end user.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendForeignLocationType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>	
					<xsd:element name="ModificationType" type="exp:ModificationForeignEndUserType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="CompletedAmendment" type="exp:CompletedAmendmentType" minOccurs="1" maxOccurs="1"/>					
					<xsd:element name="Type" type="exp:ForeignEndUserTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>			
	
	<xsd:complexType name="ChangeForeignIntermediateConsigneeType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a foreign intermediate consignee.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendForeignLocationType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>	
					<xsd:element name="ModificationType" type="exp:ModificationForeignIntermediateConsigneeType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="Type" type="exp:ForeignIntermediateConsigneeTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>		
	
	<xsd:complexType name="ChangeForeignUltimateDestinationType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a foreign ultimate destination.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendForeignLocationType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>	
					<xsd:element name="ModificationType" type="exp:ModificationForeignUltimateDestinationType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="Type" type="exp:ForeignUltimateDestinationTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>	
	
	<xsd:complexType name="ChangeManufacturerType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a manufacturer.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendSourceType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>				
					<xsd:element name="ModificationType" type="exp:ModificationManufacturerType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="Type" type="exp:ManufacturerTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	
	<xsd:complexType name="ChangeSourceType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change a source.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendSourceType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>				
					<xsd:element name="ModificationType" type="exp:ModificationSourceType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="Type" type="exp:SourceTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>	
	
	<xsd:complexType name="ChangeUSIntermediateConsigneeType">
		<xsd:annotation>
			<xsd:documentation>
				Groups values to change an US Intermediate Consignee.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:complexContent>
			<xsd:extension base="AmendUSLocationType">
				<xsd:sequence>
					<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>				
					<xsd:element name="ModificationType" type="exp:ModificationUSIntermediateConsigneeType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="ReasonForChange" type="exp:ReasonForChangeType" minOccurs="1" maxOccurs="1"/>			
					<xsd:element name="CompletedAmendment" type="exp:CompletedAmendmentType" minOccurs="1" maxOccurs="1"/>						
					<xsd:element name="Type" type="exp:USIntermediateConsigneeTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>			
	
	<xsd:simpleType name="CompletedAmendmentType">
		<xsd:annotation>
			<xsd:documentation>
				A collection of choices to determine compliance requirements  with Part 124.
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="Yes|No|Not Applicable"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="ComplianceCaseNumberType">
		<xsd:annotation>
			<xsd:documentation>
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="10"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="DSP62ApplicantType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an applicant type.
				Allowable values are formatted either 4 or 5 digit numbers prefixed by upper or lower case letter (either M, B, F, or G).
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="(M-[0-9][0-9][0-9][0-9])|(B-[0-9][0-9][0-9][0-9])|(F-[0-9][0-9][0-9][0-9])|(G-[0-9][0-9][0-9][0-9])|(M[0-9][0-9][0-9][0-9][0-9])|(B[0-9][0-9][0-9][0-9][0-9])|(F[0-9][0-9][0-9][0-9][0-9])|(G[0-9][0-9][0-9][0-9][0-9])|(m-[0-9][0-9][0-9][0-9])|(f-[0-9][0-9][0-9][0-9])|(g-[0-9][0-9][0-9][0-9])|(m[0-9][0-9][0-9][0-9][0-9])|(b[0-9][0-9][0-9][0-9][0-9])|(f[0-9][0-9][0-9][0-9][0-9])|(g[0-9][0-9][0-9][0-9][0-9])"/>
		</xsd:restriction>
	</xsd:simpleType>	

	<xsd:simpleType name="ForeignConsignorTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a foreign consignee.  Value must equal "ForeignConsignee".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ForeignConsignor"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="ForeignDestinationTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a domestic Ultimate Destination.  
				Value must equal "ConsigneeUltimateDestination".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ConsigneeUltDestination"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="ForeignEndUserTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a foreign end user.  Value must equal "ForeignEndUser".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ForeignEndUser"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="ForeignIntermediateConsigneeTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as an intermediate consignee.  Value must equal "IntermediateConsignee".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="IntermediateConsignee"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="ForeignUltimateDestinationTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a foreign ultimate destination.  
				Value must equal "ForeignEndUserUltimateDestination".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ForeignEndUserUltDest"/>
		</xsd:restriction>
	</xsd:simpleType>	

	<xsd:simpleType name="ManufacturerTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a manufacturer.  Value must equal "Manufacturer".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="Manufacturer"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="ModificationApplicantType">
		<xsd:annotation>
			<xsd:documentation>
				Collection of eight types of modifications that can be made for applicant/subsidiary.
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ApplicantName|ApplicantAddress|ApplicantNameAddress|AddSubsidiary|DeleteSubsidiary|SubsidiaryName|SubsidiaryAddress|SubsidiaryNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="ModificationForeignConsignorType">
		<xsd:annotation>
			<xsd:documentation>
				License amendments modifications for changes in Original Foreign Consignees  (DSP-5, license Block 16).
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ForeignConsignorName|ForeignConsignorAddress|ForeignConsignorNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="ModificationForeignDestinationType">
		<xsd:annotation>
			<xsd:documentation>
				
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ForeignDestinationName|ForeignDestinationAddress|ForeignDestinationNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="ModificationForeignEndUserType">
		<xsd:annotation>
			<xsd:documentation>
				License amendments modifications for changes in Original Foreign Consignees  (DSP-5, license Block 16).
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ForeignEndUserName|ForeignEndUserAddress|ForeignEndUserNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>			
	
	<xsd:simpleType name="ModificationForeignIntermediateConsigneeType">
		<xsd:annotation>
			<xsd:documentation>
				License amendments modifications for changes in   Foreign Intermediate Consignee (DSP-5, license Block 18).
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="AddForeignFreightForwarder|ForeignFreightForwarderName|ForeignFreightForwarderAddress|ForeignFreightForwarderNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="ModificationForeignUltimateDestinationType">
		<xsd:annotation>
			<xsd:documentation>
				
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ForeignUltimateDestinationName|ForeignUltimateDestinationAddress|ForeignUltimateDestinationNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>		
	
	<xsd:simpleType name="ModificationManufacturerType">
		<xsd:annotation>
			<xsd:documentation>
				License amendments modifications for changes in Manufacturer of Commodity (DSP-5 License, Block 15).
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="AddManufacturer|DeleteManufacturer|ManufacturerName|ManufacturerAddress|ManufacturerNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="ModificationSourceType">
		<xsd:annotation>
			<xsd:documentation>
				License amendments modifications for changes in  Source of Commodity (DSP-5 license, Block 17).
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="AddSource|SourceName|SourceAddress|SourceNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="ModificationUSIntermediateConsigneeType">
		<xsd:annotation>
			<xsd:documentation>
				Collection of 5  types of modifications that can be made for U.S. Consignor and/or U.S. Freight Forwarder (DSP-5 license, Block 21).
			</xsd:documentation>
		</xsd:annotation>		
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="AddUSIntermediateConsignee|USIntermediateConsigneeName|USIntermediateConsigneeAddress|USIntermediateConsigneeNameAddress"/>
		</xsd:restriction>
	</xsd:simpleType>	
	
	<xsd:simpleType name="ReasonForChangeType">
		<xsd:annotation>
			<xsd:documentation>
				Defines the a reason for change
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="500"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>		

	<xsd:simpleType name="SourceTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a source.  Value must equal "Source".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="Source"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:complexType name="SummaryOfAmendmentType">
		<xsd:annotation>
			<xsd:documentation>
				Groups elements for the summary of amendments.
				SequenceNumber must be unique across all ApplicantContactType entries.
				This is currently not enforced via unique constraints in the schema, but is enforced by the software (duplicate SequenceNumber values will cause an error).				
			</xsd:documentation>
		</xsd:annotation>	
		<xsd:sequence>
			<xsd:element name="AmendmentSummary" type="exp:AmendmentSummaryType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>	

	<xsd:simpleType name="TransactionIDType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a transaction id type - unique identifier used for tracking purposes by external system submitting the case.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="40"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="USIntermediateConsigneeTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a consignor.  Value must equal "Consignor".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="USIntermediateConsignee"/>
		</xsd:restriction>
	</xsd:simpleType>
	
	<xsd:simpleType name="USMLCategoryType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a USML category type.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="I|II|III|IV|V|VI|VII|VIII|IX|X|XI|XII|XIII|XIV|XV|XVI|XVII|XVIII|XX|XXI"/>
		</xsd:restriction>
	</xsd:simpleType>		

	<xsd:complexType name="DSP62Type">
		<xsd:annotation>
			<xsd:documentation>
				Defines a DSP-62 form type.
				Corresponding Block number from the paper and electronic forms are included for clarification purposes.
				The field sequence is organized to be consistent with the paper form.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<!-- Cover Letter Fields -->
			<xsd:element name="TransactionID" type="exp:TransactionIDType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ClassifiedInformation" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 1 Fields -->
			<xsd:element name="PreparedDate" type="ifs:DateType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 2 Fields -->
			<xsd:element name="ApplicantID" type="exp:DSP62ApplicantType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 3 Fields -->
			<xsd:element name="ApplicantName" type="ifs:NameType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ApplicantAttention" type="ifs:AttentionType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ApplicantStreetAddress" type="ifs:AddressType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ApplicantCity" type="ifs:CityType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ApplicantStateCode" type="ifs:StateCodeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ApplicantPostalCode" type="ifs:PostalCodeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ApplicantPhoneNumber" type="ifs:PhoneNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ApplicantExtension" type="ifs:ExtensionType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="HasSubsidiary" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="SubsidiaryName" type="ifs:NameType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SubsidiaryAttention" type="ifs:AttentionType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SubsidiaryStreetAddress" type="ifs:AddressType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SubsidiaryCity" type="ifs:CityType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SubsidiaryStateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SubsidiaryPostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SubsidiaryPhoneNumber" type="ifs:PhoneNumberType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SubsidiaryExtension" type="ifs:ExtensionType" minOccurs="0" maxOccurs="1"/>			
			<!-- Block 4 Fields -->
			<xsd:element name="AmendmentLicenseNumber" type="ifs:LicenseNumberType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 5 Fields -->
			<xsd:element name="AmendmentCFR" type="exp:AmendmentCFRType" minOccurs="1" maxOccurs="1"/>			
			<!-- Block 6 Fields -->
			<xsd:element name="ComplianceCaseNumber" type="exp:ComplianceCaseNumberType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="AcknowledgementLetterDate" type="ifs:DateType" minOccurs="0" maxOccurs="1"/>
			<!-- Block 7 Fields -->
			<xsd:element name="ApplicantContact" type="exp:ApplicantContactType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 8 Fields -->			
			<xsd:element name="SummaryOfAmendment" type="exp:SummaryOfAmendmentType" minOccurs="1" maxOccurs="14"/>			
			<!-- Block 9 Fields -->
			<xsd:element name="ApplicantIDReasonForChange" type="exp:ReasonForChangeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="OriginalApplicantCode" type="exp:DSP62ApplicantType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="NewApplicantCode" type="exp:DSP62ApplicantType" minOccurs="0" maxOccurs="1"/>
			<!-- Block 10 Fields -->
			<xsd:element name="ChangeApplicantSubsidiary" type="exp:ChangeApplicantSubsidiaryType" minOccurs="0" maxOccurs="3"/>
			<!-- Block 11 Fields -->
			<xsd:element name="ChangeCommodityDescription" type="exp:ChangeCommodityDescriptionType" minOccurs="0" maxOccurs="unbounded"/>			
			<!-- Block 12 Fields -->
			<xsd:element name="ChangeCommodityQuantityValue" type="exp:ChangeCommodityQuantityValueType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 13 Fields -->
			<xsd:element name="OriginalTotalMonetaryValue" type="ifs:IntegerType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="RevisedTotalMonetaryValue" type="ifs:IntegerType" minOccurs="0" maxOccurs="1"/>	
			<!-- Block 14 Fields -->
			<xsd:element name="ChangeForeignEndUser" type="exp:ChangeForeignEndUserType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 15 Fields -->			
			<xsd:element name="ChangeManufacturer" type="exp:ChangeManufacturerType" minOccurs="0" maxOccurs="unbounded"/>			
			<!-- Block 16 Fields -->			
			<xsd:element name="ChangeSource" type="exp:ChangeSourceType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 17 Fields -->
			<xsd:element name="ChangeForeignConsignor" type="exp:ChangeForeignConsignorType" minOccurs="0" maxOccurs="unbounded"/>			
			<!-- Block 18 Fields -->
			<xsd:element name="ChangeForeignIntermediateConsignee" type="exp:ChangeForeignIntermediateConsigneeType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 19 Fields -->
			<xsd:element name="ChangeUSIntermediateConsignee" type="exp:ChangeUSIntermediateConsigneeType" minOccurs="0" maxOccurs="unbounded"/>						
			<!-- Block 20 Fields -->
			<xsd:element name="ChangeForeignDestination" type="exp:ChangeForeignDestinationType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 21 Fields -->
			<xsd:element name="ChangeForeignUltimateDestination" type="exp:ChangeForeignUltimateDestinationType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 22 Fields -->			
			<xsd:element name="AdditionalDetails" type="exp:AdditionalDetailsType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="DTCCompliance" type="ifs:YesNoType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ComplianceDisclosureNumber" type="exp:ComplianceDisclosureNumberType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="USMLCategory" type="exp:USMLCategoryType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 23 Fields -->
			<xsd:element name="ApplicantStatementCertification" type="exp:ApplicantStatementCertificationType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<!-- Definition of the 62 -->
	<xsd:element name="DSP62" type="exp:DSP62Type"/>
</xsd:schema>
