| <?xml version="1.0" encoding="UTF-8" standalone="no"?> |
| <xs:schema xmlns="http://purl.org/dc/elements/1.1/" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://purl.org/dc/elements/1.1/"> |
| |
| <xs:annotation> |
| <xs:documentation xml:lang="en"> |
| DCMES 1.1 XML Schema |
| XML Schema for http://purl.org/dc/elements/1.1/ namespace |
| |
| Created 2003-04-02 |
| |
| 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 15 DC elements from the |
| http://purl.org/dc/elements/1.1/ namespace. |
| |
| It defines a complexType SimpleLiteral which permits mixed content |
| and makes the xml:lang attribute available. It disallows child elements by |
| use of minOcccurs/maxOccurs. |
| |
| However, this complexType does permit the derivation of other complexTypes |
| which would permit child elements. |
| |
| All elements are declared as substitutable for the abstract element any, |
| which means that the default type for all elements is dc:SimpleLiteral. |
| |
| </xs:documentation> |
| |
| </xs:annotation> |
| |
| <xs:complexType name="SimpleLiteral"> |
| <xs:annotation> |
| <xs:documentation xml:lang="en"> |
| This is the default type for all of the DC elements. |
| It permits text content only with optional |
| xml:lang attribute. |
| Text is allowed because mixed="true", but sub-elements |
| are disallowed because minOccurs="0" and maxOccurs="0" |
| are on the xs:any tag. |
| |
| This complexType allows for restriction or extension permitting |
| child elements. |
| </xs:documentation> |
| </xs:annotation> |
| |
| <xs:complexContent mixed="true"> |
| <xs:restriction base="xs:anyType"> |
| <xs:sequence> |
| <xs:any maxOccurs="0" minOccurs="0" processContents="lax"/> |
| </xs:sequence> |
| <xs:attribute ref="xml:lang" use="optional"/> |
| </xs:restriction> |
| </xs:complexContent> |
| </xs:complexType> |
| |
| <xs:element abstract="true" name="any" type="SimpleLiteral"/> |
| |
| <xs:element name="title" substitutionGroup="any"/> |
| <xs:element name="creator" substitutionGroup="any"/> |
| <xs:element name="subject" substitutionGroup="any"/> |
| <xs:element name="description" substitutionGroup="any"/> |
| <xs:element name="publisher" substitutionGroup="any"/> |
| <xs:element name="contributor" substitutionGroup="any"/> |
| <xs:element name="date" substitutionGroup="any"/> |
| <xs:element name="type" substitutionGroup="any"/> |
| <xs:element name="format" substitutionGroup="any"/> |
| <xs:element name="identifier" substitutionGroup="any"/> |
| <xs:element name="source" substitutionGroup="any"/> |
| <xs:element name="language" substitutionGroup="any"/> |
| <xs:element name="relation" substitutionGroup="any"/> |
| <xs:element name="coverage" substitutionGroup="any"/> |
| <xs:element name="rights" substitutionGroup="any"/> |
| |
| <xs:group name="elementsGroup"> |
| <xs:annotation> |
| <xs:documentation xml:lang="en"> |
| This group is included as a convenience for schema authors |
| who need to refer to all the elements in the |
| http://purl.org/dc/elements/1.1/ namespace. |
| </xs:documentation> |
| </xs:annotation> |
| |
| <xs:sequence> |
| <xs:choice maxOccurs="unbounded" minOccurs="0"> |
| <xs:element ref="any"/> |
| </xs:choice> |
| </xs:sequence> |
| </xs:group> |
| |
| <xs:complexType name="elementContainer"> |
| <xs:annotation> |
| <xs:documentation xml:lang="en"> |
| This complexType is included as a convenience for schema authors who need to define a root |
| or container element for all of the DC elements. |
| </xs:documentation> |
| </xs:annotation> |
| |
| <xs:choice> |
| <xs:group ref="elementsGroup"/> |
| </xs:choice> |
| </xs:complexType> |
| |
| |
| </xs:schema> |