Expressing Qualified Dublin Core™ in RDF / XML

Creators: Stefan Kokkelink
Roland Schwänzl
Date Issued: 2002-05-15
Latest Version: https://dublincore.org/specifications/dublin-core/dcq-rdf-xml/
Release History: https://dublincore.org/specifications/dublin-core/dcq-rdf-xml/release_history/
Description: This document is most recent version.

Table of Contents

0 Introduction
1 Unqualified DC: The hedgehog model
2 Qualified DC
3 DC in collaboration with other vocabularies and DumbDown
4 Language Qualification
5 Appendix: Schema Drafts
6 Appendix: Summary DC Qualifiers
7 Acknowledgments
8 References

0 Introduction

In this document, Qualified Dublin Core™ ([DC15], [DCQual]) is encoded in terms of RDF, the Resource Description Framework as defined by the RDF Model & Syntax Specification RDFMS (XML namespace for RDF [RDFName]), a W3C recommendation. The RDF Schema specification 1.0 [RDFS] is also used (XML Namespace for RDFS [RDFSName]) which is a W3C candidate recommendation. Quite often the notion of a URI (Uniform Resource Identifier) is used which is defined by RFC 2396 [URI]. The notion of URI embraces URL and URN.

We also discuss collaboration of qualified DC with other vocabularies and the DumbDown algorithm. An explicit encoding is provided for classical classification systems and thesauri. Additionally a procedure is discussed to create encoding for more general schemes. One of the major changes with respect to the Guidance on expressing the Dublin Core™ within the RDF ([DM]) is the more systematic use of RDF Schema.

0.1 RDF(S) Basics

What is RDF The basic layer of RDF can best be understood as collection of simple sentences (assertions): They have a subject, a predicate and an object. A nice way to visualize the underlying structure is to draw nodes for subject and object and an arrow between them for the predicate. When another sentence is talking about the same subject for example, just glue the two pieces together at the subject node. Generally such geometric/semantic objects are called labeled directed graphs. The way RDF supports Gluing as basic feature is part of its potential.
Resources A resource is formally defined in RDF as a node that can be given a URI, but one is not forced to expose that choice to the outside world. RDF treats different URIs as different resources. All resources without explicitly assigned URIs are assumed to be different by RDF. A resource can be anything that has identity. Familiar examples include an electronic document, an image, a service (e.g., "today's weather report for Los Angeles"), and a collection of other resources. Not all resources are network "retrievable"; e.g., human beings, corporations, and bound books in a library can also be considered resources. [RFC 2396[URI], 1.1].
Literals A literal is an object that is used only at the end of a sentence (assertion). Like resources, RDF formally defines literals and any Unicode string or well formed XML can be used as a literal. If one declares an object as an XML literal, RDF will not attempt to interpret embedded markup.
Assertions
(Statements)
Taken together the notion of resource and the notion of literal, resources can be used as the subjects of assertions, but there are no limitations on the statement object.
Properties
(Predicates)
As the predicate in a sentence is supposed to carry meaning, which can be explained in more detail, RDF predicates are resources. The predicate might be viewed as a property of the subject resource, which has the object object as target.

0.2 RDF(S) Specifics (1)

Repeated Elements All DC Elements are repeatable. RDF allows to disambiguate the meaning of repetitions by four semantically different constructions. Qualified DC in RDF makes heavy use of these constructions. (Details will be given below).
"MetaMetaData" One often runs into the problem to explain a certain package of MetaData which has been issued by some authority. RDF solves this problem without introducing vocabulary (that would have to reinvented for each additional layer) but with a construction which allows the creation of first class resources from assertions. For this process RDF uses the word Reification.
RDF Transport RDF graphs can be sent on the web in XML form. As XML is essentially a tree, it does not encode RDF immediately. RDF M&S provides an XML syntax for the RDF graphs, which use the XML syntax as a lower layer. This behavior enables RDF to work with and in other XML languages. This behavior is explored elsewhere.

More specific RDF issues will be described later in this document.

Basic Observation: DC Elements correspond to RDF properties.

1 Unqualified DC: The hedgehog model

The following graph re-expresses unqualified DC in HTML in RDF in a schematic way. There is a tiny bit of extra information in the hedgehog model as opposed to HTML: all assertions made are about a fixed resource. (Throughout this document resources are indicated by a circle.) Content which is well-formed XML will be denoted with a square and addressed as literals.

A diagram of unqualified DC that looks like a hedge hog.

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description> <dc:creator>a</dc:creator> <dc:contributor>b</dc:contributor> <dc:publisher>c</dc:publisher> <dc:subject>d</dc:subject> <dc:description>e</dc:description> <dc:identifier>f</dc:identifier> <dc:relation>g</dc:relation> <dc:source>h</dc:source> <dc:rights>i</dc:rights> <dc:format>j</dc:format> <dc:type>k</dc:type> <dc:title>l</dc:title> <dc:date>m</dc:date> <dc:coverage>n</dc:coverage> <dc:language>o</dc:language> </rdf:Description> </rdf:RDF>

Note that all DC properties are optional and repeatable.

1.1 Example

A diagram showing that all DC properties are optional and repeatable.

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description> <dc:creator>Karl Mustermann</dc:creator> <dc:title>Algebra</dc:title> <dc:subject>mathematics</dc:subject> <dc:date>2000-01-23</dc:date> <dc:language>EN</dc:language> <dc:description>An introduction to algebra</dc:description> </rdf:Description> </rdf:RDF>

The graph given by the hedgehog model is unsatisfactory in various respects. In particular there is no way to provide structure for a resource discovery process.

2 Qualified DC

The DCMI has recognized two broad classes of qualifiers. We collect from the Qualifier Recommendation the information we need.

  • Element Refinement. These qualifiers make the meaning of an element narrower or more specific. A refined element shares the meaning of the unqualified element, but with a more restricted scope. A client that does not understand a specific element refinement term should be able to ignore the qualifier and treat the metadata value as if it were an unqualified (broader) element. The definitions of element refinement terms for qualifiers must be publicly available.
  • Encoding Scheme. These qualifiers identify schemes that aid in the interpretation of an element value. These schemes include controlled vocabularies and formal notations or parsing rules. A value expressed using an encoding scheme will thus be a token selected from a controlled vocabulary (e.g., a term from a classification system or set of subject headings) or a string formatted in accordance with a formal notation (e.g., "2000-01-01" as the standard expression of a date). If an encoding scheme is not understood by a client or agent, the value may still be useful to a human reader. The definitive description of an encoding scheme for qualifiers must be clearly identified and available for public use.
  • The normative reference for DC Qualifiers is at http://dublincore.org/specifications/dublin-core/dcmes-qualifiers. A convenience copy of it's summary is included here as (6 Appendix).

2.1 Element Refinement

The first issue for qualification is what DCMI calls Element refinement. RDFS provides a special property for this kind of semantic refinement:

2.1.1 RDF(S) Specifics (2)

rdfs:subPropertyOf The property rdfs:subPropertyOf is an instance of rdf:Property that is used to specify that one property is a specialization of another. A property may be a specialization of zero, one or more properties. If some property P2 is a subPropertyOf another more general property P1, and if a resource A has a P2 property with a value B, this implies that the resource A also has a P1 property with value B.

2.1.2 Example

A diagram showing element refinement.

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/">  
<rdf:Description> <dcterms:abstract>The paper resolves the issues of the data model draft. </dcterms:abstract> </rdf:Description> <rdf:Description rdf:about="http://purl.org/dc/terms/abstract"> <rdfs:subPropertyOf rdf:resource="http://purl.org/dc/elements/1.1/description"/> </rdf:Description> </rdf:RDF>

