-- XML schema extracted from ITU-T J.204 (06/2008)
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:OCAP="http://www.ipdr.org/namespaces/CableLabs(R)/OCAP(TM)" xmlns:ipdr="http://www.ipdr.org/namespaces/ipdr" targetNamespace="http://www.ipdr.org/namespaces/CableLabs(R)/OCAP(TM)" version="3.5-A.0" elementFormDefault="qualified" attributeFormDefault="unqualified">
<import namespace="http://www.ipdr.org/namespaces/ipdr" schemaLocation="http://www.ipdr.org/public/IPDRDoc3.5.1.xsd"/>
<include schemaLocation="http://www.ipdr.org/public/IPDRTypes.xsd"/>
<element name="protocolVersionMajor" type="byte">
</element>
<element name="protocolVersionMinor" type="byte">
</element>
<element name="hostID" type="string"/>
<element name="hostType">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
OCAP
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
ETV
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
other
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
<element name="createTime" type="ipdr:dateTimeMsec">
</element>
<element name="transmitTime" type="ipdr:dateTimeMsec">
</element>
<element name="privateData" type="hexBinary">
</element>
<element name="serviceSelection">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="sourceID" type="int">
</element>
</sequence>
</complexType>
</element>
<element name="tuning">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="tunerID" type="int">
</element>
<element name="frequency" type="int">
</element>
<element name="programNumber" type="int">
</element>
</sequence>
</complexType>
</element>
<element name="SDV">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="sourceID" type="int">
</element>
</sequence>
</complexType>
</element>
<element name="servicePresentation">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="sourceID" type="int">
</element>
<element name="aspectRatio">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
4:3
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
16:9
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
<element name="resolution" type="int">
</element>
<element name="audio">
<simpleType>
<restriction base="int">
<enumeration value="0">
<annotation>
<appinfo>
<ipdr:enumMeaning>
No audio
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
Audio
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="segmentPresentation">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="segmentID" type="int">
</element>
</sequence>
</complexType>
</element>
<element name="DPI">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="sourceID" type="int">
</element>
<element name="replacementID" type="int">
</element>
<element name="replacementSource">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
In transport
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
Out of transport
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
From Memory
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
<element name="switchLevel" type="int">
<simpleType>
<restriction base="int">
<enumeration value="0">
<annotation>
<appinfo>
<ipdr:enumMeaning>
L0
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
L1
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="inputEvent">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="keyCode" type="int">
</element>
</sequence>
</complexType>
</element>
<element name="applicationLoadRequested">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="appID" type="int">
</element>
<element name="appType">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
OCAP
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
ETV
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
other
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="applicationLoaded">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="appID" type="int">
</element>
<element name="appType">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
OCAP
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
ETV
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
other
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
<element name="numResourceFiles" type="int">
</element>
<element name="transportProtocol">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
IBOC
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
OOBOC
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
HTTP
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
<element name="controlCode">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
LOADED
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
PAUSED
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
RUNNING
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="applicationLifecycle">
<complexType>
<sequence>
<element ref=" createTime"/>
<element name="appID" type="int"/>
<element name="appType">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
OCAP
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
ETV
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
other
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
<element name="lifecycleState">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
LAUNCHED
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
PAUSED
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
RESUMED
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="4">
<annotation>
<appinfo>
<ipdr:enumMeaning>
TERMINATED
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="environmentSelection">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="environment">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
Cable
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
Non cable
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="applicationMode">
<complexType>
<sequence>
<element ref=" createTime"/>
<element name="appID" type="int"/>
<element name="appType"/>
<element name="mode">
<simpleType>
<restriction base="int">
<enumeration value="1">
<annotation>
<appinfo>
<ipdr:enumMeaning>
CROSS_ENVIRONMENT
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="2">
<annotation>
<appinfo>
<ipdr:enumMeaning>
BACKGROUND
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
<enumeration value="3">
<annotation>
<appinfo>
<ipdr:enumMeaning>
NORMAL
</ipdr:enumMeaning>
</appinfo>
</annotation>
</enumeration>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
</element>
<element name="application">
<complexType>
<sequence>
<element ref="createTime"/>
<element name="privateData" type="hexBinary">
</element>
</sequence>
</complexType>
</element>
<complexType name="OCAP-Type">
<complexContent>
<extension base="ipdr:IPDRType">
<sequence>
<element ref="protocolVersionMajor"/>
<element ref="protocolVersionMinor"/>
<element ref="hostID"/>
<element ref="hostType"/>
<element ref="createTime"/>
<element ref="transmitTime"/>
<element ref="privateData"/>
<element ref="serviceSelection" minOccurs="0" maxOccurs="unbounded"/>
<element ref="tuning" minOccurs="0" maxOccurs="unbounded"/>
<element ref="SDV" minOccurs="0" maxOccurs="unbounded"/>
<element ref="servicePresentation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="segmentPresentation" minOccurs="0" maxOccurs="unbounded"/>
<element ref="DPI" minOccurs="0" maxOccurs="unbounded"/>
<element ref="inputEvent" minOccurs="0" maxOccurs="unbounded"/>
<element ref="applicationLoadRequested" minOccurs="0" maxOccurs="unbounded"/>
<element ref="applicationLoaded" minOccurs="0" maxOccurs="unbounded"/>
<element ref="applicationLifecycle" minOccurs="0" maxOccurs="unbounded"/>
<element ref="environmentSelection" minOccurs="0" maxOccurs="unbounded"/>
<element ref="applicationMode" minOccurs="0" maxOccurs="unbounded"/>
<element ref="application" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
</schema>