<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://filmstandards.org/schemas/EN15907-d1"
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns:wd4="http://filmstandards.org/schemas/EN15907-d1" attributeFormDefault="unqualified"
	elementFormDefault="qualified">
	<xs:annotation>
		<xs:documentation>
			<p>This is the preliminary version of an XML schema based on the 4th working draft
				(December 2008) of prEN 15907 "Film identification - Enhancing interoperability of
				metadata - Element sets and structures".</p>
			<p>15-Feb-2009 Detlev Balzer (db@dbalzer.net)</p>
			<p>26-Feb-2009 db: Added redefinition notes for type definitions</p>
		</xs:documentation>
	</xs:annotation>

	<xs:element name="ExchangeSet">
		<xs:annotation>
			<xs:documentation> The root element for a set of cinematographic work instances.
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence maxOccurs="unbounded">
				<xs:element ref="wd4:CinematographicWork"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<!-- 
		*********************** Basic entities *********************** 
	-->
	<xs:element name="CinematographicWork">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 4.1.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="wd4:Identifier"/>
				<xs:element ref="wd4:RecordSource"/>
				<xs:element ref="wd4:Title" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:IdentifyingTitle"/>
				<xs:element ref="wd4:CountryOfReference" maxOccurs="unbounded"/>
				<xs:element ref="wd4:YearOfReference" maxOccurs="unbounded"/>
				<xs:element ref="wd4:AgentRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:ProductionEvent" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Award" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:IPRRegistration" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:SubjectTerms" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:ContentDescription" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:SubjectRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:OtherRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:choice maxOccurs="unbounded">
					<xs:element ref="wd4:Variant" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element ref="wd4:Manifestation" maxOccurs="unbounded" minOccurs="0"/>
				</xs:choice>
			</xs:sequence>
			<xs:attribute name="DescriptionLevel" type="wd4:DescriptionLevelEnum" default="m"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="Variant">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 4.2.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="wd4:RecordSource" minOccurs="0"/>
				<xs:element ref="wd4:Identifier"/>
				<xs:element ref="wd4:Title" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:AgentRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Award" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:IPRRegistration" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:OtherRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Language" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:ProductionEvent" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Manifestation" minOccurs="0"/>
			</xs:sequence>
			<xs:attribute name="sourceId" use="optional" type="xs:anySimpleType"/>
			<xs:attribute name="variantType" use="optional" type="xs:anySimpleType"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="Manifestation">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 4.3.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="wd4:RecordSource" minOccurs="0"/>
				<xs:element ref="wd4:Identifier"/>
				<xs:element ref="wd4:Title" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Award" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Language" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Length" minOccurs="0" maxOccurs="1"/>
				<xs:element ref="wd4:Duration" minOccurs="0" maxOccurs="1"/>
				<xs:element ref="wd4:Format" minOccurs="0" maxOccurs="1"/>
				<xs:element ref="wd4:DecisionEvent" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:PublicationEvent" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:OtherRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:AgentRelationship" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="sourceId" use="optional" type="xs:anySimpleType"/>
			<xs:attribute name="manifestationType" use="optional" type="wd4:ManifestationTypeType"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="Item">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 4.4.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="wd4:Title" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="HoldingInstitution" type="xs:string" minOccurs="1"
					maxOccurs="unbounded"/>
				<xs:element ref="wd4:AgentRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="InventoryNumber" type="xs:anySimpleType" minOccurs="0"
					maxOccurs="unbounded"/>
				<xs:element name="CopyType" type="xs:string" minOccurs="0" maxOccurs="1"/>
				<xs:element name="VariationFromManifestation" type="xs:string" maxOccurs="1"/>
				<xs:element name="AccessConditions" type="xs:string" minOccurs="0"
					maxOccurs="unbounded"/>
				<xs:element name="CatalogueReference" type="wd4:CatalogueReferenceType"
					minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Length" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:Duration" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:AgentRelationship" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:OtherRelationship" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="sourceId" use="optional" type="xs:anySimpleType"/>
		</xs:complexType>
	</xs:element>

	<!-- *********************** dependent elements *********************** -->

	<xs:element name="Identifier" type="wd4:IdentifierType">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.1.</p>
			</xs:documentation>
		</xs:annotation>
	</xs:element>

	<xs:element name="RecordSource">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.2.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="wd4:SourceName" minOccurs="1" maxOccurs="1"/>
				<xs:element name="SourceIdentifier" type="wd4:IdentifierType" minOccurs="0"
					maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="Title">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.3.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="TitleText" type="wd4:TextWithLanguageAttrType" minOccurs="1"
					maxOccurs="1"/>
				<xs:element name="PartDesignation" minOccurs="0" maxOccurs="1">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="unit" type="xs:string" minOccurs="1" maxOccurs="1"/>
							<xs:element name="value" type="xs:anySimpleType" minOccurs="1"
								maxOccurs="1"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="TitleRelationship" type="wd4:TitleRelationshipType" minOccurs="1"
					maxOccurs="1"/>
				<xs:element name="TemporalScope" type="wd4:TimespanType" minOccurs="0" maxOccurs="1"/>
				<xs:element name="GeographicScope" type="wd4:RegionType" minOccurs="0" maxOccurs="1"
				/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="IdentifyingTitle" type="xs:string">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.4.</p>
			</xs:documentation>
		</xs:annotation>
	</xs:element>

	<xs:element name="CountryOfReference">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.5.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="wd4:Country" minOccurs="1" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="reference" default="production" use="optional"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="YearOfReference">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.6.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xs:string">
					<xs:attribute name="reference" default="production" use="optional"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>


	<xs:element name="Format">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.7.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="CarrierType" type="wd4:CarrierTypeType" minOccurs="0"
					maxOccurs="1"/>
				<xs:element name="Gauge" type="xs:string" minOccurs="0" maxOccurs="1"/>
				<xs:element name="AspectRatio" type="wd4:AspectRatioType" minOccurs="0"
					maxOccurs="1"/>
				<xs:element name="SoundSystem" minOccurs="0" maxOccurs="1">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="HasSound" type="xs:boolean" minOccurs="0"
								maxOccurs="1"/>
							<xs:element name="IsRecordingSystem" type="xs:boolean" minOccurs="0"
								maxOccurs="1"/>
							<xs:element name="SystemName" type="xs:string" minOccurs="0"
								maxOccurs="1"/>
							<xs:element name="Method" type="xs:string" minOccurs="0" maxOccurs="1"/>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="Colour" type="wd4:ColourType" minOccurs="0" maxOccurs="1"/>
			</xs:sequence>
		</xs:complexType>

	</xs:element>

	<xs:element name="Length">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.8.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="xs:string">
					<xs:attribute name="unit" type="xs:anySimpleType" use="required"/>
					<xs:attribute name="reference" type="xs:anySimpleType" use="optional"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>

	<xs:element name="Duration">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.9.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="wd4:DurationBaseType">
					<xs:attribute name="frameRate" type="xs:anySimpleType" use="optional"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>

	<xs:element name="Language">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.10.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:simpleContent>
				<xs:extension base="wd4:LanguageTagType">
					<xs:attribute name="usage" type="wd4:LanguageUsageType" use="optional"/>
				</xs:extension>
			</xs:simpleContent>
		</xs:complexType>
	</xs:element>

	<xs:element name="ProductionEvent">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.11.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="wd4:ProductionEventType">
					<xs:attribute name="sourceID" use="optional" type="xs:string"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>

	<xs:element name="PublicationEvent">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.12.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="PublicationType" type="wd4:PublicationTypeType" minOccurs="1"
					maxOccurs="1"/>
				<xs:element name="PublicationDate" type="wd4:TimespanType" minOccurs="0"
					maxOccurs="unbounded"/>
				<xs:element name="Region" type="wd4:RegionType" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="Place" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="EventName" type="wd4:TextWithLanguageAttrType" minOccurs="0"
					maxOccurs="unbounded"/>
				<xs:element name="ExhibitionOrganiser" type="xs:string" minOccurs="0"
					maxOccurs="unbounded"/>
				<xs:element name="Publisher" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element name="AccessConditions" type="xs:string" minOccurs="0"
					maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="sourceID" type="xs:anySimpleType" use="optional"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="Award">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.13.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Date" type="wd4:TimespanType" minOccurs="0" maxOccurs="1"/>
				<xs:element name="NominationOnly" type="xs:boolean" default="false" minOccurs="0"
					maxOccurs="1"/>
				<xs:element name="AwardName" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="Achievement" type="wd4:TextWithLanguageAttrType" minOccurs="0"
					maxOccurs="1"/>
				<xs:element name="EventRelationship" type="wd4:EventRelationshipType" minOccurs="0"
					maxOccurs="1"/>
				<xs:element ref="wd4:AgentRelationship" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="DecisionEvent">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.14.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="DecisionType" type="wd4:DecisionTypeType" minOccurs="1"
					maxOccurs="1"/>
				<xs:element name="DecisionDate" type="wd4:TimespanType" minOccurs="0" maxOccurs="1"/>
				<xs:element name="RegionalScope" type="wd4:RegionType" minOccurs="0" maxOccurs="1"/>
				<xs:element name="Agency" type="xs:string" minOccurs="0" maxOccurs="1"/>
				<xs:element name="FilingNumber" type="xs:anySimpleType" minOccurs="0" maxOccurs="1"/>
				<xs:element name="Verdict" type="wd4:TextWithLanguageAttrType" minOccurs="0"
					maxOccurs="1"/>
			</xs:sequence>
			<xs:attribute name="sourceID" type="xs:anySimpleType" use="optional"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="IPRRegistration">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.15.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="RegistrationDate" type="wd4:TimespanType" minOccurs="1"
					maxOccurs="1"/>
				<xs:element name="RegistrationAgency" type="xs:string" minOccurs="0" maxOccurs="1"/>
				<xs:element name="RegionalScope" type="wd4:RegionType" minOccurs="1"
					maxOccurs="unbounded"/>
				<xs:element name="NameOfApplicant" type="xs:string" minOccurs="0"
					maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<xs:element name="SubjectTerms">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.16.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Term" minOccurs="1" maxOccurs="unbounded">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="TermName" type="xs:string" minOccurs="1" maxOccurs="1"
							/>
						</xs:sequence>
						<xs:attribute name="termID" type="xs:anySimpleType" use="optional"/>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
			<xs:attribute name="scheme" type="xs:anySimpleType" use="required"/>
			<xs:attribute name="language" type="wd4:LanguageTagType" use="optional"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="AgentRelationship">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.17.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="wd4:AgentRelationshipType">
					<xs:attribute name="sourceID" use="optional" type="xs:string"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>

	<xs:element name="SubjectRelationship">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.18.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="RelationshipType" type="wd4:RelationshipTargetType" minOccurs="1"
					maxOccurs="1"/>
				<xs:element name="Target" type="xs:anySimpleType" minOccurs="1"
					maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="sourceID" type="xs:anySimpleType" use="optional"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="OtherRelationship">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.19.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="RelationshipType" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="Target" type="wd4:OtherRelationshipTargetType" minOccurs="1"
					maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="sourceID" type="xs:anySimpleType" use="optional"/>
		</xs:complexType>
	</xs:element>

	<xs:element name="ContentDescription">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.20.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="DescriptionType" type="xs:anySimpleType" minOccurs="1"
					maxOccurs="1"/>
				<xs:element name="DescriptionText" type="xs:string" minOccurs="1" maxOccurs="1"/>
				<xs:element name="Language" type="wd4:LanguageTagType" minOccurs="1" maxOccurs="1"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<!-- *********************** dependent elements, 2nd level *********************** -->

	<xs:element name="SourceName">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. Section 6.2.2, element "Source name"</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleType>
			<xs:restriction base="xs:string"/>
		</xs:simpleType>
	</xs:element>

	<xs:element name="Country">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. Section 6.5.2</p>
			</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:complexContent>
				<xs:extension base="wd4:RegionType"/>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>

	<xs:element name="RegionCode" type="wd4:CodedRegionType">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. Section 7.1.2, element "code"</p>
			</xs:documentation>
		</xs:annotation>
	</xs:element>

	<xs:element name="RegionName" type="wd4:PlainRegionType">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. Section 7.1.2, element "region name"</p>
			</xs:documentation>
		</xs:annotation>
	</xs:element>

