<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns:am4=" http://www.itu.int/xml-namespace/itu-t/h.741.4/messagedelivery" xmlns:am3=" http://www.itu.int/xml-namespace/itu-t/h.741.3/lineartv" xmlns:am2=" http://www.itu.int/xml-namespace/itu-t/h.741.2/datastructure" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace=" http://www.itu.int/xml-namespace/itu-t/h.741.4/messagedelivery" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<annotation>
		<documentation xml:lang="en"><![CDATA[
			This schema (H.741.4-v1.xsd) is the ITU-T H.741 Part.4 Metadata, Version 1.
			The namespace of the schema is "http://www.itu.int/xml-namespace/itu-t/h.741.4/messagedelivery", 
			and its preferred namespace prefix is "am4".]]></documentation>
	</annotation>
	<import namespace="http://www.itu.int/xml-namespace/itu-t/h.741.3/lineartv" schemaLocation="http://www.itu.int/xml-namespace/itu-t/h.741.3/H.741.3-v1.xsd"/>
	<import namespace="http://www.itu.int/xml-namespace/itu-t/h.741.2/datastructure" schemaLocation="http://www.itu.int/xml-namespace/itu-t/h.741.2/H.741.2-v1.xsd"/>
	<import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
	<import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
	<!-- ================================================================ -->
	<!-- ================================================================ -->
	<!-- Primitive Data Types for H.741 Part.4 -->
	<!-- ================================================================ -->
	<!-- ================================================================ -->
	<simpleType name="HexBinary1">
		<restriction base="hexBinary">
			<length value="1"/>
		</restriction>
	</simpleType>
	<simpleType name="HexBinaryMax2">
		<restriction base="hexBinary">
			<maxLength value="2"/>
		</restriction>
	</simpleType>
	<simpleType name="HexBinaryMax4">
		<restriction base="hexBinary">
			<maxLength value="4"/>
		</restriction>
	</simpleType>
	<simpleType name="HexBinary16">
		<restriction base="hexBinary">
			<length value="16"/>
		</restriction>
	</simpleType>
	<!-- ============================================== -->
	<simpleType name="ProtocolVersionIDType">
		<restriction base="am4:HexBinary1"/>
	</simpleType>
	<simpleType name="MessageIDType">
		<restriction base="am2:HexBinary8"/>
	</simpleType>
	<!-- ============================================== -->
	<!-- Data Types (Table 2) -->
	<!-- ============================================== -->
	<simpleType name="MessageTypeType">
		<restriction base="HexBinary1">
			<enumeration value="00"/>
			<enumeration value="01"/>
			<enumeration value="02"/>
			<enumeration value="03"/>
			<enumeration value="04"/>
			<enumeration value="05"/>
			<enumeration value="06"/>
			<enumeration value="07"/>
			<enumeration value="08"/>
			<enumeration value="09"/>
		</restriction>
	</simpleType>
	<simpleType name="ResponseQualifierType">
		<restriction base="HexBinary1">
			<enumeration value="00"/>
			<enumeration value="01"/>
			<enumeration value="02"/>
			<enumeration value="03"/>
		</restriction>
	</simpleType>
	<!-- ============================================== -->
	<!-- Data Elements for H.741 Part.4 (Table 2) -->
	<!-- ============================================== -->
	<complexType name="AMMsgBaseType">
		<sequence>
			<element name="MessageType" type="am4:MessageTypeType"/>
			<element name="Compression" type="am2:CompressionType" minOccurs="0"/>
		</sequence>
		<attribute name="expirationTime" type="dateTime" use="required"/>
		<attribute name="protocolVersionMajorId" type="am4:ProtocolVersionIDType" use="required"/>
		<attribute name="protocolVersionMinorId" type="am4:ProtocolVersionIDType" use="required"/>
		<attribute name="messageId" type="am4:MessageIDType" use="required"/>
	</complexType>
	<complexType name="AMMulticastMsgBaseType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="Digest" type=" ds:ReferenceType"/>
					<element name="Signature" type=" ds:SignatureType"/>
					<element name="ResponseQualifier" type="am4:ResponseQualifierType"/>
					<element name="TerminalDeviceTarget" type="am4:TerminalDeviceTargetListType" minOccurs="0"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<complexType name="TerminalDeviceTargetListType">
		<sequence>
			<element name="TerminalDeviceTarget" type="am4:HexBinary16" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
		<attribute name="size" type="am4:HexBinaryMax4"/>
	</complexType>

	<complexType name="ThresholdRangeType">
		<attribute name="lower" type="am4:HexBinaryMax2" use="optional" default="00"/>
		<attribute name="upper" type="am4:HexBinaryMax2" use="optional" default="FFFF"/>
	</complexType>
	<!-- group name="ThresholdRange">
		<sequence>
			<element name="LowerThreshold" type="am4:HexBinary2" default="00" minOccurs="0"/>
			<element name="UpperThreshold" type="am4:HexBinary2" default="FFFF" minOccurs="0"/>
		</sequence>
	</group -->
	<!-- ================================================================ -->
	<!-- ================================================================ -->
	<!-- AM Messages for H.741 Part.4-->
	<!-- ================================================================ -->
	<!-- ================================================================ -->
	<!-- ============================================== -->
	<!-- 1. Configuration Package Request Message (Table 3) -->
	<!-- ============================================== -->
	<element name="ConfigRequestMsg" type="am4:ConfigRequestMsgType"/>
	<complexType name="ConfigRequestMsgType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="ConfigPackageRequest" type="am2:ConfigPackageRequestType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<!-- 2. Configuration Package Request Response Messages (Tables 4,5) -->
	<!-- ============================================== -->
	<element name="UnicastConfigRequestResponseMsg" type="am4:UnicastConfigRequestResponseMsgType"/>
	<complexType name="UnicastConfigRequestResponseMsgType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="ConfigPackageRequestResponse" type="am2:ConfigPackageRequestResponseType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<element name="MulticastConfigRequestResponseMsg" type="am4:MulticastConfigRequestResponseMsgType"/>
	<complexType name="MulticastConfigRequestResponseMsgType">
		<complexContent>
			<extension base="am4:AMMulticastMsgBaseType">
				<sequence>
					<element name="UserInfoTargetString" type="am2:UserInfoTargetStringType" minOccurs="0" maxOccurs="unbounded"/>
					<element name="ConfigPackageRequestResponse" type="am2:ConfigPackageRequestResponseType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<!-- 3. AMF Configuration Messages (Tables 6,7) -->
	<!-- ============================================== -->
	<element name="UnicastConfigMsg" type="am4:UnicastConfigMsgType"/>
	<complexType name="UnicastConfigMsgType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="ImmediateAndFutureConfiguration" type="am2:ConfigPackageRequestResponseType"/>
				</sequence>
			</extension>
			<!-- extension base="am4:UnicastConfigRequestResponseMsgType" -->
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<element name="MulticastConfigMsg" type="am4:MulticastConfigMsgType"/>
	<complexType name="MulticastConfigMsgType">
		<complexContent>
			<extension base="am4:AMMulticastMsgBaseType">
				<sequence>
					<element name="ThresholdRange" type="am4:ThresholdRangeType" minOccurs="0"/>
					<!-- group ref="am4:ThreshholdRange"/ -->
					<element name="TerminalDeviceTypeTarget" type="am2:TerminalDeviceTypeType" minOccurs="0" maxOccurs="unbounded"/>
					<element name="UserInfoTargetString" type="am2:UserInfoTargetStringType" minOccurs="0" maxOccurs="unbounded"/>
					<element name="ImmediateAndFutureConfiguration" type="am2:ConfigPackageRequestResponseType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<!-- 4. Measurement Report Request Messages (Tables 8,9) -->
	<!-- ============================================== -->
	<element name="UnicastMeasReportRequestMsg" type="am4:UnicastMeasReportRequestMsgType"/>
	<complexType name="UnicastMeasReportRequestMsgType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="MeasurementReportRequest" type="am2:MeasurementReportRequestType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<element name="MulticastMeasReportRequestMsg" type="am4:MulticastMeasReportRequestMsgType"/>
	<complexType name="MulticastMeasReportRequestMsgType">
		<complexContent>
			<extension base="am4:AMMulticastMsgBaseType">
				<sequence>
					<element name="ThreshholdRange" type="am4:ThresholdRangeType" minOccurs="0"/>
					<!-- group ref="am4:ThreshholdRange"/ -->
					<element name="MeasurementReportRequest" type="am2:MeasurementReportRequestType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<!-- 5. Measurement Report Message (Tables 10) -->
	<!-- ============================================== -->
	<element name="MeasurementReportMsg" type="am4:MeasurementReportMsgType"/>
	<complexType name="MeasurementReportMsgType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="Signature" type="ds:SignatureType"/>
					<element name="AMReportPackage" type="am2:AMReportPackageType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<!-- 6. Acknowledge Message (Table 11) -->
	<!-- ============================================== -->
	<element name="ConfigurationAckMsg" type="am4:ConfigurationAckMsgType"/>
	<complexType name="ConfigurationAckMsgType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="Ack" type="am2:AckType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
	<!-- ============================================== -->
	<!-- 7. Error Message (Table 12) -->
	<!-- ============================================== -->
	<element name="ErrorMsg" type="am4:ErrorkMsgType"/>
	<complexType name="ErrorkMsgType">
		<complexContent>
			<extension base="am4:AMMsgBaseType">
				<sequence>
					<element name="Error" type="am2:ErrorType"/>
				</sequence>
			</extension>
		</complexContent>
	</complexType>
</schema>