-- XSD schema extracted from ITU-T H.741.1 (2012) Amd. 1 (01/2013)

<?xml version="1.0" encoding="UTF-8"?> <schema xmlns:am1="urn:itut:iptv:am:part1:2012" xmlns:am2="urn:itut:iptv:am:part2:2012" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:itut:iptv:am:part1:2012" elementFormDefault="qualified" attributeFormDefault="unqualified"> <annotation> <documentation xml:lang="en"><![CDATA[ This schema (H.770-v1.xsd) contains the elements to be included in [b-ITU-T H.770] for the discovery of AM services, which are described in Appendix I of H.741.1.doc. The namespace of the schema is "urn:itut:iptv:am:part1:2012", and its preferred namespace prefix is "am1".]]> </documentation> </annotation> <import namespace="urn:itut:iptv:am:part2:2012" schemaLocation="H.741.2-v1.xsd"/> <import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/> <!-- ================================================================ --> <!-- ================================================================ --> <!-- Data Elements for H.741 Part.1 --> <!-- ================================================================ --> <!-- ================================================================ --> <!-- ============================================== --> <!-- Elements for the discovery of AM services (Table I.1) --> <!-- ============================================== --> <element name="AMServiceDiscovery" type="am1:AMServiceDiscoveryType"/> <complexType name="AMServiceDiscoveryType"> <sequence> <element name="PermissionOperationModes" type="am1:PermissionLevelType" maxOccurs="unbounded"/> <element name="Addresses" type="am1:AddressesType"/> <element name="ConfigurationModes" type="am1:ConfigurationModesType"/> <element name="MeasurementReportTransportProtocol" type="am1:ProtocolType" maxOccurs="unbounded"/> <element name="CryptographicProtocol" type="am1:CryptographicProtocolWithPreferredType" maxOccurs="unbounded"/> <element name="Compression" type="am1:CompressionWithPreferredType" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="preferred" type="boolean" use="optional" default="false"/> </complexType> <!-- ============================================== --> <simpleType name="PermissionLevelType"> <restriction base="NMTOKEN"> <enumeration value="External"/> <enumeration value="Internal"/> <enumeration value="Hybrid"/> </restriction> </simpleType> <!-- ============================================== --> <complexType name="AddressesType"> <sequence> <element name="Unicast" type="am1:UnicastType" minOccurs="0"/> <element name="Multicast" type="am1:MulticastType" minOccurs="0"/> </sequence> </complexType> <complexType name="UnicastType"> <sequence> <element name="ConfigRequestAddress" type="am2:URL" minOccurs="0"/> <element name="ErrorAddress" type="am2:URL" minOccurs="0"/> </sequence> </complexType> <complexType name="MulticastType"> <sequence> <element name="MulticastHybridAddress" type="am1:MulticastAddressType" minOccurs="0"/> <element name="MulticastPushAddress" type="am1:MulticastAddressType" minOccurs="0"/> <element name="ErrorAddress" type="am2:URL" minOccurs="0"/> <element name="AckAddress" type="am2:URL" minOccurs="0"/> </sequence> </complexType> <complexType name="MulticastAddressType"> <simpleContent> <extension base="am2:IpAddressType"> <attribute name="port" type="unsignedShort" use="required"/> <attribute name="sourceAddress" type="am2:IpAddressType" use="required"/> </extension> </simpleContent> </complexType> <!-- ============================================== --> <complexType name="ConfigurationModesType"> <sequence> <element name="Push" type="am1:ConfigurationModeType" minOccurs="0"/> <element name="Pull" type="am1:ConfigurationModeType" minOccurs="0"/> <element name="Hybrid" type="am1:ConfigurationModeType" minOccurs="0"/> </sequence> </complexType> <complexType name="ConfigurationModeType"> <sequence> <element name="TransportProtocol" type="am1:ProtocolType" maxOccurs="unbounded"/> <!-- The element name "TransportProtocols" is changed into "TransportProtocol" for consistency with the --> </sequence> <attribute name="preferred" type="boolean" use="optional" default="false"/> </complexType> <complexType name="ProtocolType"> <simpleContent> <extension base="NMTOKEN"> <attribute name="preferred" type="boolean" use="optional" default="false"/> </extension> </simpleContent> </complexType> <!-- ============================================== --> <complexType name="CryptographicProtocolWithPreferredType"> <simpleContent> <extension base="am2:CryptographicProtocolType"> <attribute name="preferred" type="boolean" use="optional" default="false"/> </extension> </simpleContent> </complexType> <!-- ============================================== --> <complexType name="CompressionWithPreferredType"> <simpleContent> <extension base="am2:CompressionType"> <attribute name="preferred" type="boolean" use="optional" default="false"/> </extension> </simpleContent> </complexType> </schema>