<!-- 
        ************************** Types **************************** 
-->

	<xs:complexType name="IdentifierType">
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="scheme" type="xs:anyURI" use="required">
					<xs:annotation>
						<xs:documentation>
							<p>Redefinable.<br/> Possible types:
									<li>urn:ebu:metadata:cs:IdentifierTypeCodeCS:2006</li>
							</p>
						</xs:documentation>
					</xs:annotation>
				</xs:attribute>
				<xs:attribute name="numeric" type="xs:string" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:simpleType name="DescriptionLevelEnum">
		<xs:annotation>
			<xs:documentation>
				<p>Clause 4.1.1 specifies the following values: <ul>
						<li>a - Monographic component part</li>
						<li>b - Serial component part</li>
						<li>m - Monograph/Item</li>
						<li>s - Serial</li>
					</ul>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="a"/>
			<xs:enumeration value="b"/>
			<xs:enumeration value="m"/>
			<xs:enumeration value="s"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="RegionType">
		<xs:sequence maxOccurs="unbounded">
			<xs:choice>
				<xs:element ref="wd4:RegionCode" minOccurs="0" maxOccurs="unbounded"/>
				<xs:element ref="wd4:RegionName" minOccurs="0" maxOccurs="unbounded"/>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="CodedRegionType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/> any enumerated type with values from one or more of the
					recommended controlled vocabularies. </p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="scheme" type="wd4:RegionCodeSchemeEnum" use="optional"
					default="ISO 3166-2"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="PlainRegionType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>The name of a region other than a country. Names may 
					be taken from a controlled vocabulary (such as a gazetteer),
					in which case the "scheme" attribute should carry the name of the
					vocabulary.
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="wd4:TextWithLanguageAttrType">
				<xs:attribute name="scheme" type="wd4:RegionCodeSchemeEnum" fixed="none"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="TimespanType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>dateType from http://www.loc.gov/standards/mods/v3/mods-3-3.xsd</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="qualifier" type="wd4:TimeQualifierType" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="AgentRelationshipType">
		<xs:annotation>
			<xs:documentation>
				<p>This defines a hybrid type that can act both as a container for, and a reference
					to an authority data record. It can also accomodate Agent statements from
					non-normalised databases (i.e. where only a name is given).</p>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Activity" minOccurs="1" maxOccurs="unbounded" type="xs:string"/>
			<xs:element name="CreditRank" minOccurs="0" maxOccurs="1" type="xs:int"/>
			<xs:element name="AgentName" minOccurs="1" maxOccurs="unbounded" type="xs:string"/>
			<xs:element name="NameUsed" minOccurs="0" maxOccurs="1" type="xs:string"/>
			<xs:element name="AgentType" minOccurs="0" maxOccurs="1" type="xs:string"/>
			<xs:element name="AgentRef" minOccurs="0" maxOccurs="unbounded" type="xs:anyURI"/>
			<xs:element name="AgentInstance" minOccurs="0" maxOccurs="unbounded"
				type="wd4:AgentInstanceType"/>
			<xs:element name="ActivityDetail" minOccurs="0" maxOccurs="1" type="xs:string"/>
			<xs:element name="Character" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="AgentInstanceType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>AgentType from http://www.mpeg7.org/2001/MPEG-7_Schema</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="note" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="ProductionEventType">
		<xs:annotation>
			<xs:documentation>
				<p>Unfortunately, the type name collides with the name of the first sub-element as
					defined in EN 15907.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="ProductionEvent_Type" minOccurs="1" maxOccurs="1" type="xs:string"/>
			<xs:element name="Place" minOccurs="0" maxOccurs="unbounded" type="xs:string"/>
			<xs:element name="Region" minOccurs="0" maxOccurs="unbounded" type="wd4:RegionType"/>
			<xs:element name="Date" minOccurs="0" maxOccurs="unbounded" type="wd4:TimespanType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="TitleRelationshipType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>titleInfoType from http://www.loc.gov/standards/mods/v3/mods-3-3.xsd</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>

	<xs:simpleType name="ManifestationTypeType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/> Enumeration of Manifestation types </p>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string"/>
	</xs:simpleType>

	<xs:simpleType name="VariantTypeType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/> Enumeration of Variant types </p>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string"/>
	</xs:simpleType>

	<xs:complexType name="CarrierTypeType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>urn:ebu:metadata:cs:StorageTypeCodeCS:2006</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="AspectRatioType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p> Possible types:<br/>
					<li>urn:ebu:metadata:cs:VisualAspectRatioCS:2006</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="ColourType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>urn:ebu:metadata:cs:ColourCodeCS:2006</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="DurationBaseType">
