blob: 205bf48d9e64ccdb9015eec0ce93bc44242c8991 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:dc="http://purl.org/dc/elements/1.1/"
targetNamespace="http://purl.org/dc/terms/"
xmlns="http://purl.org/dc/terms/"
elementFormDefault="qualified"
attributeFormDefault="unqualified">
<xs:annotation>
<xs:documentation xml:lang="en">
Simplified XML Schema for http://purl.org/dc/terms/
Created 2007-06-28
Created by
Stian Soiland (ssoiland@cs.man.ac.uk)
This simplification removes SimpleLiteral references
so that it can be used with the simplified dc.xsd.
This makes the schema more usable for tools like
XMLBeans.
Based on
http://dublincore.org/schemas/xmls/qdc/2006/01/06/dcterms.xsd :
DCterms XML Schema
XML Schema for http://purl.org/dc/terms/ namespace
Created 2006-01-06
Created by
Tim Cole (t-cole3@uiuc.edu)
Tom Habing (thabing@uiuc.edu)
Jane Hunter (jane@dstc.edu.au)
Pete Johnston (p.johnston@ukoln.ac.uk),
Carl Lagoze (lagoze@cs.cornell.edu)
This schema declares XML elements for the DC elements and
DC element refinements from the http://purl.org/dc/terms/ namespace.
It reuses the complexType dc:SimpleLiteral, imported from the dc.xsd
schema, which permits simple element content, and makes the xml:lang
attribute available.
This complexType permits the derivation of other complexTypes
which would permit child elements.
DC elements are declared as substitutable for the abstract element dc:any, and
DC element refinements are defined as substitutable for the base elements
which they refine.
This means that the default type for all XML elements (i.e. all DC elements and
element refinements) is dc:SimpleLiteral.
Encoding schemes are defined as complexTypes which are restrictions
of the dc:SimpleLiteral complexType. These complexTypes restrict
values to an appropriates syntax or format using data typing,
regular expressions, or enumerated lists.
In order to specify one of these encodings an xsi:type attribute must
be used in the instance document.
Also, note that one shortcoming of this approach is that any type can be
applied to any of the elements or refinements. There is no convenient way
to restrict types to specific elements using this approach.
</xs:documentation>
</xs:annotation>
<xs:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="http://www.w3.org/2001/xml.xsd">
</xs:import>
<xs:import namespace="http://purl.org/dc/elements/1.1/"
schemaLocation="dc.xsd"/>
<xs:element name="alternative" substitutionGroup="dc:title"/>
<xs:element name="tableOfContents" substitutionGroup="dc:description"/>
<xs:element name="abstract" substitutionGroup="dc:description"/>
<xs:element name="created" substitutionGroup="dc:date"/>
<xs:element name="valid" substitutionGroup="dc:date"/>
<xs:element name="available" substitutionGroup="dc:date"/>
<xs:element name="issued" substitutionGroup="dc:date"/>
<xs:element name="modified" substitutionGroup="dc:date"/>
<xs:element name="dateAccepted" substitutionGroup="dc:date"/>
<xs:element name="dateCopyrighted" substitutionGroup="dc:date"/>
<xs:element name="dateSubmitted" substitutionGroup="dc:date"/>
<xs:element name="extent" substitutionGroup="dc:format"/>
<xs:element name="medium" substitutionGroup="dc:format"/>
<xs:element name="isVersionOf" substitutionGroup="dc:relation"/>
<xs:element name="hasVersion" substitutionGroup="dc:relation"/>
<xs:element name="isReplacedBy" substitutionGroup="dc:relation"/>
<xs:element name="replaces" substitutionGroup="dc:relation"/>
<xs:element name="isRequiredBy" substitutionGroup="dc:relation"/>
<xs:element name="requires" substitutionGroup="dc:relation"/>
<xs:element name="isPartOf" substitutionGroup="dc:relation"/>
<xs:element name="hasPart" substitutionGroup="dc:relation"/>
<xs:element name="isReferencedBy" substitutionGroup="dc:relation"/>
<xs:element name="references" substitutionGroup="dc:relation"/>
<xs:element name="isFormatOf" substitutionGroup="dc:relation"/>
<xs:element name="hasFormat" substitutionGroup="dc:relation"/>
<xs:element name="conformsTo" substitutionGroup="dc:relation"/>
<xs:element name="spatial" substitutionGroup="dc:coverage"/>
<xs:element name="temporal" substitutionGroup="dc:coverage"/>
<xs:element name="audience" substitutionGroup="dc:any"/>
<xs:element name="accrualMethod" substitutionGroup="dc:any"/>
<xs:element name="accrualPeriodicity" substitutionGroup="dc:any"/>
<xs:element name="accrualPolicy" substitutionGroup="dc:any"/>
<xs:element name="instructionalMethod" substitutionGroup="dc:any"/>
<xs:element name="provenance" substitutionGroup="dc:any"/>
<xs:element name="rightsHolder" substitutionGroup="dc:any"/>
<xs:element name="mediator" substitutionGroup="audience"/>
<xs:element name="educationLevel" substitutionGroup="audience"/>
<xs:element name="accessRights" substitutionGroup="dc:rights"/>
<xs:element name="license" substitutionGroup="dc:rights"/>
<xs:element name="bibliographicCitation" substitutionGroup="dc:identifier"/>
</xs:schema>