Here three new features of RDF are being used:

  1. We use the DC qualifier vocabulary
  2. We declare in a machine-understandable way that the qualifier dcterms:abstract refines dc:description and for the first time
  3. We use another resource (http://purl.org/dc/elements/1.1/description) as the target of an assertion rather than just a literal in earlier examples.

2.1.3 Remark

Other communities can also use rdfs:subPropertyOf to declare refinements of DCMI Elements in a transparent way. Note that rdfs:subPropertyOf statements can be repeated and nested.

The declaration of dcterms:abstract as rdfs:subPropertyOf of dc:description in the example above ensures that for every dcterms:abstract arc a corresponding dc:description arc (with the same subject and object) is implicitly contained in the RDF.

2.1.4

DC Model A diagram of a DC model.

An earlier version of the data model draft ([DM]) did not make use of RDFS and instead introduced an ad-hoc work around, which was cumbersome if one wanted to refine for instance the notion of dcterms:abstract further.

Basically this is all that one has to say about element refinement. The flexible notion of subProperty frees us from the HTML dot notation. It gives room for transparent encoding of partial orderings on refinements of given elements.

A draft for an RDF Schema Declaration for the element refinements specified in the DC Qualifiers recommendation is given in [DCQS].

2.1.5 Remark

There are relations between parts of RDF Vocabulary and DC Vocabulary which can be seen by reviewing the definitions.

2.1.5.1 RDF(S) Specifics (3)

rdf:value Identifies the principal value (usually a string) of a property.
rdfs:label Provides a human-readable version of a resource name. The target of an rdfs:label arc must be a literal.
rdfs:isDefinedBy Indicates a resource containing and defining the subject resource. The target of an rdfs:isDefinedBy arc must be a Resource.
rdfs:seeAlso Indicates a resource that provides information about the subject resource. The target of an rdfs:seeAlso arc must be a Resource.
rdfs:Comment This is used to provide a human-readable description of a resource.
rdfs:Class The concept of Class
rdf:type Identifies the Class of a resource. The target of an rdf:type arc must be an instance of rdfs:Class.

2.1.5.2 Dublin Core™ Properties

dc:title A name given to the resource.
dc:relation A reference to a related resource.
dc:description An account of the content of the resource.
dc:type The nature or genre of the content of the resource.

2.1.5.3

Note that rdf:value is not caught by an enveloping DC property. We will make active use of rdf:value in section 2.3. Relations between the two vocabularies are made explicit in the DC Terms RDF Schema Draft in [DCQS]. These relations are also relevant for the DC DumbDown Algorithm defined below in section 3. In the following table the relations are given in a form more convenient for human readers.

2.1.5.4

-- rdfs:subPropertyOf -->
rdfs:label dc:title
rdf:type dc:type
rdfs:isDefinedBy dc:relation
rdfs:seeAlso dc:relation
rdfs:comment dc:description

2.1.5.5

Note that the direction of the rdfs:subPropertyOf relation is due to some additional constraints which are specified for the RDF(S) properties.

For example, although the definitions of rdfs:label and dc:title are basically equivalent, the requirement for rdfs:label to have a literal as target enforces the definition of rdfs:label as a subPropertyOf dc:title and not vice versa.

2.2 Repeated Properties and "MetaMetaData"

All Dublin Core™ Elements are repeatable. Repeating element E has as basic meaning:

The objects which are values of the element E all are related to the subject under description by the relation element E.

In RDF, properties can be repeated: all the properties are asserted (or logically ANDed).

Sometimes one wants to explicitly say something slightly different: the objects fulfill the relation E as a group , either in a particular order or in any order or as alternatives with respect to E.

RDF allows the marking of such relationships by creating new resources from the given objects in three different ways, called Bag, Seq and Alt construction.

2.2.1 Repeating Properties - AND

AND A diagram showing an RDF AND construction
The entities AAAAA and BBBBB are both primarily responsible for the making of the concept known as the Wheel.
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
            xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
            xmlns:dc="http://purl.org/dc/elements/1.1/"
            xmlns:dcterms="http://purl.org/dc/terms/">   
<rdfs:Class rdfs:label="Wheel">
 <dc:creator>AAAAA</dc:creator>
 <dc:creator>BBBBB</dc:creator>
</rdfs:Class>
</rdf:RDF>

The three constructions Bag, Seq and Alt are generally referred to as Containers in RDF. They relate groups of objects. Each Container is doing that in a very specific way. Their use has potential to structure information.

2.2.2 Bag

Bag realizes semantically the notion of an unordered list. More specifically of a list, with ordering explicitly declared as irrelevant. This notion for instance matches the meaning of Co-authorship in Mathematics: In Math co-authors are given as a bag, whose objects are resources of type Person. This way if a Bag of Persons was used, it would avoid the introduction of new vocabulary to express the relationship.

Such a Bag may or may not have a public URI. The same applies to resources of type Person. In the example below the bag construction is used with otherwise unqualified Dublin Core™. Even in this form the meaning differs from the previous AND Example. Jon Doe and Karin Mustermann together formed an entity, which as such represents a creator. The order in the record is an artifact of the coding and nothing else.

Bag A diagram showing an RDF Bag construction
Jon Doe and Karin Mustermann joint their forces to create a gadget with title Healthy Meat
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
            xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
            xmlns:dc="http://purl.org/dc/elements/1.1/"
            xmlns:dcterms="http://purl.org/dc/terms/">   
<rdf:Description dc:title="Healthy Meat">
 <dc:creator>
   <rdf:Bag>
     <rdf:li>Jon Doe</rdf:li>
     <rdf:li>Karin Mustermann</rdf:li>
   </rdf:Bag>
 </dc:creator>
</rdf:Description>
</rdf:RDF>

2.2.3 Seq

Some academic circles expect some meaning from the ordering of author names. This can be modeled with the Seq construction. Seq is a sequence, with the ordering explicitly declared as relevant. Both Seq and Bag require that all their contained objects are significant.

Below we describe a use of Seq.

Seq A diagram showing an RDF Seq construction
Karin Mustermann and John Doe jointly contributed to a gadget. The anti-lexicographic order has been chosen deliberately.
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:dcterms="http://purl.org/dc/terms/">
<rdf:Description>
<dc:contributor>   
<rdf:Seq>
        <rdf:li>Karin Mustermann Inc.</rdf:li>
        <rdf:li>John Doe Inc.</rdf:li>
</rdf:Seq>
</dc:contributor>
</rdf:Description>
</rdf:RDF>

2.2.4 Alt

Alt
(Relative Case)
A diagram showing a (relative) RDF Alt construction
The resource #17 in this document is identified by either one of the given URI's. You only need to retrieve one of them.
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:dcterms="http://purl.org/dc/terms/">
<rdf:Description rdf:ID="17">
   <dc:identifier>   
    <rdf:Alt>
     <rdf:li rdf:resource="http://dublincore.org/"/>
     <rdf:li rdf:resource="http://purl.org/dc/"/>
    </rdf:Alt>
   </dc:identifier>
</rdf:Description>
</rdf:RDF>
Alt
(Absolute Case)
A diagram showing an (absolute) RDF Alt construction
For all assertions which have as object the resource #18, the cited URI's have to be viewed as equivalent. It always suffices to look at only one of them.
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
        xmlns:dcterms="http://purl.org/dc/terms/">              
  <rdf:Alt rdf:ID="18">
   <rdf:li rdf:resource="http://dublincore.org/"/>
   <rdf:li rdf:resource="http://purl.org/dc/"/>
  </rdf:Alt>
</rdf:RDF>

Another typical application of Alt is as lists of synonyms for a chosen descriptor. As Alt gives a slight precedence to the first given value, this is exactly what happens with synonyms: They form an equivalence class with a chosen representative.

2.2.5 Warning

The RDF Container Alt must not be confused with the refinement alternative of the DC Element title.

2.2.6 Reification

One often wants to express some kind of authority on a given assertion. RDF here offers a method called Reification. Despite it's awkward name and seemingly complicated representation as a graph, Reification is hardly more than providing a resource for an assertion, one can reference. A reification unambiguously identifies the assertion, it provides a resource for. To that objective explicitly subject, object and predicate of the assertion are given in the graph representation.

The general method of Reification avoids the introduction of particular vocabulary for ``MetaMetaData'', but makes the Dublin Core™ Vocabulary available in that situation also.

Reification A diagram showing a RDF reification
The given abstract has been provided by the author John Doe of http://www.potato.org. John Doe claims his work as a highly original introduction to potato theory.
<?xml version="1.0"?>
<rdf:RDF 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"    
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:dcterms="http://purl.org/dc/terms/">
  <rdf:Description rdf:about="http://www.potato.org/">
    <dcterms:abstract rdf:ID="19">
      An excellent introduction to potato theory is 
      provided by this highly original paper
    </dcterms:abstract>
    <dc:creator>John Doe</dc:creator>
  </rdf:Description>
  <rdf:Description rdf:about="#19">
    <dc:creator>John Doe</dc:creator>
  </rdf:Description>
</rdf:RDF>
## 2.3 Encoding Schemes

One may view Bag, Seq and Alt as the first important examples of encoding schemes, which simply come for free with RDF. These structures in RDF can be repeated and nested and therefore are of great potential in encoding structured MetaData.

But there are simpler structures, which one may think about first.

Perhaps the simplest case of value encoding (above the basic character representation rules which come from using XML for RDF transport) is that of a classic subject classification scheme.

Typically here we have a code - some obscure string - and a caption, which is (supposed to be) human understandable.

This sounds like providing a value/label pair.

In the case where there is a URI, specifying the object we want to use in it's relation with the scheme, we could make an rdfs:isDefinedBy arc pointing to that URI. Such a triple of RDF(S) properties hanging off a resource is what one may call:

2.3.1 Poor Man's Structured Values

A diagram showing a Poor Man's structured values construction

<?xml version="1.0" ?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/">
<Description>
<dc:subject>
<Description>
<value>19D10</value>
<rdfs:label>Algebraic K-Theory of spaces</rdfs:label>
<rdfs:isDefinedBy rdf:resource="URI2"/>
</Description>
</dc:subject>
</Description>
</RDF>

2.3.2 Remark: value/label model

If there is some RDF Class given to identify the Scheme, we might know how to process the value and also how to take advantage of a partial order within the scheme itself. If the Class definition has a machine understandable form of how to process the value, one can dispense with the rdfs:isDefinedBy on the resource itself, but in general this is not very likely to happen. The Thesaurus - like case was already briefly discussed in connection with the Alt container. Please observe, that rdfs:label by definition must target literal content and cannot be processed by RDF any further.

A diagram indicating RDF Poor Man's structured values (value/label model) #### 2.3.3 Remark

Note that it is NOT required that rdf:value arcs target literals. Such requirement would restrict RDF's potential for MetaData in an unreasonable way.

It can become necessary to repeat rdf:value arcs and rdfs:label arcs and also introduce new properties and nodes until following the arcs, one gets to strings (or resources) that can be processed.

A diagram indicating iteration of Poor Man's structured values

2.3.4 Iterated rdf:value and rdfs:label model

DC Model The complete set of instructions collected on the way should suffice to correctly process the resulting value.

DCMI may recommend the use of properties additional to the core and additional to rdf:type, rdfs:isDefinedBy to aid processing for encoding of objects relevant to its focus.

It is recommended at most one rdf:value (or subProperty thereof) emanate from a resource in a qualified DC record. Declaring some property as subProperty of a DC property is a legitimate processing hint. There is no restriction on the number (including zero) of label arcs in a qualified DC record.

2.3.5 Remark

As long as it is possible to embed iterated poor man's structured values in the sense of the DC Model section, a record can be viewed as qualified DC compliant and can expect a useful interpretation at least on the unqualified DC level.

2.3.6 Remark

Some properties one might want to use may not be subordinated to any DC Element at all in their definition, but if in addition a DC Element or one of its refinements applies (i.e. there is semantic overlap) then RDF's AND construction can be used and one should provide that DC arc additionally. This will be considered as a legitimate processing hint also. When using core elements in a poor man's structured values (section 2.3.4) carefully observe the notes 2.1.5.4-2.1.5.5. If a scheme assigns it's values in the form of URIs, a node with such a URI should be used instead of the anonymous node and value part of the poor man's structured values.

2.3.7 Remark

The notion of Microprofile seems useful in this context. One is tempted to construct Application Profiles from such micro structures which in themselves rest on primitive Data - Types.

Some work in this direction is documented at CARMEN AP6.

Such a procedure is in particular advisable in the area where MetaData meets Data. This for instance happens in the notations for dates and locations. The work done on data typing in XML - Schema appears relevant. An integration of XML Schema data types with RDF in general is proposed in [DAML+OIL]. It fits with value/label model and is basically compliant with the cooperation of Dublin Core™ with other vocabularies as discussed in section 3.

DCMI recommended Schemes for dates and locations will be dealt with in a separate document.

2.3.8 URI Identifier Scheme

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Relation Is Version Of
Has Version
Is Replaced By
Replaces
Is Required By
Requires
Is Part Of
Has Part
Is Referenced By
References
Is Format Of
Has Format
URI
Identifier - URI
Source - URI

[RDFMS] gives the URI scheme a privileged role with respect to resources. There is no particular processing instruction required once a URI is given. We simply can call a resource by the rdf:resource construction. The usage of rdf:resource is defined in section 6 of [RDFMS]. A typical example is the following:

2.3.8.1 Example

A diagram showing dc:identifier pointing to a URI denoted resource

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description> <dc:identifier rdf:resource="http://www.myorg"/> </rdf:Description> </rdf:RDF>

In case one will not use URI as labeling scheme for resources or one is not satisfied with a simple string without further processing instructions,

A diagram showing dc:identifier pointing to a character string

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description> <dc:identifier>1234564TGRF</dc:identifier> </rdf:Description> </rdf:RDF>

then one should proceed as described in general at the beginning of this paragraph to construct a DC compliant RDF encoding.

2.3.9 Subject Schemes

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Subject - LCSH
MeSH
DDC
LCC
UDC

For each DCMI recommended encoding scheme an RDFS class is defined by the DC Terms RDF Schema.

2.3.9.1 Example

A diagram showing an RDF declaration of MESH as a subject scheme

The following RDF/XML is a fragment from the DC Terms RDF Schema.

< -- Class definition -- >
<rdfs:Class rdf:about="http://purl.org/dc/terms/MESH">
  <rdfs:label>MeSH</rdfs:label>
  <rdfs:comment>Instances of this class are Medical Subject Headings 
  and must provide an rdf:value (with content the code) 
  and should provide an rdfs:label arc (with content the caption).
  </rdfs:comment>
  <rdf:type rdf:resource = "http://purl.org/dc/terms/SubjectScheme" />
  <rdfs:isDefinedBy rdf:resource="http://purl.org/dc/terms/" />
</rdfs:Class>

2.3.9.2 Example: Usage of a MeSH object as subject.

A diagram showing the usage of a MeSH object as subject

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/">
<rdf:Description> <dc:subject> <dcterms:MESH> <rdf:value>D08.586.682.075.400</rdf:value> <rdfs:label>Formate Dehydrogenase</rdfs:label> </dcterms:MESH> </dc:subject> </rdf:Description> </rdf:RDF>

2.3.10 Language Schemes

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Language - RFC1766
ISO639-2

For each DCMI recommended encoding scheme an RDFS class is defined by DC Terms RDF Schema.

2.3.10.1 Example

A diagram showing an RDF declaration of RFC1766 as language scheme

The following RDF/XML is a fragment from the DC Terms RDF Schema:

<rdfs:Class rdf:about="http://purl.org/dc/terms/RFC1766">
  <rdfs:label>RFC1766</rdfs:label>
  <rdfs:comment>Internet RFC 1766 'Tags for the identification of Language' 
   specifies a two letter code taken from ISO 639, followed optionally by a 
        two letter country code taken from ISO 3166.</rdfs:comment>
  <rdf:type rdf:resource = "http://purl.org/dc/terms/LanguageScheme" />
  <rdfs:seeAlso rdf:resource = "http://www.ietf.org/rfc/rfc1766.txt" />
  <rdfs:isDefinedBy rdf:resource="http://purl.org/dc/terms/" />
</rdfs:Class>

2.3.10.2 Example: Usage of a RFC1766 object as language.

A diagram showing the usage of a RFC1766 object as language

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/">
<rdf:Description> <dc:language> <dcterms:RFC1766> <rdf:value>EN</rdf:value> <rdfs:label>English</rdfs:label> </dcterms:RFC1766> </dc:language> </rdf:Description> </rdf:RDF>

2.3.11 Format Schemes

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Format   IMT
Extent -
Medium  

For each DCMI recommended encoding scheme an RDFS class is defined by DC Terms RDF Schema.

2.3.11.1 Example

A diagram showing an RDF declaration of IMT as format scheme

The following RDF/XML is a fragment from the DC Terms RDF Schema:

<rdfs:Class rdf:about="http://purl.org/dc/terms/IMT">
  <rdfs:label>IMT</rdfs:label>
  <rdfs:comment>
    Instances of this class are the Internet media types
  </rdfs:comment>
  <rdf:type rdf:resource="http://purl.org/dc/terms/FormatScheme"/>
  <rdfs:isDefinedBy rdf:resource="http://purl.org/dc/terms/"/>
  <rdfs:seeAlso 
     rdf:resource="http://www.isi.edu/in-notes/iana/assignments/media-types/media-types"/>
</rdfs:Class>

2.3.11.2 Example: Usage of an IMT object as format.

A diagram of the usage of an IMT object as format

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:dc="http://prul.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/">
<rdf:Description> <dc:format> <dcterms:IMT> <rdf:value>text/html</rdf:value> <rdfs:label>HTML</rdfs:label> </dcterms:IMT> </dc:format> </rdf:Description> </rdf:RDF>

2.3.12 Type Schemes

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Type - DCMI Type Vocabulary

For each approved term given by the DCMI Type Vocabulary a RDFS class is defined in the RDF Schema for DCMI Type.

2.3.12.1 Example

A diagram showing an RDF declaration of Image in the DCMI type vocabulary

The following RDF/XML is a fragment from the DC Terms/DCMI Types RDF Schema:

<!-- class of type classes -->

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
            xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
            xmlns:dc="http://purl.org/dc/elements/1.1/"
            xmlns:dcterms="http://purl.org/dc/terms/"
            xmlns:dctype="http://purl.org/dc/dcmitype/">

<rdfs:Class rdf:about="http://purl.org/dc/dcterms/DCMIType">
  <rdfs:label>DCMI Type Vocabulary</rdfs:label>
  <rdfs:comment>A list of types used to categorize the nature or 
   genre of the content of the resource.</rdfs:comment>
  <rdf:type 
     rdf:resource="http://purl.org/dc/terms/TypeScheme"/>
  <rdfs:seeAlso
     rdf:resource="http://purl.org/dc/dcmitype/"/>
  <rdfs:seeAlso 
     rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:isDefinedBy 
     rdf:resource="http://purl.org/dc/dcterms/"/>
</rdfs:Class>

<!-- Example: Image -->

<rdfs:Class rdf:about="http://purl.org/dc/dcmitype/Image">
  <rdfs:label>Image</rdfs:label>
  <rdfs:isDefinedBy 
      rdf:resource="http://purl.org/dc/dcmitype/"/>
  <rdfs:seeAlso 
      rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    An image is a primarily symbolic visual representation other than text. 
    For example - images and photographs of physical objects, paintings, 
    prints, drawings, other images and graphics, animations and moving 
    pictures, film, diagrams, maps, musical notation. Note that image may 
    include both electronic and physical representations.
  </rdfs:comment>
  <rdf:type rdf:resource="http://purl.org/dc/dcterms/DCMIType"/>
</rdfs:Class>
</rdf:RDF>

2.3.12.2 Example: Usage of Image as type.

A diagram indicating the usage of Image as type

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dctype="http://purl.org/dc/dcmitype/">
<dctype:Image> <dc:creator>Carl</dc:creator> </dctype:Image> </rdf:RDF>

2.3.13 Date Schemes

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Date Created
Valid
Available
Issued
Modified
DCMI Period
W3C-DTF

For each DCMI recommended encoding scheme an RDFS class is defined by DC Terms RDF Schema.

2.3.13.1 Example

A diagram showing an RDF declaration of W3CDTF as date encoding scheme

The following RDF/XML is a fragment from the DC Terms RDF Schema:

<rdfs:Class rdf:about="http://purl.org/dc/terms/W3CDTF">
  <rdfs:label>W3C-DTF</rdfs:label>
  <rdfs:comment>Instances of this class are dates and times encoded with 
  the W3C Encoding rules - a profile based on ISO8601 </rdfs:comment>
  <rdf:type rdf:resource = "http://purl.org/dc/terms/DateScheme" />
  <rdfs:seeAlso rdf:resource = "http://www.w3.org/TR/NOTE-datetime" />
  <rdfs:isDefinedBy rdf:resource="http://purl.org/dc/terms/" /> 
</rdfs:Class>

2.3.13.2 Example: Usage of a W3C-DTF object as date.

A diagram showing the usage of a W3C-DTF object as date.

The following RDF/XML is a fragment from the DC Terms RDF Schema:

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:dc="http://purl.org/dc/elements/1.1/"
         xmlns:dcterms="http://purl.org/dc/terms/">   
<rdf:Description>
 <dc:date>
   <dcterms:W3CDTF>
     <rdf:value>1999-09-25T14:20+10:00</rdf:value>
   </dcterms:W3CDTF>
 </dc:date> 
</rdf:Description>
</rdf:RDF>

2.3.14 Coverage Schemes

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Coverage Spatial
DCMI Point
ISO 3166
DCMI Box
TGN
Temporal DCMI Period
W3C-DTF

For each DCMI recommended encoding scheme an RDFS class is defined by DC Terms RDF Schema.

2.3.14.1 Example

A diagram showing an RDF declaration of Point as Coverage encoding scheme

The following RDF/XML is a fragment from the DC Terms RDF Schema:

<rdfs:Class rdf:about="http://purl.org/dc/terms/Point">
  <rdfs:label>DCMI Point</rdfs:label>
  <rdfs:comment>
     DCMI Point is used for identifying a point in space using 
     its geographic coordinates
  </rdfs:comment>
  <rdf:type 
     rdf:resource="http://purl.org/dc/terms/SpatialScheme"/>
  <rdfs:seeAlso 
     rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-point/2000-07-28/"/>
  <rdfs:isDefinedBy 
     rdf:resource="http://purl.org/dc/terms/"/> 
</rdfs:Class>

2.3.14.2 Example using DCMI Point as coverage.

A Diagram showing the usage of a DCMI Point object as coverage

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/">   
<rdf:Description> <dc:coverage> <dcterms:Point> <rdfs:label>Perth</rdfs:label> <rdf:value> name=Perth, W.A.; east=115.85717; north=-31.95301 </rdf:value> </dcterms:Point> </dc:coverage> </rdf:Description> </rdf:RDF>

3 DC in collaboration with other vocabularies and DumbDown

The DC has proven to be able to interact with other vocabularies and community defined schemes. The following more or less well known example shows how it works with vCard as suggested in [VCARD]. In view of the DumbDown algorithm which we will discuss in section 3.2, one only has to give a useful rdfs:label to follow. This is particularly easy with vCard for it provides the full name of the person as a literal value.

3.1 Example

3.1.1 Using vCard with Dublin Core™

A diagram showing the use of vCard with Dublin Core™

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xmlns:vCard = "http://www.w3.org/2001/vcard-rdf/3.0#">
<rdf:Description>
<dc:creator>           
<rdf:Description rdf:about = "http://qqqfoo.com/staff/corky" > <rdfs:label> Corky Crystal </rdfs:label> <vCard:FN> Corky Crystal </vCard:FN> <vCard:N rdf:parseType="Resource"> <vCard:Family> Crystal </vCard:Family> <vCard:Given> Corky </vCard:Given> <vCard:Other> Jacky </vCard:Other> <vCard:Prefix> Dr </vCard:Prefix> </vCard:N> <vCard:BDAY> 1980-01-01 </vCard:BDAY> </rdf:Description> </dc:creator> </rdf:Description> </rdf:RDF>

3.1.2 Math-Net

This is a more elaborate example that uses some vocabulary from Math-Net Schemes in addition to the vCard vocabulary. See section 3.2 how this metadata description is mapped to unqualified Dublin Core™ by the DumbDown algorithm.

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE rdf:RDF [
  <!ENTITY mnpns 'http://www.iwi-iuk.org/material/RDF/1.1/Schema/Property/mnp#'>
]>

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:rdfs="http://www.w3.org/1999/02/22-rdf-schema-ns#"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:dcterms="http://purl.org/dc/terms/"
 xmlns:mnp="&mnpns;"
 xmlns:mn="http://www.iwi-iuk.org/material/RDF/1.1/Schema/Class/mn#"
 xmlns:vCard="http://www.w3.org/2001/vcard-rdf/3.0#">

<!-- 
 subPropertyOf relations 
 encoded in the .../mnp# Namespace
-->

<rdf:Description 
    rdf:about="&mnpns;primarySubject">
  <rdfs:subPropertyOf 
    rdf:resource="http://purl.org/dc/elements/1.1/subject"/>
</rdf:Description>
<rdf:Description 
    rdf:about="&mnpns;secondarySubject">
  <rdfs:subPropertyOf 
    rdf:resource="http://purl.org/dc/elements/1.1/subject"/>
</rdf:Description>

<!-- An example file -->

<mn:Preprint>
 <dc:title>Algebra</dc:title>
 
 <dc:creator>
  <rdf:Bag>
   <rdf:li>
    <mn:Person>
     <vCard:FN>John Smith</vCard:FN>
     <rdfs:label>John Smith</rdfs:label>
     <vCard:EMAIL>[email protected]</vCard:EMAIL>
     <vCard:N rdf:parseType="Resource">
      <vCard:Family>Smith</vCard:Family>
      <vCard:Given>John</vCard:Given>
     </vCard:N>
    </mn:Person>
   </rdf:li>
  </rdf:Bag>
 </dc:creator>
 
 <dcterms:created>   
  <dcterms:W3CDTF>
     <rdf:value>1999-09-25</rdf:value>
     <rdfs:label>25 September 1999</rdfs:label>
  </dcterms:W3CDTF>
 </dcterms:created>
 
 <dc:identifier>
  <rdf:Alt>
    <rdf:li rdf:resource="http://www.math.org/doc.ps"/>
         <rdf:li rdf:resource="http://www.math.org/doc.html"/>
  </rdf:Alt>
 </dc:identifier>

 <mnp:primarySubject>
  <mn:MSC2000>
    <rdf:value>15-06</rdf:value>
    <rdfs:label>Proceedings, conferences, collections, etc. </rdfs:label>
  </mn:MSC2000>
 </mnp:primarySubject>

 <mnp:secondarySubject>
  <mn:MSC2000>
    <rdf:value>15A12</rdf:value>
    <rdfs:label>Conditioning of matrices</rdfs:label>
  </mn:MSC2000>
 </mnp:secondarySubject>

 <dcterms:abstract>An introduction to algebra</dcterms:abstract>
 
 <dc:subject>algebra, function, relation</dc:subject>

</mn:Preprint>

<!-- Formats -->

<rdf:Description rdf:about="http://www.math.org/doc.ps">
  <dc:format>
    <dcterms:IMT rdf:value="application/PostScript"
             rdfs:label="Postscript Document">
    </dcterms:IMT>
  </dc:format>
</rdf:Description>

<rdf:Description rdf:about="http://www.math.org/doc.html">
  <dc:format>
    <dcterms:IMT rdf:value="text/html"
             rdfs:label="HTML Document">
    </dcterms:IMT>
  </dc:format>
</rdf:Description>

<!-- /Formats -->

</rdf:RDF>

3.2 DumbDown Algorithm

The goal of a DumbDown algorithm is to provide a useful approximation of RDF graphs extending qualified DC with other vocabularies by a set of unqualified DC hedgehogs. The algorithm is described below and extends the version originally given in [DC].

The algorithm gives preference to the linking of Dublin Core™ with other vocabulary by means of rdfs:label, rdf:value, (dc:title) and URI.

Particular emphasis is given to close approximation of the RDF/S concepts.

3.2.1 An Extended DumbDown Algorithm

This algorithm creates from an arbitrary RDF graph containing Dublin Core™ elements (or subPropertyOf Dublin Core™ elements) a (new) RDF graph whose arcs are all given by the 15 Dublin Core™ elements pointing to an 'appropriate literal'.

Suppose we have a property X which has been recognized as a subProperty of a DC15 element Y or is itself a DC15 element and

R --- X ---> N

is contained in the given RDF graph. (In particular the subPropertyOf relations mentioned in section 2.1.5 are recognized.)

The function dumbDownOf( Y ,N) described below returns a set n1,...,nk of 'appropriate literals' for this property. For each returned value ni an arc

R --- Y --> ni

starts at the resource R in the result graph.

dumbDownOf(dc:property,N):

  1. if the Node N is a literal we have unqualified Dublin Core™. Return the
     literal.
  2. else the Node N is a resource:
  
    2.1 if dc:property is in {dc:identifier,dc:source,dc:relation}
    
    /* In this case the algorithm should preferably calculate a URI */
    
    2.1.1 if N is a Bag or Sequence: return the literal that is
          calculated by dumbDown_Bag_Seq(dc:property,N).
    2.1.2 if N is an Alt: return the literals that are
          calculated by dumbDown_Alt(dc:property,N).
    2.1.3 if N is given a fully expanded URI return the string (literal) 
          given by the URI.
    2.1.4 if N has rdfs:label arcs: return the set of literals that are
          target of those arcs.
    2.1.5 if N has rdf:value arcs: return the union of sets of literals      
          calculated by dumbDown(dc:property,V) for every Node V that
          is target of an rdf:value arc.
    2.1.6 else: return empty set.
    
    2.2 else:
    
    2.2.1 if N has rdfs:label arcs: return the set of literals that are
          target of those arcs.
    2.2.2 if N has rdf:value arcs: return the union of sets of literals      
          calculated by dumbDown(dc:property,V) for every Node V that
          is target of an rdf:value arc.
    2.2.3 if N is a Bag or Sequence: return the literal that is
          calculated by dumbDown_Bag_Seq(dc:property,N).
    2.2.4 if N is an Alt: return the literals that are
          calculated by dumbDown_Alt(dc:property,N).
    2.2.5 if N has dc:title arcs:return the union of sets of literals      
          calculated by dumbDown(dc:property,V) for every Node V that
          is target of a dc:title arc.   
    2.2.6 if N is given a fully expanded URI return the string (literal) 
          given by the URI.
    2.2.7 else: return empty set.
    
Subroutines:

dumbDown_Bag_Seq(dc:property,N):
    Let N_1,...,N_n denote the elements of the container N. 
    Join the strings (literals) calculated by dumbDownOf(dc:property,N_i)
    (for all elements) separated by "; ". Return *the* constructed string.

dumbDown_Alt(dc:property,N):
    Let N_1,...,N_n denote the elements of the container N. 
    Return the set of literals calculated by dumbDownOf(dc:property,N_i)
    (for all elements).

This algorithm terminates.

3.2.2 Garbage collection

The resulting graph constructed by the DumbDown algorithm described in section 3.2.1 may contain some useless information in terms of isolated subgraphs of the following form:

A diagram indicating garbage collection in the DumbDown algorithm

It is recommended to delete isolated arcs that start at an anonymous resource, are labeled with dc:type and have an rdfs:Class of the RDF Model and Syntax or the RDF Schema specification as target.

There might be further application-specific requirements for refining the resulting graph of the DumbDown algorithm.

3.2.3 Demonstration of DumbDown

The [CARA] based online Demo [DDD] already has 'recognized' the subPropertyOf relations in the DCQ namespace as proposed in the DC Term RDF Schema Draft (section 5.1).

3.2.4 Example

The example given in section 3.1.2 results in the following DC15 description:

anonymous resource 1

dc:title Algebra
dc:creator John Smith
dc:subject Conditioning of matrices
dc:subject Proceedings, conferences, collections, etc.
dc:subject algebra, function, relation
dc:type mn:Preprint
dc:identifier http://www.math.org/doc.ps
dc:identifier http://www.math.org/doc.html
dc:description An introduction to algebra
dc:date 25 September 1999

http://www.math.org/doc.html

dc:format HTML Document

http://www.math.org/doc.ps

dc:format Postscript Document

anonymous resource 2

dc:title 25 September 1999
dc:type dcterms:W3CDTF

anonymous resource 3

dc:title John Smith
dc:type mn:Person

anonymous resource 4

dc:title HTML Document
dc:type dcterms:IMT

anonymous resource 5

dc:title Postscript Document
dc:type dcterms:IMT

anonymous resource 6

dc:title Conditioning of matrices
dc:type mn:MSC2000

anonymous resource 7

dc:title Proceedings, conferences, collections, etc.
dc:type mn:MSC2000

The following images show the original RDF graph given by the example in section 3.1.2 and the corresponding DumbDown result.

4 Language qualification

RDF/XML allows for the general XML language attribute xml:lang. But the RDF Model&Syntax Specification [RDFMS] makes this only optional and not reflected into the data model. (See also section 4.1.1 for details of RDF developments in March 2002.)

4.1 Example

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:dc="http://purl.org/dc/elements/1.1/">
  <rdf:Description>
    <dc:creator>Karl Mustermann</dc:creator>
         <dc:title>Algebra</dc:title>
         <dc:subject xml:lang="en">mathematics</dc:subject>
  </rdf:Description>
</rdf:RDF>

The following is a valid RDF graph representation (with respect to [RDFMS]):

RDF graph ignoring the xml:lang attribute

4.1.1 Note

The working draft RDF/XML Syntax Specification (Revised) RDFMSRev (issued 25 March 2002) of W3C's RDF Core Working Group suggests a change to [RDFMS] in the treatment of xml:lang coded information.

Section [RDFMSRev, 3.1.2] requires parsers to keep xml:lang information and section [RDFMSRev, 3.1.7] defines a uniform way on how xml:lang values have to be transcribed to literal content.

This solution of the xml:lang issue is expected to be viewed as sufficient for (many) qualified DC applications for language qualification. It might supersede the considerations below (4.2/4.3) based on [RDFMS].

4.2 Poor mans language qualification

Applications, which want language qualification accessible on the level of RDF triples, are recommended to employ a poor man's approach as in the following example:

4.2.1 Example

RDF graph keeping language qualification via poor man's

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description>
<dc:creator>Karl Mustermann</dc:creator>
<dc:title>Algebra</dc:title>
<dc:subject>
<rdf:Description dc:language="en">
<rdf:value xml:lang="en">mathematics</rdf:value>
</rdf:Description>
</dc:subject>
</rdf:Description>
</rdf:RDF>

4.3 Remark

Note that the xml:lang attribute is kept in operation to allow XML applications (reader, spell checker and the like) access to the content.

Further qualification of the dc:language information along the lines of the example in section 2.3.10.2 is acceptable. The general remarks on poor man's approaches given in sections 2.3.1 - 2.3.6 also apply.

5 Appendix

The code in this section is for example only and is not normative. Up to date RDF Schema declarations will be published elsewhere on the DCMI web site.

5.1 DC Terms RDF Schema Draft

Note added in proof: In May 2002 the dc-usage board has approved a property dcterms:audience. This property is not yet recorded in this schema.

Added links to DCMI Qualifiers Recommendation

<?xml version="1.0"?>

<!-- 
  Previous Version:
  
  RDF Schema declaration for the Qualified Dublin Core™ Element 
  Set 2000/03/13 
  
  (comments to Eric Miller, [email protected]) 
  
  This Version:
  
  RDF Schema declaration Draft for the Qualified Dublin Core™ 
  Element Set 2002/05/15 
  
  (comments to DC Architecture WG,
  http://www.jiscmail.ac.uk/lists/dc-architecture.html)
  
-->

<!DOCTYPE rdf:RDF [
   <!ENTITY rdfns 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
   <!ENTITY rdfsns 'http://www.w3.org/2000/01/rdf-schema#'>
   <!ENTITY dcns 'http://purl.org/dc/elements/1.1/'>
   <!ENTITY dctermsns 'http://purl.org/dc/terms/'>
   <!ENTITY dctypens 'http://purl.org/dc/dcmitype/'>
]>

<rdf:RDF 
   xmlns:rdf="&rdfns;"
   xmlns:rdfs="&rdfsns;"
   xmlns:dc="&dcns;"
   xmlns:dcterms="&dctermsns;"
   xmlns:dctype="&dctypens;">      

<!-- Description of this Schema -->       

<rdf:Description rdf:about="&dctermsns;">
  <dc:title>The Dublin Core™ Terms namespace providing access 
   to it's content by means of an RDF Schema</dc:title>
  <dc:publisher>The Dublin Core™ Metadata Initiative</dc:publisher>
  <dc:description>The Dublin Core™ Terms namespace provides URIs for the 
   Dublin Core™ Element Set Qualifier Vocabulary. Vocabulary terms are 
   declared using RDF Schema language to support RDF applications.
   The Dublin Core™ qualifiers form a richer vocabulary,
   which is intended to facilitate discovery of resources.   
  </dc:description>
  <dc:language>English</dc:language>
  <dcterms:requires rdf:resource="http://dublincore.org/specifications/dublin-core/dcmes-qualifiers/2000-07-11/"/>
  <dc:source rdf:resource="http://dublincore.org/specifications/dublin-core/dcmes-qualifiers/2000-07-11/"/>
</rdf:Description>
  

<!-- Begin: Title -->

<!-- Title refinement declarations -->

<rdf:Property rdf:about="&dctermsns;alternative">
  <rdfs:label>Alternative</rdfs:label>
  <rdfs:comment>Any form of the title used as a substitute or 
    alternative to the formal title of the resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource = "&dcns;title" />
  <rdfs:isDefinedBy rdf:resource="&dctermsns;" />
</rdf:Property>

<rdf:Description rdf:about="&rdfsns;label">
  <rdfs:subPropertyOf rdf:resource="&dcns;title"/>
</rdf:Description>

<!-- End: Title Declaration -->

<!-- End: Title -->

<!-- Begin: Subject -->

<!-- Encoding Scheme declarations -->

<rdfs:Class rdf:about="&dctermsns;SubjectScheme">
  <rdfs:label>Subject Encoding Schemes</rdfs:label>
  <rdfs:comment>A set of subject encoding schemes 
    and/or formats</rdfs:comment>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;" />
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;LCSH">
  <rdfs:label>LCSH</rdfs:label>
  <rdfs:comment>Library of Congress Subject Headings
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SubjectScheme" />
  <rdfs:isDefinedBy rdf:resource="&dctermsns;" />
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;LCC">
  <rdfs:label>LCC</rdfs:label>
  <rdfs:comment>Library of Congress Classification
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SubjectScheme" />
  <rdfs:isDefinedBy rdf:resource="&dctermsns;" />
  <rdfs:seeAlso 
   rdf:resource="http://lcweb.loc.gov/catdir/cpso/lcco/lcco.html"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;DDC">
  <rdfs:label>DDC</rdfs:label>
  <rdfs:comment>Dewey Decimal Classification
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SubjectScheme" />
  <rdfs:isDefinedBy rdf:resource="&dctermsns;" />
  <rdfs:seeAlso 
   rdf:resource="http://www.oclc.org/dewey/index.htm"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;UDC">
  <rdfs:label>UDC</rdfs:label>
  <rdfs:comment>Universal Decimal Classification
  </rdfs:comment>
  <rdf:type rdf:resource = "&dctermsns;SubjectScheme" />
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
  <rdfs:seeAlso 
   rdf:resource="http://www.udcc.org/"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;MESH">
  <rdfs:label>MeSH</rdfs:label>
  <rdfs:comment>Medical Subject Headings
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SubjectScheme" />
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
  <rdfs:seeAlso 
   rdf:resource="http://www.nlm.nih.gov/mesh/meshhome.html"/>
</rdfs:Class>

<!-- End: Subject -->

<!-- Begin: Description -->

<!-- Description refinement declarations -->

<rdf:Property rdf:about="&dctermsns;abstract">
  <rdfs:label>Abstract</rdfs:label>
  <rdfs:comment>A summary of the content of the resource.
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;description"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;tableOfContents">
  <rdfs:label>Table Of Contents</rdfs:label>
  <rdfs:comment>A list of subunits of the content of the resource.
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;description"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Description rdf:about="&rdfsns;comment">
  <rdfs:subPropertyOf rdf:resource="&dcns;description"/>
</rdf:Description>

<!-- End: Description -->

<!-- Begin: Date -->

<!-- Date refinement declaration -->

<rdf:Property rdf:about="&dctermsns;created">
  <rdfs:label>Created</rdfs:label>
  <rdfs:comment>Date of creation of the resource.
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;date"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;issued">
  <rdfs:label>Issued</rdfs:label>
  <rdfs:comment>Date of formal issuance (e.g., publication) of the 
    resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;date"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;modified">
  <rdfs:label>Modified</rdfs:label>
  <rdfs:comment>Date on which the resource was changed.
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;date"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;valid">
  <rdfs:label>Valid</rdfs:label>
  <rdfs:comment>Date (often a range) of validity of a resource.
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;date"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;available">
  <rdfs:label>Available</rdfs:label>
  <rdfs:comment>Date (often a range) that the resource will become or 
    did become available.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;date"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<!-- Encoding Schemes -->

<rdfs:Class rdf:about="&dctermsns;DateScheme">
  <rdfs:label>Date Encoding Schemes</rdfs:label>
  <rdfs:comment>A set of date encoding schemes and/or formats
  </rdfs:comment>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;W3CDTF">
  <rdfs:label>W3C-DTF</rdfs:label>
  <rdfs:comment> 
   encoded with the W3C Encoding rules for dates and times - a profile based on ISO8601 
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DateScheme"/>
  <rdf:type rdf:resource="&dctermsns;TemporalScheme"/>
  <rdfs:seeAlso rdf:resource="http://www.w3.org/TR/NOTE-datetime"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/> 
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;Period">
  <rdfs:label>DCMI Period</rdfs:label>
  <rdfs:comment>A specification of the limits of a time interval.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DateScheme"/>
  <rdf:type rdf:resource="&dctermsns;TemporalScheme"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-period/"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/> 
</rdfs:Class>

<!-- End: Date -->

<!-- Begin: format -->

<!-- format refinement declarations -->

<rdf:Property rdf:about="&dctermsns;extent">
  <rdfs:label>Extent</rdfs:label>
  <rdfs:comment>The size or duration of the resource.
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;format"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;medium">
  <rdfs:label>Medium</rdfs:label>
  <rdfs:comment>The material or physical carrier of the resource.
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;format"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<!-- Encoding Scheme declarations -->

<rdfs:Class rdf:about="&dctermsns;FormatScheme">
  <rdfs:label>Format Encoding Schemes</rdfs:label>
  <rdfs:comment>A set of format encoding schemes.</rdfs:comment>
  <rdfs:isDefinedBy rdf:resource ="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;IMT">
  <rdfs:label>IMT</rdfs:label>
  <rdfs:comment>The Internet media type of the resource.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;FormatScheme"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
  <rdfs:seeAlso 
rdf:resource="http://www.isi.edu/in-notes/iana/assignments/media-types/media-types"/>
</rdfs:Class>

<!-- End: format -->

<!-- Begin: Language -->

<!-- Language refinement declarations -->

<!-- Encoding Scheme declarations -->

<rdfs:Class rdf:about="&dctermsns;LanguageScheme">
  <rdfs:label>Language Encoding Schemes</rdfs:label>
  <rdfs:comment>A set of language encoding schemes and/or formats.
  </rdfs:comment>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;RFC1766">
  <rdfs:label>RFC1766</rdfs:label>
  <rdfs:comment>Internet RFC 1766 'Tags for the identification of 
    Language' specifies a two letter code taken from ISO 639, followed 
    optionally by a two letter country code taken from ISO 3166.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;LanguageScheme"/>
  <rdfs:seeAlso rdf:resource="http://www.ietf.org/rfc/rfc1766.txt"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;ISO639-2">
  <rdfs:label>ISO 639-2</rdfs:label>
  <rdfs:comment>ISO 639-2: Codes for the representation of names of 
    languages.</rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;LanguageScheme"/>
  <rdfs:seeAlso 
    rdf:resource="http://www.loc.gov/standards/iso639-2/langhome.html"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<!-- End: language -->

<!-- Begin: Relation -->

<!-- Relation refinement declarations -->

<rdf:Property rdf:about="&dctermsns;isPartOf">
  <rdfs:label>Is Part Of</rdfs:label>
  <rdfs:comment>The described resource is a physical or logical part 
    of the referenced resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;hasPart">
  <rdfs:label>Has Part</rdfs:label>
  <rdfs:comment>The described resource includes the referenced resource 
    either physically or logically.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;isVersionOf">
  <rdfs:label>Is Version Of</rdfs:label>
  <rdfs:comment>The described resource is a version, edition, or 
    adaptation of the referenced resource. Changes in version imply 
    substantive changes in content rather than differences in format. 
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;hasVersion">
  <rdfs:label>Has Version</rdfs:label>
  <rdfs:comment>The described resource has a version, edition, or 
    adaptation, namely, the referenced resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;isFormatOf">
  <rdfs:label>Is Format Of</rdfs:label>
  <rdfs:comment>The described resource is the same intellectual content 
    of the referenced resource, but presented in another format. 
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;hasFormat">
  <rdfs:label>Has Format</rdfs:label>
  <rdfs:comment>The described resource pre-existed the referenced 
    resource, which is essentially the same intellectual content presented 
    in another format.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;references">
  <rdfs:label>References</rdfs:label>
  <rdfs:comment>The described resource references, cites, or otherwise 
    points to the referenced resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;isReferencedBy">
  <rdfs:label>Is Referenced By</rdfs:label>
  <rdfs:comment>The described resource is referenced, cited, or 
    otherwise pointed to by the referenced resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;requires">
  <rdfs:label>Requires</rdfs:label>
  <rdfs:comment>The described resource requires the referenced resource 
    to support its function, delivery, or coherence of content. 
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;isRequiredBy">
  <rdfs:label>Is Required By</rdfs:label>
  <rdfs:comment>The described resource is required by the referenced 
    resource, either physically or logically. </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;replaces">
  <rdfs:label>Replaces</rdfs:label>
  <rdfs:comment>The described resource supplants, displaces, or 
    supersedes the referenced resource. 
  </rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;isReplacedBy">
  <rdfs:label>Is Replaced By</rdfs:label>
  <rdfs:comment>The described resource is supplanted, displaced, or 
    superseded by the referenced resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Description rdf:about="&rdfsns;seeAlso">
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
</rdf:Description>

<rdf:Description rdf:about="&rdfsns;isDefinedBy">
  <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
</rdf:Description>

<!-- Encoding Scheme declarations -->

<!-- End: Relation -->

<!-- Begin: coverage -->

<!-- Coverage refinement declarations -->

<rdf:Property rdf:about="&dctermsns;spatial">
  <rdfs:label>Spatial</rdfs:label>
  <rdfs:comment>Spatial characteristics of the intellectual content of 
    the resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;coverage"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<rdf:Property rdf:about="&dctermsns;temporal">
  <rdfs:label>Temporal</rdfs:label>
  <rdfs:comment>Temporal characteristics of the intellectual content 
    of the resource.</rdfs:comment>
  <rdfs:subPropertyOf rdf:resource="&dcns;coverage"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdf:Property>

<!-- Coverage range declarations -->

<!-- Encoding Schemes -->

<rdfs:Class rdf:about="&dctermsns;SpatialScheme">
  <rdfs:label>Place Encoding Schemes</rdfs:label>
  <rdfs:comment>A set of geographic place encoding schemes and/or 
    formats</rdfs:comment>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;TGN">
  <rdfs:label>TGN</rdfs:label>
  <rdfs:comment>The Getty Thesaurus of Geographic Names
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SpatialScheme"/>
  <rdfs:seeAlso 
   rdf:resource="http://www.getty.edu/research/tools/vocabulary/tgn/"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;" />
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;ISO3166">
  <rdfs:label>ISO3166</rdfs:label>
  <rdfs:comment>ISO3166 Codes for the representation of names of 
    countries</rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SpatialScheme" />
  <rdfs:seeAlso 
   rdf:resource="http://www.din.de/gremien/nas/nabd/iso3166ma/codlstp1/"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;Box">
  <rdfs:label>DCMI Box</rdfs:label>
  <rdfs:comment>The DCMI Box encoding scheme is a method for identifying 
    a region of space using its geographic limits.</rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SpatialScheme"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-box/"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/> 
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;Point">
  <rdfs:label>DCMI Point</rdfs:label>
  <rdfs:comment>DCMI Point is used for identifying a point in space 
    using its geographic coordinates</rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;SpatialScheme"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-point/"/>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/> 
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;TemporalScheme">
  <rdfs:label>Encoding Schemes for temporal characteristics 
    of the intellectual content of a resource</rdfs:label>
  <rdfs:comment>A set of encoding schemes and/or
    formats for temporal characteristics of the intellectual 
    content of a resource</rdfs:comment>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<!-- End: coverage -->

<!-- Begin: type -->

<!-- Encoding Schemes -->

<rdfs:Class rdf:about="&dctermsns;TypeScheme">
  <rdfs:label>Resource Type Encoding Schemes</rdfs:label>
  <rdfs:comment>A set of resource type encoding schemes and/or 
    formats</rdfs:comment>
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctermsns;DCMIType">
 <rdfs:label>DCMI Type Vocabulary</rdfs:label>
 <rdfs:comment>A list of types used to categorize the nature or 
  genre of the content of the resource.</rdfs:comment>
 <rdf:type rdf:resource="&dctermsns;TypeScheme"/>
 <rdfs:seeAlso
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
 <rdfs:seeAlso rdf:resource="&dctypens;"/>
 <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdf:Description rdf:about="&rdfns;type">
  <rdfs:subPropertyOf rdf:resource="&dcns;type"/>
</rdf:Description>

<!-- End: type -->

</rdf:RDF>

5.2 DCMIType RDF Schema Draft

<?xml version="1.0"?>

<!-- 
   
  RDF Schema declaration Draft for DCMI Type Vocabulary
  
  This Version:
  2002/05/15
  
  (comments to DC Architecture WG,
  http://www.jiscmail.ac.uk/lists/dc-architecture.html)
  
-->

<!DOCTYPE rdf:RDF [
        <!ENTITY rdfns 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
        <!ENTITY rdfsns 'http://www.w3.org/2000/01/rdf-schema#'>
        <!ENTITY dcns 'http://purl.org/dc/elements/1.1/'>
        <!ENTITY dctermsns 'http://purl.org/dc/terms/'>
        <!ENTITY dctypens 'http://purl.org/dc/dcmitype/'>
]>

<rdf:RDF 
        xmlns:rdf="&rdfns;"
        xmlns:rdfs="&rdfsns;"
        xmlns:dc="&dcns;"
        xmlns:dcterms="&dctermsns;"
        xmlns:dctype="&dctypens;">         

<!-- Description of this Schema -->       

<rdf:Description rdf:about="&dctypens;">
  <dc:title>The DCMI Types namespace providing access 
   to it's content by means of an RDF Schema</dc:title>
  <dc:publisher>The Dublin Core™ Metadata Initiative</dc:publisher>
  <dc:description>The Dublin Core™ Types namespace provides URIs for the
    entries of the DCMI Type Vocabulary. Entries are declared using RDF Schema
    language to support RDF applications.</dc:description> 
  <dc:language>English</dc:language>
  <dcterms:requires rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <dc:source rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/> 
</rdf:Description>

<rdfs:Class rdf:about="&dctermsns;DCMIType">
  <dc:description>
    The DCMI Type Vocabulary provides a general, cross-domain list of approved
    terms that may be used as values for the Resource Type element to identify
    the genre of a resource.
  </dc:description>
  <rdf:type rdf:resource="&dctermsns;TypeScheme" />
  <rdfs:isDefinedBy rdf:resource="&dctermsns;"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Collection">
  <rdfs:label>Collection</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    A collection is an aggregation of items. The term collection means that 
    the resource is described as a group; its parts may be separately 
    described and navigated.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Dataset">
  <rdfs:label>Dataset</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    A dataset is information encoded in a defined structure (for example, 
    lists, tables, and databases), intended to be useful for direct 
    machine processing.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Event">
  <rdfs:label>Event</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    An event is a non-persistent, time-based occurrence. Metadata for an 
    event provides descriptive information that is the basis for discovery 
    of the purpose, location, duration, responsible agents, and links to 
    related events and resources. The resource of type event may not be 
    retrievable if the described instantiation has expired or is yet to occur. 
    Examples - exhibition, web-cast, conference, workshop, open-day, 
    performance, battle, trial, wedding, tea-party, conflagration.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Image">
  <rdfs:label>Image</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    An image is a primarily symbolic visual representation other than text. 
    For example - images and photographs of physical objects, paintings, 
    prints, drawings, other images and graphics, animations and moving 
    pictures, film, diagrams, maps, musical notation. Note that image may 
    include both electronic and physical representations.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;InteractiveResource">
  <rdfs:label>Interactive Resource</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    An interactive resource is a resource which requires interaction from the 
    user to be understood, executed, or experienced. For example - forms on web
    pages, applets, multimedia learning objects, chat services, virtual reality.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Software">
  <rdfs:label>Software</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    Software is a computer program in source or compiled form which may be 
    available for installation non-transiently on another machine. For 
    software which exists only to create an interactive environment, use 
    interactive instead.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Service">
  <rdfs:label>Service</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    A service is a system that provides one or more functions of value to the
    end-user. Examples include: a photocopying service, a banking service, 
    an authentication service, interlibrary loans, a Z39.50 or Web server.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Sound">
  <rdfs:label>Sound</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    A sound is a resource whose content is primarily intended to be rendered 
    as audio. For example - a music playback file format, an audio compact 
    disc, and recorded speech or sounds.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

<rdfs:Class rdf:about="&dctypens;Text">
  <rdfs:label>Text</rdfs:label>
  <rdfs:isDefinedBy rdf:resource="&dctypens;"/>
  <rdfs:seeAlso 
    rdf:resource="http://dublincore.org/specifications/dublin-core/dcmi-type-vocabulary/"/>
  <rdfs:comment>
    A text is a resource whose content is primarily words for reading. 
    For example - books, letters, dissertations, poems, newspapers, articles, 
    archives of mailing lists. Note that facsimiles or images of texts are still 
    of the genre text.
  </rdfs:comment>
  <rdf:type rdf:resource="&dctermsns;DCMIType"/>
</rdfs:Class>

</rdf:RDF>

6 Appendix: Summary DC Qualifiers

This is a convenience copy. The normative reference is [DCQual].

DCMES Element Element Refinement(s) Element Encoding Scheme(s)
Title Alternative -
Creator - -
Subject - LCSH
MeSH
DDC
LCC
UDC
Description Table Of Contents
Abstract
-
Publisher - -
Contributor - -
Date Created
Valid
Available
Issued
Modified
DCMI Period
W3C-DTF
Type - DCMI Type Vocabulary
Format   IMT
Extent -
Medium  
Identifier - URI
Source - URI
Language - ISO 639-2
RFC 1766
Relation Is Version Of
Has Version
Is Replaced By
Replaces
Is Required By
Requires
Is Part Of
Has Part
Is Referenced By
References
Is Format Of
Has Format
URI
Coverage Spatial DCMI Point
ISO 3166
DCMI Box
TGN
Temporal DCMI Period
W3C-DTF
Rights - -
## 7 Acknowledgements

The authors wish to thank Tom Baker, Dan Brickley, Tim Cole, Makx Dekkers, Carl Lagoze, Sigfrid Lundberg, Eric Miller, Tod Matola, Judith Plümer, Hartmut Polzer, Harry Wagner and Stu Weibel for helpful and stimulating contributions. Particular thanks to Aaron Swartz for his suggestions and contributions to the DumbDown algorithm and bug reports and to the contributors of the Namespace Policy for the Dublin Core™ Metadata Initiative (DCMI) , which provided the necessary namespace normalization. Thanks to the DC Architecture Working Group for its patience. Most of the techniques proposed here have their basis in [DM],[RDFMS] and [RDFS]. The scheme proposals are essentially due to Eric Miller. Thanks to Dave Beckett for his constructive suggestions for the final version.

8 References

8.1 Required

[DC15]
Dublin Core™ Metadata Element Set, Version 1.1: Reference Description
http://dublincore.org/specifications/dublin-core/dces/

[DCQual]
Dublin Core™ Qualifiers
http://dublincore.org/specifications/dublin-core/dcmes-qualifiers/

[DCNP]
Namespace Policy for the Dublin Core™ Metadata Initiative (DCMI)
http://dublincore.org/specifications/dublin-core/dcmi-namespace/2001-10-26/

[RDFMS]
Resource Description Framework (RDF) Model and Syntax Specification
http://www.w3.org/TR/REC-rdf-syntax/

[RDFMSRev]
RDF/XML Syntax Specification (Revised), W3C Working Draft, work in progress
http://www.w3.org/TR/2002/WD-rdf-syntax-grammar-20020325/

[RDFName]
RDF XML Namespace
http://www.w3.org/1999/02/22-rdf-syntax-ns#

[RDFS]
Resource Description Framework (RDF) Schema Specification 1.0, W3C Candidate Recommendation, work in progress
http://www.w3.org/TR/2000/CR-rdf-schema-20000327/

[RDFSName]
RDFS XML Namespace
http://www.w3.org/2000/01/rdf-schema#

[VCARD]
Representing vCard Objects in RDF/XML, W3C Note
http://www.w3.org/TR/vcard-rdf

[URI]
RFC 2396: Uniform Resource Identifiers (URI): Generic Syntax
http://www.isi.edu/in-notes/rfc2396.txt

8.2 Informational

[AP6]
CARMEN AP 6: MetaData based Indexing of Scientific Resources
http://www.mathematik.uni-osnabrueck.de/projects/carmen/AP6/

[CARA]
CARA
http://zoe.mathematik.uni-osnabrueck.de/RDF/parser.html

[DDD]
DumDown Demo
http://zoe.mathematik.uni-osnabrueck.de/dc/

[DAML+OIL]
DAML+OIL (March 2001)
http://www.daml.org/2001/03/daml+oil-index

[DM]
Guidance on expressing the Dublin Core™ within the Resource Description Framework (RDF)
http://www.ukoln.ac.uk/metadata/resources/dc/datamodel/WD-dc-rdf/

Authors:

Stefan Kokkelink

Roland Schwänzl
Universität Osnabrück
Fb. Mathematik / Informatik
IWI
Albrechtstr. 28
D-49069 Osnabrück
Germany

The authors wish to thank the BMBF (SFM CARMEN) for partial support during the preparation of this document.