<?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-73 FORM XML SCHEMA DEFINITION
	VERSION 3.0
	CORRESPONDING FORM VERSION: 3.0

	Revision History 01/10/2009
	
	1. Now the Schema version number is the same as the corresponding pureEdge form version number.

****************************************************************************************************

   D-TRADE DSP-73 FORM XML SCHEMA DEFINITION
	VERSION 1.2

	Revision History 12/14/2006
	
	1. Added element DTCCompliance
	2. Added element ComplianceDisclosureNumber
	3. Updated ApplicantStatementCertificationType with two new restrictions

****************************************************************************************************

	D-TRADE DSP-73 FORM XML SCHEMA DEFINITION
	VERSION 1.1

	REVISION: 5/15/2006

	1. ApplicantContact element definition now has a minOccurs of "1".

****************************************************************************************************

	D-TRADE DSP-73 FORM XML SCHEMA DEFINITION
	VERSION 1.0

	REVISION: 5/2/2006

	1. Quantity element definition is now an IntegerType
	2. MonetaryValue definition is now an IntegerType

****************************************************************************************************

	D-TRADE DSP-73 FORM XML SCHEMA DEFINITION
	VERSION 1.0

	INITIAL VERSION: 3/13/2006

****************************************************************************************************

-->

	<xsd:annotation>
		<xsd:documentation>
			This is the schema for the DSP-73 form.  It imports the CommonFormSchema.

			Again definitions are in alphabetical order with the exception of the DSP73 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 -->	
<xsd:import namespace="http://northropgrumman.com/inflowsuite/submission" schemaLocation="../../common/common.schema.xsd"/>

<!-- SimpleType Definitions -->

	<xsd:simpleType name="ApplicantIsType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an application is type.
				Allowable values are restricted to 'Government', 'Manufacturer' or 'Exporter'.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="Government|Manufacturer|Exporter"/>
		</xsd:restriction>
	</xsd:simpleType>

	<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, 'NotAuthEligible', or 'NotAuthNotEligible'
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="AuthEligible|AuthNotEligible|AuthNotEligibleException|NotAuthEligible|NotAuthNotEligible|NotAuthNotEligibleException"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ApplicantionRepresentsType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an application represents type.
				Allowable values are restricted to 'NewShipment' for new shipments and 'Renewal' for reneal of previously issued license numbers.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="NewShipment|Renewal"/>
		</xsd:restriction>
	</xsd:simpleType>

 	<xsd:simpleType name="CertNumberType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a Certification Number value.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="126"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="ConsignorTypeType">
		<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="Consignor"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="DepartureAndReturnType">
		<xsd:annotation>
			<xsd:documentation>
				Defines the departure and return type of the commodity.
				Allowable values are restricted to 'Single' a single departure and return, and 'Series' for a series of departures and returns.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="Single|Series"/>
		</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="LicenseIDType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a license id value.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="9"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="LicenseRenewalTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a application unshipped license.  Value must equal "appunshippedlicense".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="RenewalLicense"/>
		</xsd:restriction>
	</xsd:simpleType>

 	<xsd:simpleType name="LongDescriptionType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a description for lengths up to 100 characters.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="100"/>
			<xsd:minLength value="1"/>
		</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="PortDescriptionType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a port description.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="35"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="RelatedLicenseBlock4TypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a licensed country.  Value must equal "licensedcountry".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="LicensedBlock4"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="RelatedLicenseDeniedTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a licensed country.  Value must equal "licensedcountry".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="Denied"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="RelatedLicenseOtherCountryTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a licensed country.  Value must equal "licensedcountry".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="LicensedOtherCountry"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="RelatedLicenseReturnedWithoutActionTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a licensed country.  Value must equal "licensedcountry".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="ReturnedWithoutAction"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="RoleType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a role type.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="126"/>
			<xsd:minLength value="1"/>
		</xsd:restriction>
	</xsd:simpleType>

 	<xsd:simpleType name="ShortDescriptionType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a short description value.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="50"/>
			<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:simpleType name="TemporaryForeignConsigneeTypeType">
		<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="TempForeignConsignee"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="TemporaryForeignEndUserTypeType">
		<xsd:annotation>
			<xsd:documentation>
				Fixed-value element used to identify an entity as a foreign end user.  Value must equal "TempForeignEndUser".
			</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="TempForeignEndUser"/>
		</xsd:restriction>
	</xsd:simpleType>

	<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="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>	

