1 <?xml version="1.0" encoding="UTF-8"?>
2 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
3 <xs:element name="DCSubtitle">
6 <xs:element name="SubtitleID" type="UUIDType"/>
7 <xs:element name="MovieTitle" type="xs:string"/>
8 <xs:element name="ReelNumber" type="xs:string"/>
9 <xs:element name="Language" type="xs:string"/>
10 <xs:element ref="LoadFont" minOccurs="0" maxOccurs="unbounded"/>
11 <xs:element ref="Font" minOccurs="0" maxOccurs="unbounded"/>
12 <xs:element ref="Subtitle" minOccurs="0" maxOccurs="unbounded"/>
14 <xs:attribute name="Version" use="required">
16 <xs:restriction base="xs:string">
17 <xs:enumeration value="1.0"/>
18 <xs:enumeration value="1.1"/>
24 <xs:element name="LoadFont">
27 <xs:extension base="spaceType">
28 <xs:attribute name="Id" use="required" type="xs:string"/>
29 <xs:attribute name="URI" use="required" type="xs:anyURI"/>
34 <xs:element name="Font">
35 <xs:complexType mixed="true">
36 <xs:choice minOccurs="0" maxOccurs="unbounded">
37 <xs:element ref="Font"/>
38 <xs:element ref="Subtitle"/>
39 <xs:element ref="Text"/>
40 <xs:element ref="Image"/>
42 <xs:attribute name="Id" type="xs:string"/>
43 <xs:attribute name="Color" type="fontColorType"/>
44 <xs:attribute name="Effect">
46 <xs:restriction base="xs:string">
47 <xs:enumeration value="none"/>
48 <xs:enumeration value="border"/>
49 <xs:enumeration value="shadow"/>
53 <xs:attribute name="EffectColor" type="fontColorType"/>
54 <xs:attribute name="Italic" type="yesNoType"/>
55 <xs:attribute name="Script">
57 <xs:restriction base="xs:string">
58 <xs:enumeration value="normal"/>
59 <xs:enumeration value="super"/>
60 <xs:enumeration value="sub"/>
64 <xs:attribute name="Size" type="xs:positiveInteger"/>
65 <xs:attribute name="AspectAdjust">
67 <xs:restriction base="xs:decimal">
68 <xs:minInclusive value="0.25"/>
69 <xs:maxInclusive value="4.0"/>
73 <xs:attribute name="Underlined" type="yesNoType"/>
74 <xs:attribute name="Weight">
76 <xs:restriction base="xs:string">
77 <xs:enumeration value="bold"/>
78 <xs:enumeration value="normal"/>
82 <xs:attribute name="Spacing" type="spacingType"/>
85 <xs:element name="Subtitle">
87 <xs:choice minOccurs="0" maxOccurs="unbounded">
88 <xs:element ref="Font"/>
89 <xs:element ref="Text"/>
90 <xs:element ref="Image"/>
92 <xs:attribute name="SpotNumber" use="required" type="xs:string"/>
93 <xs:attribute name="TimeIn" use="required" type="timeType"/>
94 <xs:attribute name="TimeOut" use="required" type="timeType"/>
95 <xs:attribute name="FadeUpTime" type="fadeTimeType"/>
96 <xs:attribute name="FadeDownTime" type="fadeTimeType"/>
99 <xs:element name="Text">
100 <xs:complexType mixed="true">
101 <xs:choice minOccurs="0" maxOccurs="unbounded">
102 <xs:element ref="Font"/>
103 <xs:element minOccurs="0" maxOccurs="unbounded" ref="Ruby"/>
104 <xs:element minOccurs="0" maxOccurs="unbounded" ref="Space"/>
105 <xs:element minOccurs="0" maxOccurs="unbounded" ref="HGroup"/>
106 <xs:element minOccurs="0" maxOccurs="unbounded" ref="Rotate"/>
108 <xs:attribute name="Direction">
110 <xs:restriction base="xs:string">
111 <xs:enumeration value="horizontal"/>
112 <xs:enumeration value="vertical"/>
116 <xs:attribute name="HAlign" type="hAlignType"/>
117 <xs:attribute name="HPosition" type="positionType"/>
118 <xs:attribute name="VAlign" type="vAlignType" />
119 <xs:attribute name="VPosition" type="positionType"/>
122 <xs:element name="Ruby">
125 <xs:element ref="Rb"/>
126 <xs:element ref="Rt"/>
130 <xs:element name="Rb" type="xs:string"/>
131 <xs:element name="Rt">
134 <xs:extension base="xs:string">
135 <xs:attribute name="Size" type="sizeType"/>
136 <xs:attribute name="Position">
138 <xs:restriction base="xs:string">
139 <xs:enumeration value="before"/>
140 <xs:enumeration value="after"/>
144 <xs:attribute name="Offset" type="spacingType"/>
145 <xs:attribute name="Spacing" type="spacingType"/>
146 <xs:attribute name="AspectAdjust">
148 <xs:restriction base="xs:decimal">
149 <xs:minInclusive value="0.25"/>
150 <xs:maxInclusive value="4.0"/>
158 <xs:element name="Space">
160 <xs:attribute name="Size" type="sizeType"/>
163 <xs:element name="HGroup" type="xs:string"/>
164 <xs:element name="Rotate">
167 <xs:extension base="xs:string">
168 <xs:attribute name="Direction">
170 <xs:restriction base="xs:string">
171 <xs:enumeration value="none"/>
172 <xs:enumeration value="right"/>
173 <xs:enumeration value="left"/>
181 <xs:element name="Image">
184 <xs:extension base="xs:anyURI">
185 <xs:attribute name="HAlign" type="hAlignType"/>
186 <xs:attribute name="HPosition" type="positionType"/>
187 <xs:attribute name="VAlign" type="vAlignType"/>
188 <xs:attribute name="VPosition" type="positionType"/>
193 <xs:simpleType name="spaceType">
194 <xs:restriction base="xs:string">
195 <xs:pattern value="\s*"/>
198 <xs:simpleType name="UUIDType">
199 <xs:restriction base="xs:string">
200 <xs:pattern value="\s*[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}\s*"/>
203 <xs:simpleType name="yesNoType">
204 <xs:restriction base="xs:string">
205 <xs:enumeration value="yes"/>
206 <xs:enumeration value="no"/>
209 <xs:simpleType name="hAlignType">
210 <xs:restriction base="xs:string">
211 <xs:enumeration value="left"/>
212 <xs:enumeration value="right"/>
213 <xs:enumeration value="center"/>
216 <xs:simpleType name="vAlignType">
217 <xs:restriction base="xs:string">
218 <xs:enumeration value="top"/>
219 <xs:enumeration value="bottom"/>
220 <xs:enumeration value="center"/>
223 <xs:simpleType name="spacingType">
224 <xs:restriction base="xs:string">
225 <xs:pattern value="-?(\d+|\d+\.\d+)em"/>
228 <xs:simpleType name="sizeType">
229 <xs:restriction base="xs:string">
230 <xs:pattern value="(\d+|\d+\.\d+)em"/>
233 <xs:simpleType name="timeType">
234 <xs:restriction base="xs:string">
235 <xs:pattern value="\d\d:\d\d:\d\d(:(([0-1][0-9][0-9])|([2][0-4][0-9]))|(\.\d{1,3}))"/>
238 <xs:simpleType name="fadeTimeType">
239 <xs:restriction base="xs:string">
240 <xs:pattern value="(\d\d:\d\d:\d\d(:|\.)(\d){1,3})|(\d){1,3}"/>
243 <xs:simpleType name="fontColorType">
244 <xs:restriction base="xs:string">
245 <xs:pattern value="[0-9A-Fa-f]{8}"/>
248 <xs:simpleType name="positionType">
249 <xs:restriction base="xs:decimal">
250 <xs:minInclusive value="-100"/>
251 <xs:maxInclusive value="100"/>