-- XSD schema extracted from ITU-T H.741.3 (2012) Amd. 1 (02/2015)

<?xml version="1.0" encoding="UTF-8"?> <schema 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/datasturcture" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace=" http://www.itu.int/xml-namespace/itu-t/h.741.3/lineartv" elementFormDefault="qualified" attributeFormDefault="unqualified"> <annotation> <documentation xml:lang="en"><![CDATA[ This schema (H.741.3-v1.xsd) is the ITU-T H.741 Part.3 Metadata, Version 1 (for H.741.3-201206.doc). The namespace of the schema is "http://www.itu.int/xml-namespace/itu-t/h.741.3/lineartv", and its preferred namespace prefix is "am3".]]></documentation> </annotation> <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/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/> <!-- ================================================================= --> <!-- ================================================================= --> <!-- Primitive Data Types for H.741 Part.3 --> <!-- ================================================================= --> <!-- ================================================================= --> <simpleType name="NumOfMillisecondsType"> <restriction base="nonNegativeInteger"/> </simpleType> <simpleType name="H770IDSType"> <list itemType="am2:H770IDType"/> </simpleType> <!-- ================================================================= --> <!-- Enumeration Types (Table 1) --> <!-- ================================================================= --> <!-- Values of StartNavMethod: 0=up/down arrow, 1 =channel surfing, 2=scheduled channel change, 3=EPG, 4=Last (previous), 5=Favorite, 6=number entry, 7=unknown, 8=other --> <simpleType name="StartNavMethodType"> <restriction base="integer"> <enumeration value="0"/> <enumeration value="1"/> <enumeration value="2"/> <enumeration value="3"/> <enumeration value="4"/> <enumeration value="5"/> <enumeration value="6"/> <enumeration value="7"/> <enumeration value="8"/> </restriction> </simpleType> <!-- Values of StopNavMethod: 0=up/down arrow 1 =channel surfing 2=scheduled channel change 3=EPG 4=Last (previous) 5=Favourite 6=number entry 7=unknown 8=other 999 = turn off terminal device --> <simpleType name="StopNavMethodType"> <restriction base="integer"> <enumeration value="0"/> <enumeration value="1"/> <enumeration value="2"/> <enumeration value="3"/> <enumeration value="4"/> <enumeration value="5"/> <enumeration value="6"/> <enumeration value="7"/> <enumeration value="8"/> <enumeration value="9"/> </restriction> </simpleType> <!-- Valuses of ViewMode - 0=unknown 1 = full screen 2= Picture-in-Picture 3 =Mosaic 4 = Other --> <simpleType name="ViewModeType"> <restriction base="integer"> <enumeration value="0"/> <enumeration value="1"/> <enumeration value="2"/> <enumeration value="3"/> <enumeration value="4"/> </restriction> </simpleType> <!-- ================================================================= --> <!-- LTV Events and Sample Set Names(Tables 2,3)--> <!-- ================================================================= --> <simpleType name="LTVSpecificEventNameType"> <restriction base="NMTOKEN"> <enumeration value="LinearChannelStart"/> <enumeration value="LinearChannelStop"/> </restriction> </simpleType> <simpleType name="LTVEventNameType"> <union memberTypes="am2:CommonEventNameType am3:LTVSpecificEventNameType"/> </simpleType> <!-- ================================================================= --> <simpleType name="LTVSpecificSampleSetNameType"> <restriction base="NMTOKEN"> <enumeration value="ChannelPlaying"/> </restriction> </simpleType> <simpleType name="LTVSampleSetNameType"> <union memberTypes="am2:CommonSampleSetNameType am3:LTVSpecificSampleSetNameType"/> </simpleType> <!-- ================================================================= --> <simpleType name="LTVLimitedSampleSetNameType"> <union memberTypes="am2:LimitedSampleSetNameType am3:LTVSpecificSampleSetNameType"/> </simpleType> <!-- ================================================================= --> <!-- Type Extension to "am2:CommonEventForTriggerMethodType" & "am2:CommonSampleSetForTriggerMethodType" --> <!-- ================================================================= --> <complexType name="LTVEventForTriggerMethodType1"> <complexContent> <restriction base="am2:CommonEventForTriggerMethodType"> <attribute name="eventName" use="prohibited"/> </restriction> </complexContent> </complexType> <complexType name="LTVEventForTriggerMethodType"> <complexContent> <extension base="am3:LTVEventForTriggerMethodType1"> <attribute name="eventName" type="am3:LTVEventNameType" use="required"/> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="LTVSampleSetForTriggerMethodType1"> <complexContent> <restriction base="am2:CommonSampleSetForTriggerMethodType"> <attribute name="sampleSetName" use="prohibited"/> </restriction> </complexContent> </complexType> <complexType name="LTVSampleSetForTriggerMethodType"> <complexContent> <extension base="am3:LTVSampleSetForTriggerMethodType1"> <attribute name="sampleSetName" type="am3:LTVSampleSetNameType" use="required"/> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="LimitedLTVSampleSetForTriggerMethodType1"> <complexContent> <restriction base="am2:LimitedSampleSetForTriggerMethodType"> <attribute name="sampleSetName" use="prohibited"/> </restriction> </complexContent> </complexType> <complexType name="LimitedLTVSampleSetForTriggerMethodType"> <complexContent> <extension base="am3:LimitedLTVSampleSetForTriggerMethodType1"> <attribute name="sampleSetName" type="am3:LTVLimitedSampleSetNameType" use="required"/> </extension> </complexContent> </complexType> <!-- ================================================================= --> <!-- Type Extension to "am2:CommonEventForScheduleType" & "am2:CommonSampleSetForScheduleType" --> <!-- ================================================================= --> <complexType name="LTVEventForScheduleType1"> <complexContent> <restriction base="am2:CommonEventForScheduleType"> <attribute name="eventName" use="prohibited"/> </restriction> </complexContent> </complexType> <complexType name="LTVEventForScheduleType"> <complexContent> <extension base="am3:LTVEventForScheduleType1"> <attribute name="eventName" type="am3:LTVEventNameType" use="required"/> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="LTVSampleSetForScheduleType1"> <complexContent> <restriction base="am2:CommonSampleSetForScheduleType"> <attribute name="sampleSetName" use="prohibited"/> </restriction> </complexContent> </complexType> <complexType name="LTVSampleSetForScheduleType"> <complexContent> <extension base="am3:LTVSampleSetForScheduleType1"> <sequence> <element name="SampleSetQualifier" type="am2:SampleSetQualifierType" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="sampleSetName" type="am3:LTVSampleSetNameType" use="required"/> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="LimitedLTVSampleSetForScheduleType1"> <complexContent> <restriction base="am2:LimitedSampleSetForScheduleType"> <attribute name="sampleSetName" use="prohibited"/> </restriction> </complexContent> </complexType> <complexType name="LimitedLTVSampleSetForScheduleType"> <complexContent> <extension base="am3:LimitedLTVSampleSetForScheduleType1"> <sequence> <element name="SampleSetQualifier" type="am2:SampleSetQualifierType" minOccurs="0" maxOccurs="unbounded"/> </sequence> <attribute name="sampleSetName" type="am3:LTVLimitedSampleSetNameType" use="required"/> </extension> </complexContent> </complexType> <!-- ================================================================= --> <!-- ================================================================= --> <!-- Data Structures for H.741 Part.3 =========================== --> <!-- ================================================================= --> <!-- ================================================================= --> <!-- ================================================================= --> <!-- Type Extension to User Permission (Channel Qualifier, Table 4) --> <!-- ================================================================= --> <complexType name="LTVUserPermissionType"> <complexContent> <extension base="am2:UserPermissionType"> <sequence> <element name="ChannelQualifier" type="am3:ChannelQualifierType" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="ChannelQualifierType"> <choice minOccurs="0"> <element name="ChannelList" type="am3:ChannelListType" minOccurs="0"/> <element name="AllChannelsExceptList" type="am3:ChannelListType" minOccurs="0"/> </choice> </complexType> <complexType name="ChannelListType"> <attribute name="serviceIdref" type="am3:H770IDSType" use="required"/> </complexType> <!-- ================================================================= --> <!-- Type Extension to Measurement Request (Linear TV Qualifier,Table4)--> <!-- ================================================================= --> <complexType name="LTVMeasurementRequestType"> <complexContent> <extension base="am2:MeasurementRequestType"> <sequence> <element name="LinearTVQualifier" type="am3:LinearTVQualifierType" minOccurs="0"/> </sequence> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="LinearTVQualifierType"> <sequence> <element name="NavMethod" type="am3:ReportFlagType" minOccurs="0"/> <element name="ControlDevice" type="am2:ControlDeviceType" minOccurs="0"/> <element name="ViewMode" type="am3:ReportFlagType" minOccurs="0"/> <element name="Obscuration" type="am3:ReportFlagType" minOccurs="0"/> <element name="ChannelQualifier" type="am3:ChannelQualifierType" minOccurs="0"/> <element name="ChannelChangeFilter" type="am3:NumOfMillisecondsType" minOccurs="0"/> </sequence> </complexType> <!-- values of ReportFlag: 0=do not report 1= report --> <simpleType name="ReportFlagType"> <restriction base="integer"> <enumeration value="0"/> <enumeration value="1"/> </restriction> </simpleType> <!-- ================================================================= --> <!-- Extension to Measurement Request Set (Table 5) --> <!-- ================================================================= --> <complexType name="LTVMeasurementRequestSetType"> <complexContent> <extension base="am2:MeasurementRequestSetType"> <sequence> <element name="DefaultLinearTVQualifier" type="am3:DefaultLinearTVQualifierType" minOccurs="0"/> <!-- The element "LinearTVDefaultQualifier" is newly added for consistency. (See "MeasurementRequestType") --> </sequence> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="DefaultLinearTVQualifierType"> <sequence> <element name="DefaultNavMethod" type="am3:ReportFlagType" default="0" minOccurs="0"/> <!--element name="DefaultControlDevice" type="am2:ControlDeviceType" default="STBRemoteControl" minOccurs="0"/--> <element name="DefaultControlDevice" type="am2:ControlDeviceType" default="0" minOccurs="0"/> <element name="DefaultViewMode" type="am3:ReportFlagType" default="0" minOccurs="0"/> <element name="DefaultObscuration" type="am3:ReportFlagType" default="0" minOccurs="0"/> <element name="DefaultChannelQualifier" type="am3:ChannelQualifierType" minOccurs="0"/> <element name="DefaultChannelChangeFilter" type="am3:NumOfMillisecondsType" default="0" minOccurs="0"/> </sequence> </complexType> <!-- ================================================================= --> <!-- Extension to AM Report Package (Table 6) --> <!-- ================================================================= --> <complexType name="LTVMeasurementReportType"> <complexContent> <extension base="am2:MeasurementReportType"> <sequence> <element name="LinearTVReport" type="am3:LinearTVReportType" minOccurs="0"/> <!-- The element "LinearTVReport" is newly added for consistency. (See "MeasurementRequestType") --> </sequence> </extension> </complexContent> </complexType> <!-- ================================================================= --> <complexType name="LinearTVReportType"> <sequence> <element name="ChannelStart" type="am3:ChannelStartEventType" minOccurs="0"/> <element name="ChannelStop" type="am3:ChannelStopEventType" minOccurs="0"/> <element name="ChannelPlaying" type="am3:ChannelPlayingSampleSetIdType" minOccurs="0" maxOccurs="unbounded"/> </sequence> </complexType> <!-- ================================================================= --> <complexType name="ChannelStartEventType"> <sequence> <element name="ControlDevice" type="am2:ControlDeviceType" minOccurs="0"/> <element name="StartNavMethod" type="am3:StartNavMethodType" minOccurs="0"/> <element name="ViewMode" type="am3:ViewModeType" minOccurs="0"/> <element name="Obscuration" type="am2:PercentageType" minOccurs="0"/> </sequence> <attribute name="serviceIdref" type="am2:H770IDType" use="required"/> <attribute name="previousServiceInstanceIdref" type="am2:ServiceInstanceIDType" use="optional"/> <attribute name="serviceInstanceIdref" type="am2:ServiceInstanceIDType" use="required"/> </complexType> <complexType name="ChannelStopEventType"> <sequence> <element name="ControlDevice" type="am2:ControlDeviceType" minOccurs="0"/> <element name="StopNavMethod" type="am3:StopNavMethodType" minOccurs="0"/> </sequence> <attribute name="serviceInstanceIdref" type="am2:ServiceInstanceIDType" use="required"/> </complexType> <complexType name="ChannelPlayingSampleSetIdType"> <attribute name="serviceIdref" type="am2:H770IDType" use="required"/> <attribute name="serviceInstanceIdref" type="am2:ServiceInstanceIDType" use="required"/> </complexType> </schema>