<!-- Complex Type Definitions -->
	<xsd:complexType name="AircraftOrVesselInformationType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an aircraft or vessel.
				SequenceNumber must be unique across all AircraftOrVesselInformationType 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="RegistrationNumber" type="exp:LongDescriptionType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="VesselName" type="exp:LongDescriptionType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="RegistrationDate" type="ifs:DateType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Make" type="exp:LongDescriptionType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Model" type="exp:LongDescriptionType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="SerialNumber" type="exp:LongDescriptionType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Address" type="ifs:AddressType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="City" type="ifs:CityType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="StateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CountryCode" type="ifs:CountryCodeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Commander" type="exp:CommanderType" minOccurs="1" maxOccurs="unbounded"/>
		</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:complexType name="CommanderType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a commander.
				SequenceNumber must be unique across all CommanderType 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:NameType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="CertificationNumber" type="exp:CertNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Address" type="ifs:AddressType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="City" type="ifs:CityType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="StateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CountryCode" type="ifs:CountryCodeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="PhoneNumber" type="ifs:PhoneNumberType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="CommodityCategoryType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a usml commodity category.  This common category data is inherited by CommodityType.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType"/>
			<xsd:element name="USMLCategory" type="ifs:USMLCategoryType"/>
			<xsd:element name="USMLSubCategory" type="ifs:USMLSubCategoryType"/>
			<xsd:element name="CommodityCode" type="ifs:CommodityCodeType" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="CommodityType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a commodity.
				Inherits CommodityCategoryType fields for USML category info.  Includes additional fields for commodity information.
				SequenceNumber must be unique across all CommodityType 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="exp:CommodityCategoryType">
				<xsd:sequence>
					<xsd:element name="Quantity" type="ifs:IntegerType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="UnitOfMeasure" type="ifs:UnitOfMeasureType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="CommodityDescription" type="ifs:CommmodityDescriptionType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="MonetaryValue" type="ifs:IntegerType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="UnitPrice" type="ifs:DecimalType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="ConsignorType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an US consignee type. Inherits ForeignLocationType fields.  Includes one additional field, which is a fixed string value defined by ConsignorTypeType.
				SequenceNumber must be unique across all ConsignorType 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="exp:USLocationType">
				<xsd:sequence>
					<xsd:element name="Type" type="exp:ConsignorTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="SojournCountryType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a destination country (country code).
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="CountryCode" type="ifs:ForeignCountryCodeType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	
	<xsd:complexType name="ForeignIntermediateConsigneeType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an foreign intermediate consignee type. Inherits ForeignLocationType fields.  Includes one additional field, which is a fixed string value defined by ForeignIntermediateConsigneeTypeType.
				SequenceNumber must be unique across all ForeignEndUserType 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="exp:ForeignLocationType">
				<xsd:sequence>
					<xsd:element name="Type" type="exp:ForeignIntermediateConsigneeTypeType" minOccurs="1" maxOccurs="1"/>
					<xsd:element name="Role" type="exp:RoleType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="ForeignLocationType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a foriegn location (street address, city, country).
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType"/>
			<xsd:element name="Name" type="ifs:NameType"/>
			<xsd:element name="StreetAddress" type="ifs:AddressType" minOccurs="0"/>
			<xsd:element name="City" type="ifs:CityType" minOccurs="0"/>
			<xsd:element name="CountryCode" type="ifs:ForeignCountryCodeType" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>		

	<xsd:complexType name="GovernmentPersonnelType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a Government Contact type.
				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="Agency" type="ifs:AgencyType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="OtherAgency" type="ifs:OtherAgencyType" minOccurs="0" 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:complexType name="LicenseRenewalType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an unshipped license application type (sequence number, case type, license id).
				SequenceNumber must be unique across all AppUnshippedLicenseType 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="Type" type="exp:LicenseRenewalTypeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LicenseID" type="exp:LicenseIDType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="ManufacturerType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a manufacturer type.
				SequenceNumber must be unique across all Manufacturer 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="Type" type="exp:ManufacturerTypeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Name" type="ifs:NameType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="StreetAddress" type="ifs:AddressType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="City" type="ifs:CityType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="StateCode" type="ifs:StateCodeType" minOccurs="0"/>
			<xsd:element name="PostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CountryCode" type="ifs:CountryCodeType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="RelatedLicenseBlock4Type">
		<xsd:annotation>
			<xsd:documentation>
				Defines an related license block 3 type.
				SequenceNumber must be unique across all RelatedLicenseBlock3Type 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="Type" type="exp:RelatedLicenseBlock4TypeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LicenseID" type="exp:LicenseIDType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="RelatedLicenseDeniedType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an related license block 3 type.
				SequenceNumber must be unique across all RelatedLicenseBlock3Type 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="Type" type="exp:RelatedLicenseDeniedTypeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LicenseID" type="exp:LicenseIDType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>	

	<xsd:complexType name="RelatedLicenseOtherCountryType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an related license block 3 type.
				SequenceNumber must be unique across all RelatedLicenseBlock3Type 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="Type" type="exp:RelatedLicenseOtherCountryTypeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LicenseID" type="exp:LicenseIDType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="RelatedLicenseReturnedWithoutActionType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an related license block 3 type.
				SequenceNumber must be unique across all RelatedLicenseBlock3Type 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="Type" type="exp:RelatedLicenseReturnedWithoutActionTypeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LicenseID" type="exp:LicenseIDType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="SourceType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a source type.
				SequenceNumber must be unique across all Source 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="Type" type="exp:SourceTypeType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Name" type="ifs:NameType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="StreetAddress" type="ifs:AddressType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="City" type="ifs:CityType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="StateCode" type="ifs:StateCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PostalCode" type="ifs:PostalCodeType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="CountryCode" type="ifs:CountryCodeType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="TemporaryForeignConsigneeType">
		<xsd:annotation>
			<xsd:documentation>
				Defines a temporary foreign consignee type. Inherits ForeignLocationType fields.  Includes one additional field, which is a fixed string value defined by TemporaryForeignConsigneeTypeType.
				SequenceNumber must be unique across all TemporaryForeignConsigneeType 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="exp:ForeignLocationType">
				<xsd:sequence>
					<xsd:element name="Type" type="exp:TemporaryForeignConsigneeTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>

	<xsd:complexType name="TemporaryForeignEndUserType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an foreign end-user type. Inherits ForeignLocationType fields.  Includes one additional field, which is a fixed string value defined by TemporaryForeignEndUserTypeType.
				SequenceNumber must be unique across all TemporaryForeignEndUserType 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="exp:ForeignLocationType">
				<xsd:sequence>
					<xsd:element name="Type" type="exp:TemporaryForeignEndUserTypeType" minOccurs="1" maxOccurs="1"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>	

	<xsd:complexType name="USLocationType">
		<xsd:annotation>
			<xsd:documentation>
				Defines an U.S. location type (street address).
				Serves as the base type for U.S. sellers and consigners.
			</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="SequenceNumber" type="ifs:SequenceNumberType"/>
			<xsd:element name="Name" type="ifs:NameType"/>
			<xsd:element name="StreetAddress" type="ifs:AddressType" minOccurs="0"/>
			<xsd:element name="City" type="ifs:CityType" minOccurs="0"/>
			<xsd:element name="StateCode" type="ifs:StateCodeType" minOccurs="0"/>
			<xsd:element name="PostalCode" type="ifs:PostalCodeType" minOccurs="0"/>
		</xsd:sequence>
	</xsd:complexType>

	<xsd:complexType name="DSP73Type">
		<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="ifs:ApplicantType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 3 Fields -->
			<xsd:element name="DepartureAndReturn" type="exp:DepartureAndReturnType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 4 Fields -->
			<xsd:element name="SojournCountry" type="exp:SojournCountryType" minOccurs="1" maxOccurs="unbounded"/>
			<!-- Block 5 Fields -->
			<xsd:element name="ApplicantSourceCategory" type="exp:ApplicantIsType" minOccurs="1" maxOccurs="1"/>	
			<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 6 Fields -->
			<xsd:element name="ExitPort1" type="exp:PortDescriptionType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ExitPort2" type="exp:PortDescriptionType" minOccurs="0" maxOccurs="1"/>
			<!-- Block 7 Fields -->
			<xsd:element name="EntryPort1" type="exp:PortDescriptionType" minOccurs="1" maxOccurs="1"/>	
			<xsd:element name="EntryPort2" type="exp:PortDescriptionType" minOccurs="0" maxOccurs="1"/>
			<!-- Block 8 Fields -->
			<xsd:element name="ExitDate" type="ifs:DateType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 9 Fields -->
			<xsd:element name="EntryDate" type="ifs:DateType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 10 Fiels -->
			<!-- 10A -->		
			<xsd:element name="ApplicantContact" type="exp:ApplicantContactType" minOccurs="1" maxOccurs="unbounded"/>
			<!-- 10B -->
			<xsd:element name="GovernmentPersonnel" type="exp:GovernmentPersonnelType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 11 Fields -->
			<!-- 11A -->
			<xsd:element name="ApplicationRepresents" type="exp:ApplicantionRepresentsType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LicenseRenewal" type="exp:LicenseRenewalType" minOccurs="0" maxOccurs="18"/>
			<!-- 11B -->
			<xsd:element name="RelatedLicenses" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/> 
			
			<xsd:element name="WasLicensedBlock4" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="RelatedLicenseBlock4" type="exp:RelatedLicenseBlock4Type" minOccurs="0" maxOccurs="18"/>
			
			<xsd:element name="WasLicensedOtherCountry" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="RelatedLicenseOtherCountry" type="exp:RelatedLicenseOtherCountryType" minOccurs="0" maxOccurs="18"/>
			
			<xsd:element name="WasReturnedWithoutAction" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="RelatedLicenseReturnedWithoutAction" type="exp:RelatedLicenseReturnedWithoutActionType" minOccurs="0" maxOccurs="18"/>
			
			<xsd:element name="WasDenied" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="RelatedLicenseDenied" type="exp:RelatedLicenseDeniedType" minOccurs="0" maxOccurs="18"/>
			<!-- 11C -->
			<xsd:element name="DTCCompliance" type="ifs:YesNoType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ComplianceDisclosureNumber" type="exp:ComplianceDisclosureNumberType" minOccurs="0" maxOccurs="1"/>
			<!-- Block 12, 13, 14, 15 Fields -->
			<xsd:element name="Commodity" type="exp:CommodityType" minOccurs="1" maxOccurs="unbounded"/>
			<!-- Block 16 Fields -->
			<xsd:element name="TotalMonetaryValue" type="ifs:IntegerType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 17 Fields -->
			<xsd:element name="ManufacturerUnknown" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Manufacturer" type="exp:ManufacturerType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 18 Fields -->
			<xsd:element name="ForeignIntermediateConsigneeNone" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="ForeignIntermediateConsignee" type="exp:ForeignIntermediateConsigneeType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 19 Fields -->
			<xsd:element name="Source" type="exp:SourceType" minOccurs="1" maxOccurs="unbounded"/>
			<!-- Block 20 Fields -->
			<xsd:element name="TemporaryForeignIntermediateConsigneeNone" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="TemporaryForeignConsignee" type="exp:TemporaryForeignConsigneeType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 21 Fields -->
			<xsd:element name="Consignor" type="exp:ConsignorType" minOccurs="1" maxOccurs="unbounded"/>
			<!-- Block 22 Fields -->
			<xsd:element name="SameAs20" type="ifs:BooleanType" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TemporaryForeignEndUser" type="exp:TemporaryForeignEndUserType" minOccurs="1" maxOccurs="unbounded"/>
			<!-- Block 23 Fields -->
			<xsd:element name="PriorApproval" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="SpecificPurposeDescription" type="ifs:LongDescriptionType" minOccurs="1" maxOccurs="1"/>
			<!-- Block 24, 25, 26, 27, 28, 29 -->
			<xsd:element name="AircraftCheck" type="ifs:BooleanType" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="AircraftOrVesselInformation" type="exp:AircraftOrVesselInformationType" minOccurs="0" maxOccurs="unbounded"/>
			<!-- Block 30 Fields -->
			<xsd:element name="ApplicantStatementCertification" type="exp:ApplicantStatementCertificationType" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>

<!-- Definition of the DSP73 -->	
	<xsd:element name="DSP73" type="exp:DSP73Type"/>	
</xsd:schema>