<!-- 
        we do not derive this from xs:duration since it may be redefined with
        a string pattern, e.g. as in mpeg7
    -->
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.9.</p>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>durationType from http://www.mpeg7.org/2001/MPEG-7_Schema</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>

	<xs:simpleType name="LanguageUsageType">
		<xs:annotation>
			<xs:documentation>
				<p>Cf. clause 6.10.</p>
				<p>Redefinable.<br/> Possible types:
						<li>urn:ebu:metadata:cs:Language-AudioPurposeCS</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string"/>
	</xs:simpleType>

	<xs:complexType name="RelationshipTargetType">
		<xs:annotation>
			<xs:documentation>
				<p>Encoding for the target end of a relationship statement.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Identifier" type="wd4:IdentifierType" minOccurs="0" maxOccurs="1"/>
			<xs:element name="TargetName" type="xs:string" minOccurs="0" maxOccurs="1"/>
			<xs:element name="SectionID" type="wd4:SectionIDType" minOccurs="0"
				maxOccurs="unbounded"> </xs:element>
		</xs:sequence>
		<xs:attribute name="scheme" type="xs:anySimpleType" use="optional"/>
	</xs:complexType>

	<xs:complexType name="OtherRelationshipTargetType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>urn:ebu:metadata:cs:HowRelatedCS:2006</li>
					<li>urn:tva:metadata:cs:HowRelatedCS:2002</li>
					<li>relatedItemType from http://www.loc.gov/standards/mods/v3/mods-3-3.xsd</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Identifier" type="wd4:IdentifierType" minOccurs="0" maxOccurs="1"/>
			<xs:element name="TargetName" type="xs:string" minOccurs="0" maxOccurs="1"/>
			<xs:element name="SectionID" type="wd4:SectionIDType" minOccurs="0"
				maxOccurs="unbounded"> </xs:element>
		</xs:sequence>
		<xs:attribute name="scheme" type="xs:anySimpleType" use="optional"/>
	</xs:complexType>

	<xs:complexType name="CatalogueReferenceType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/> root element ('holdings') of
					http://www.loc.gov/standards/iso20775/ISOholdings_V1.0.xsd </p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="SectionIDType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/>
					<li>areaType with attribute BETYPE in
						http://www.loc.gov/standards/mets/mets.xsd</li>
					<li>VideoSegmentType in http://www.mpeg7.org/2001/MPEG-7_Schema</li>
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="DecisionTypeType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/> Enumeration of decision types for a given language. </p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="lang" type="wd4:LanguageTagType" use="optional"/>
				<xs:attribute name="scheme" type="xs:anySimpleType" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="PublicationTypeType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/> Enumeration of publication types for a given language. </p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="lang" type="wd4:LanguageTagType" use="optional"/>
				<xs:attribute name="scheme" type="xs:anySimpleType" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:complexType name="EventRelationshipType">
		<xs:annotation>
			<xs:documentation>
				<p>Redefinable.</p>
				<p>Possible types:<br/> Enumeration of event relationships for a given language.
				</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="lang" type="wd4:LanguageTagType" use="optional"/>
				<xs:attribute name="scheme" type="xs:anySimpleType" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<xs:simpleType name="LanguageTagType">
		<xs:restriction base="xs:string">
			<!-- note that this is the RFC 3066 pattern as specified in 
                http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/. 
                An xml:lang pattern based on RFC 4646 is apparently not (yet) available. -->
			<xs:pattern value="[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TimeQualifierType">
		<xs:annotation>
			<xs:documentation>
				<p>Qualifiers for relative or imprecise time points or time spans.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="after"/>
			<xs:enumeration value="before"/>
			<xs:enumeration value="between"/>
			<xs:enumeration value="circa"/>
			<xs:enumeration value="ended"/>
			<xs:enumeration value="started"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="RegionCodeSchemeEnum">
		<xs:annotation>
			<xs:documentation>
				<p>The list of encoding schemes for geographic regions.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="ISO 3166-2"/>
			<xs:enumeration value="AFNOR XP Z44"/>
			<xs:enumeration value="MARC"/>
			<xs:enumeration value="none"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="TextWithLanguageAttrType">
		<xs:annotation>
			<xs:documentation>
				<p>A type for strings with a language attribute.</p>
			</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="lang" type="wd4:LanguageTagType" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>

	<!-- 
		******************* Global attribute defintions ********************* 
	-->
	<xs:attribute name="langUsage">
		<xs:simpleType>
			<xs:union>
				<xs:simpleType>
					<xs:restriction base="xs:string"/>
				</xs:simpleType>
				<xs:simpleType>
					<xs:restriction base="wd4:LanguageUsageType"/>
				</xs:simpleType>
			</xs:union>
		</xs:simpleType>
	</xs:attribute>
	
</xs:schema>
