1 <?xml version="1.0" encoding="UTF-8"?>
2 <xs:schema targetNamespace="http://www.smpte-ra.org/schemas/429-7/2006/CPL" xmlns:cpl="http://www.smpte-ra.org/schemas/429-7/2006/CPL" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
4 <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd"/>
5 <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>
7 <!-- CompositionPlaylist -->
8 <xs:element name="CompositionPlaylist" type="cpl:CompositionPlaylistType"/>
9 <xs:complexType name="CompositionPlaylistType">
11 <xs:element name="Id" type="cpl:UUID"/>
12 <xs:element name="AnnotationText" type="cpl:UserText" minOccurs="0"/>
13 <xs:element name="IconId" type="cpl:UUID" minOccurs="0"/>
14 <xs:element name="IssueDate" type="xs:dateTime"/>
15 <xs:element name="Issuer" type="cpl:UserText" minOccurs="0"/>
16 <xs:element name="Creator" type="cpl:UserText" minOccurs="0"/>
17 <xs:element name="ContentTitleText" type="cpl:UserText"/>
18 <xs:element name="ContentKind" type="cpl:ContentKindType"/>
19 <xs:element name="ContentVersion" type="cpl:ContentVersionType"/>
20 <xs:element name="RatingList">
23 <xs:element name="Rating" type="cpl:RatingType" minOccurs="0" maxOccurs="unbounded"/>
27 <xs:element name="ReelList">
30 <xs:element name="Reel" type="cpl:ReelType" maxOccurs="unbounded"/>
34 <xs:element name="Signer" type="ds:KeyInfoType" minOccurs="0"/>
35 <xs:element ref="ds:Signature" minOccurs="0"/>
40 <xs:complexType name="MarkerType">
42 <xs:element name="Label">
45 <xs:extension base="xs:string">
46 <xs:attribute name="scope" type="xs:anyURI" use="optional" default="http://www.smpte-ra.org/schemas/429-7/2006/CPL#standard-markers"/>
51 <xs:element name="AnnotationText" type="cpl:UserText" minOccurs="0"/>
52 <xs:element name="Offset">
54 <xs:restriction base="xs:long">
55 <xs:minInclusive value="0"/>
63 <xs:complexType name="RatingType">
65 <xs:element name="Agency" type="xs:anyURI"/>
66 <xs:element name="Label" type="xs:string"/>
71 <xs:complexType name="ContentKindType">
73 <xs:extension base="xs:string">
74 <xs:attribute name="scope" type="xs:anyURI" use="optional" default="http://www.smpte-ra.org/schemas/429-7/2006/CPL#standard-content"/>
79 <!-- ContentVersion -->
80 <xs:complexType name="ContentVersionType">
82 <xs:element name="Id" type="xs:anyURI"/>
83 <xs:element name="LabelText" type="cpl:UserText"/>
88 <xs:complexType name="ReelType">
90 <xs:element name="Id" type="cpl:UUID"/>
91 <xs:element name="AnnotationText" type="cpl:UserText" minOccurs="0"/>
92 <xs:element name="AssetList">
95 <xs:element name="MainMarkers" type="cpl:MarkerAssetType" minOccurs="0"/>
96 <xs:element name="MainPicture" type="cpl:PictureTrackFileAssetType" minOccurs="0"/>
97 <xs:element name="MainSound" type="cpl:SoundTrackFileAssetType" minOccurs="0"/>
98 <xs:element name="MainSubtitle" type="cpl:SubtitleTrackFileAssetType" minOccurs="0"/>
99 <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
106 <!-- GenericAssetType -->
107 <xs:complexType name="GenericAssetType" abstract="1">
109 <xs:element name="Id" type="cpl:UUID"/>
110 <xs:element name="AnnotationText" type="cpl:UserText" minOccurs="0"/>
111 <xs:element name="EditRate" type="cpl:Rational"/>
112 <xs:element name="IntrinsicDuration" type="xs:long"/>
113 <xs:element name="EntryPoint" type="xs:long" minOccurs="0"/>
114 <xs:element name="Duration" type="xs:long" minOccurs="0"/>
118 <!-- TrackFileAssetType -->
119 <xs:complexType name="TrackFileAssetType" abstract="1">
121 <xs:extension base="cpl:GenericAssetType">
123 <xs:element name="KeyId" type="cpl:UUID" minOccurs="0"/>
124 <xs:element name="Hash" type="xs:base64Binary" minOccurs="0"/>
130 <!-- SoundTrackFileAssetType -->
131 <xs:complexType name="SoundTrackFileAssetType">
133 <xs:extension base="cpl:TrackFileAssetType">
135 <xs:element name="Language" type="xs:language" minOccurs="0"/>
141 <!-- SubtitleTrackFileAssetType -->
142 <xs:complexType name="SubtitleTrackFileAssetType">
144 <xs:extension base="cpl:TrackFileAssetType">
146 <xs:element name="Language" type="xs:language" minOccurs="0"/>
152 <!-- PictureTrackFileAssetType -->
153 <xs:complexType name="PictureTrackFileAssetType">
155 <xs:extension base="cpl:TrackFileAssetType">
157 <xs:element name="FrameRate" type="cpl:Rational"/>
158 <xs:element name="ScreenAspectRatio" type="cpl:Rational"/>
164 <!-- MarkerAssetType -->
165 <xs:complexType name="MarkerAssetType">
167 <xs:extension base="cpl:GenericAssetType">
169 <xs:element name="MarkerList">
172 <xs:element name="Marker" type="cpl:MarkerType" minOccurs="0" maxOccurs="unbounded"/>
182 <xs:simpleType name="Rational">
185 <xs:list itemType="xs:long"/>
187 <xs:length value="2"/>
192 <xs:simpleType name="UUID">
193 <xs:restriction base="xs:anyURI">
194 <xs:pattern value="urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}"/>
199 <xs:complexType name="UserText">
201 <xs:extension base="xs:string">
202 <xs:attribute name="language" type="xs:language" use="optional" default="en"/>