summaryrefslogtreecommitdiff
path: root/xsd
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2020-09-03 12:10:27 +0200
committerCarl Hetherington <cth@carlh.net>2020-09-21 21:57:18 +0200
commit549011d53fa302fde3dcb6df4d946dc569a8b03e (patch)
treef85b0731b5acf20c2c560fd9f287380d5e1578c3 /xsd
parentfc205951d1fec50d59bfbed9cb03c07cc95205d9 (diff)
Add namespaces and tweak CPL namespace so Xerces checks CompositionMetadataAsset.
Diffstat (limited to 'xsd')
-rw-r--r--xsd/Dolby-2012-AD.xsd14
-rw-r--r--xsd/SMPTE-429-16.xsd130
-rw-r--r--xsd/SMPTE-429-7-2006-CPL.xsd2
3 files changed, 145 insertions, 1 deletions
diff --git a/xsd/Dolby-2012-AD.xsd b/xsd/Dolby-2012-AD.xsd
new file mode 100644
index 00000000..f1c22199
--- /dev/null
+++ b/xsd/Dolby-2012-AD.xsd
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.dolby.com/schemas/2012/AD" xmlns:axd="http://www.dolby.com/schemas/2012/AD" xmlns:cpl="http://www.smpte-ra.org/schemas/429-7/2006/CPL" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:import namespace="http://www.smpte-ra.org/schemas/429-7/2006/CPL"/>
+ <xs:element name="AuxData" type="axd:DataTrackFileAssetType"/>
+ <xs:complexType name="DataTrackFileAssetType">
+ <xs:complexContent>
+ <xs:extension base="cpl:TrackFileAssetType">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="DataType" type="xs:string"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+</xs:schema>
diff --git a/xsd/SMPTE-429-16.xsd b/xsd/SMPTE-429-16.xsd
new file mode 100644
index 00000000..0726f355
--- /dev/null
+++ b/xsd/SMPTE-429-16.xsd
@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.smpte-ra.org/schemas/429-16/2014/CPL-Metadata" xmlns:cpl="http://www.smpte-ra.org/schemas/429-7/2006/CPL" xmlns:meta="http://www.smpte-ra.org/schemas/429-16/2014/CPL-Metadata" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:import namespace="http://www.smpte-ra.org/schemas/429-7/2006/CPL"/>
+ <xs:element name="CompositionMetadataAsset" type="meta:CompositionMetadataAssetType"/>
+ <xs:complexType name="CompositionMetadataAssetType">
+ <xs:complexContent>
+ <xs:extension base="cpl:GenericAssetType">
+ <xs:sequence>
+ <xs:element name="FullContentTitleText" type="cpl:UserText"/>
+ <xs:element minOccurs="0" name="ReleaseTerritory">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute default="http://www.smpte-ra.org/schemas/429-16/2014/CPL-Metadata#scope/release-territory/UNM49" name="scope" type="xs:anyURI"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element default="1" minOccurs="0" name="VersionNumber">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:nonNegativeInteger">
+ <xs:attribute default="final" name="status" type="meta:StatusEnum"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element minOccurs="0" name="Chain" type="xs:string"/>
+ <xs:element minOccurs="0" name="Distributor" type="xs:string"/>
+ <xs:element minOccurs="0" name="Facility" type="xs:string"/>
+ <xs:element minOccurs="0" name="AlternateContentVersionList">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="1" name="ContentVersion" type="cpl:ContentVersionType"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element minOccurs="0" name="Luminance">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="meta:PositiveDecimal">
+ <xs:attribute name="units" type="meta:LuminanceUnitEnum" use="required"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element minOccurs="1" name="MainSoundConfiguration" type="xs:string"/>
+ <xs:element minOccurs="1" name="MainSoundSampleRate" type="cpl:Rational"/>
+ <xs:element minOccurs="1" name="MainPictureStoredArea">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Width" type="xs:positiveInteger"/>
+ <xs:element name="Height" type="xs:positiveInteger"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element minOccurs="1" name="MainPictureActiveArea">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Width" type="xs:positiveInteger"/>
+ <xs:element name="Height" type="xs:positiveInteger"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element minOccurs="0" name="MainSubtitleLanguageList">
+ <xs:simpleType>
+ <xs:restriction base="meta:LanguageListType">
+ <xs:minLength value="1"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element minOccurs="0" name="ExtensionMetadataList">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="ExtensionMetadata" type="meta:ExtensionMetadataType"> </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:simpleType name="StatusEnum">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="final"/>
+ <xs:enumeration value="temp"/>
+ <xs:enumeration value="pre"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="LuminanceUnitEnum">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="foot-lambert"/>
+ <xs:enumeration value="candela-per-square-metre"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="PositiveDecimal">
+ <xs:restriction base="xs:decimal">
+ <xs:minExclusive value="0"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="LanguageListType">
+ <xs:restriction>
+ <xs:simpleType>
+ <xs:list itemType="xs:language"/>
+ </xs:simpleType>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:complexType name="ExtensionMetadataType">
+ <xs:sequence>
+ <xs:element name="Name" type="xs:string"/>
+ <xs:element minOccurs="0" name="PropertyList">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" name="Property">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Name" type="xs:string"/>
+ <xs:element name="Value" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
+ </xs:sequence>
+ <xs:attribute name="scope" type="xs:anyURI" use="required"/>
+ </xs:complexType>
+</xs:schema>
diff --git a/xsd/SMPTE-429-7-2006-CPL.xsd b/xsd/SMPTE-429-7-2006-CPL.xsd
index 0d2c48df..1b36f5c6 100644
--- a/xsd/SMPTE-429-7-2006-CPL.xsd
+++ b/xsd/SMPTE-429-7-2006-CPL.xsd
@@ -96,7 +96,7 @@
<xs:element name="MainPicture" type="cpl:PictureTrackFileAssetType" minOccurs="0"/>
<xs:element name="MainSound" type="cpl:SoundTrackFileAssetType" minOccurs="0"/>
<xs:element name="MainSubtitle" type="cpl:SubtitleTrackFileAssetType" minOccurs="0"/>
- <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax" />
+ <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="strict" />
</xs:sequence>
</xs:complexType>
</xs:element>