<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns="urn:IEEE-1671.4:2008.01:TestConfiguration" xmlns:c="urn:IEEE-1671:2008.01:Common" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:IEEE-1671.4:2008.01:TestConfiguration" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.02">
	<xs:import namespace="urn:IEEE-1671:2008.01:Common" schemaLocation="Common.xsd"/>
	<xs:element name="TestConfiguration">
		<xs:annotation>
			<xs:documentation>TestConfiguration schema will encompass all information necessary to identify all of the hardware, software and documentation that may be necessary in order to test and diagnose a Unit Under Test (UUT) on a test station.  There may exist multiple TestConfiguration documents for a given UUT.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="ConfigurationManager" type="c:ManufacturerData" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Identifies the activity responsible for maintaining configuration management of the UUT and TPS.</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="TestedUUTs">
					<xs:annotation>
						<xs:documentation>Identifies the UUTs to which the configuration data applies.  Multiple UUTs can be listed in the case where the configurations are identical.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="TestedUUT" type="c:ItemDescriptionReference" maxOccurs="unbounded"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="TestEquipment">
					<xs:annotation>
						<xs:documentation>Collector element forTest Equipment Items</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="TestEquipmentItem" maxOccurs="unbounded">
								<xs:annotation>
									<xs:documentation>Identifies the family of test stations that are able to test the UUT.  Multiple stations can be listed that support the same UUT using the identical resources.</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:complexContent>
										<xs:extension base="c:ItemDescriptionReference">
											<xs:sequence>
												<xs:element name="Software" type="c:SoftwareInstance" minOccurs="0" maxOccurs="unbounded">
													<xs:annotation>
														<xs:documentation>The specific versions of test station software that this UUT is known to work with.</xs:documentation>
													</xs:annotation>
												</xs:element>
												<xs:element name="Instrumentation" type="c:ItemDescriptionReference" minOccurs="0" maxOccurs="unbounded">
													<xs:annotation>
														<xs:documentation>The test station assets required to test the UUT.</xs:documentation>
													</xs:annotation>
												</xs:element>
												<xs:element name="Resource" type="c:ItemDescriptionReference" minOccurs="0" maxOccurs="unbounded">
													<xs:annotation>
														<xs:documentation>Other non-instrumentation items required by the test station to test the UUT, such as extra cables, adapters, etc.</xs:documentation>
													</xs:annotation>
												</xs:element>
											</xs:sequence>
										</xs:extension>
									</xs:complexContent>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="TestProgramElements">
					<xs:annotation>
						<xs:documentation>Identifies all of the test program related hardware, software, and documentation.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:choice maxOccurs="unbounded">
							<xs:element name="TpsHardware" type="ConfigurationResourceReference">
								<xs:annotation>
									<xs:documentation>References to TPS hardware required to test the UUT, such as the Interface Test Adapter, cables, holding fixtures, etc.</xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="TpsSoftware" type="ConfigurationSoftwareInstance">
								<xs:annotation>
									<xs:documentation>The specific versions of test program software used to test the UUT.</xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="Documentation">
								<xs:annotation>
									<xs:documentation>References to test program related documentation, such as Theories of Operation or Test Program Instructions.</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:complexContent>
										<xs:extension base="c:Document">
											<xs:attribute name="location" type="c:NonBlankString" use="optional"/>
											<xs:attribute name="documentNumber" type="c:NonBlankString" use="optional"/>
										</xs:extension>
									</xs:complexContent>
								</xs:complexType>
							</xs:element>
						</xs:choice>
					</xs:complexType>
				</xs:element>
				<xs:element name="AdditionalSoftware" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Other software, not typically classified as test program software, to be used to test the UUT, such as Operational Flight Programs.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="AdditionalSoftwareItem" type="ConfigurationSoftwareInstance" maxOccurs="unbounded"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="AdditionalResources" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Additional hardware, not part of the test station, required for testing the UUT, such as unique personnel, roll-up test equipment, etc.</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="AdditionalResource" type="ConfigurationResourceReference" maxOccurs="unbounded"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="Extension" type="c:Extension" minOccurs="0">
					<xs:annotation>
						<xs:documentation>Managed point of extension.</xs:documentation>
					</xs:annotation>
				</xs:element>
			</xs:sequence>
			<xs:attributeGroup ref="c:DocumentRootAttributes"/>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="ConfigurationResourceReference">
		<xs:annotation>
			<xs:documentation>Base type for some TestConfiguration hardware references.</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="c:ItemDescriptionReference">
				<xs:attribute name="quantity" type="xs:int" use="required"/>
				<xs:attribute name="location" type="c:NonBlankString" use="optional"/>
				<xs:attribute name="type" type="c:NonBlankString" use="optional"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ConfigurationSoftwareInstance">
		<xs:annotation>
			<xs:documentation>base type for TestConfiguration software elements.</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="c:SoftwareInstance">
				<xs:sequence>
					<xs:element name="Documentation" type="c:Document" minOccurs="0"/>
					<xs:element name="Checksum" minOccurs="0">
						<xs:complexType>
							<xs:attribute name="type" type="c:NonBlankString">
								<xs:annotation>
									<xs:documentation>Optionally allows the method used to compute the checksum (i.e. MD5).</xs:documentation>
								</xs:annotation>
							</xs:attribute>
							<xs:attribute name="value" type="c:NonBlankString" use="required">
								<xs:annotation>
									<xs:documentation>specifies the specific value of the checksum</xs:documentation>
								</xs:annotation>
							</xs:attribute>
						</xs:complexType>
					</xs:element>
				</xs:sequence>
				<xs:attribute name="type" type="c:NonBlankString"/>
				<xs:attribute name="ItemRef" type="xs:anyURI"/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
</xs:schema>

