2nd Draft Proposal for new DocBook elements to support Dublin Core
---------------------------------------------------------
Version 1.1
8 February 2002
This is the revised proposal for getting complete Dublin
Core coverage in DocBook. While reading it you should have
at hand the HTML table mapping Dublin Core to DocBook that
is attached).
The following Dublin Core elements are already covered by
DocBook 4.1.2 elements and nothing new is needed. Please refer
to the HTML table for explanations.
Title
Creator
Subject
Description
Publisher
Contributor
Date
Language
Rights
The following Dublin Core elements are not covered by
DocBook elements, but can be inferred from them.
I think no new elements are needed for them either.
Type
Format
Below is a description of four new elements being proposed
to support Dublin Core metadata:
<biblioid> (already in 4.2b1)
<source>
<relation>
<coverage>
The first three have similar structure since they are
describing resources.
1. biblioid
----------------
This element is already proposed for DocBook 4.2, and
provides a unique identifier for the current document.
The class list here has been modified to replace urn with uri
and to add libraryofcongress.
<!ELEMENT biblioid %ho; (%docinfo.char.mix;)*>
<!ATTLIST biblioid
class (uri|doi|isbn|issn|
libraryofcongress|pubnumber|other) #IMPLIED
otherclass CDATA #IMPLIED
%common.attrib;
%biblioid.role.attrib;
%local.biblioid.attrib;
>
For example:
<book>
<bookinfo>
<biblioid class="uri">
urn:oasis-open.org:committees:XML_Catalogs:06Aug2001
</biblioid>
</bookinfo>
...
2. Source.
--------------
It is useful to record if a document or element
(text or graphic) has been derived from another resource.
I propose a new <source> element that is structured
identically to the <biblioid> element that is new to DocBook 4.2.
It could appear inside any *info element, including the
<objectinfo> element used for mediaobjects.
<!ELEMENT source %ho; (%docinfo.char.mix;)*>
<!ATTLIST source
class (uri|doi|isbn|issn|
libraryofcongress|pubnumber|other) #IMPLIED
otherclass CDATA #IMPLIED
%common.attrib;
%source.role.attrib;
%local.source.attrib;
>
<!ENTITY % source.role.attrib "%role.attrib;">
For example:
<mediaobject>
<imageobject>
<objectinfo>
<source otherclass="Corel Draw 6">/lib/imagesrc/filesys.cdr</source>
</objectinfo>
<imagedata fileref="filesys.png"/>
</imageobject>
</mediaobject>
3. Relation
-----------------
This element would capture relationships with other
resources that are not already expressed with the various
DocBook linking elements.
I propose a new <relation> element that is structured
similarly to the <biblioid> element to meet that need.
It could appear inside any *info element, including
the <objectinfo> element in mediaobjects.
The content of <relation> would be the identifier of the
other resource. The class or otherclass attribute would
identify the scheme used in naming the resource. A "type"
attribute would capture the relationship type, and would
use the enumerated Dublin Core relation qualifiers.
That enumerated list can be extended in the DTD using
a 'local.relation.types' parameter entity. Or an
ad hoc type can be designated in the 'othertype' attribute.
<!ELEMENT relation %ho; (%docinfo.char.mix;)*>
<!ATTLIST relation
class (uri|doi|isbn|issn|
libraryofcongress|pubnumber|other) #IMPLIED
otherclass CDATA #IMPLIED
%relation.type.attrib;
othertype CDATA #IMPLIED
%common.attrib;
%relation.role.attrib;
%local.relation.attrib;
>
<!ENTITY % relation.type.attrib
"type (IsVersionOf
|HasVersion
|IsReplacedBy
|Replaces
|IsRequiredBy
|Requires
|IsPartOf
|HasPart
|IsReferencedBy
|References
|IsFormatOf
|HasFormat
|other
%local.relation.types;) #IMPLIED"
>
For example:
<book>
<bookinfo>
<relation class="isbn" type="Replaces">1-57870-080-9</relation>
</bookinfo>
...
4. Coverage
----------------
This element's content describes the coverage domain of the
current document or element. It uses the enumerated Dublin
Core qualifiers for spacial and temporary schemes,
extendable with other schemes. An element could have both
spatial and temporal coverage attributes. A coverage element
could appear in any *info element.
<!ELEMENT coverage %ho; (%docinfo.char.mix;)*>
<!ATTLIST coverage
spatial (dcmipoint|iso3166|dcmibox|tgn|other) #IMPLIED
otherspatial CDATA #IMPLIED
temporal (dcmiperiod|w3c-dtf|other) #IMPLIED
othertemporal CDATA #IMPLIED
%common.attrib;
%coverage.role.attrib;
%local.coverage.attrib;
>
For (lack of a better) example:
<book>
<bookinfo>
<title>Enterprise Warp Drive Manual</title>
<coverage othertemporal="Stardate model year">2077.3-2078.2</coverage>
</bookinfo>
...
Bob Stayton 400 Encinal Street
Publications Architect Santa Cruz, CA 95060
Technical Publications voice: (831) 427-7796
Caldera International, Inc. fax: (831) 429-1887
email: bobs@caldera.com
Title: Dublin Core in DocBook
Dublin Core in DocBook
Version 1.1
8 February 2002
Bob Stayton
This table summaries the Dublin Core Elements[1] and how they map to
DocBook elements in the DocBook 4.1.2 DTD. For more information on Dublin Core,
see:
[1] http://dublincore.org/documents/1998/09/dces/
[2] http://dublincore.org/documents/1999/08/05/resource-typelist/