Date:Thu, 11 Sep 2003 09:55:39 -0700
Reply-To:Metadata Object Description Schema List <[log in to unmask]>
Sender:Metadata Object Description Schema List <[log in to unmask]>
From:Paul Fogel <[log in to unmask]>
Subject:Mapping from MODS to Dublin Core
Comments:To: [log in to unmask]Content-Type:multipart/alternative;
Hi.
I am new to this list and may have missed any previous discussions on this
topic, so forgive me if I am rehashing old news.
We have been developing a MODS to Dublin Core mapping (using XSLT) to
process our METS (in XML) records. We will be using the resultant DC for
indexing purposes.
My question is, has anyone else done a mapping like this? I looked around
and could not find any examples, so I ended up using the DC to MODS mapping
as a foundation to build from.
I have pasted below an overview of the mapping for review. How does it look?
Paul Fogel
California Digital Library
[log in to unmask]
510.987.0680
MODS to Dublin Core Mapping Documentation
By Dublin Core Element, from MODS Element
Title:
This is mapped from the <titleInfo><title> field. A conditional IF
statement is included to catch <titleInfo><subTitle> and append it to the
title, separated by colon space (: ).
Creator:
This is mapped from <name><namePart> when <name><role>creator</role>. A
mapping is also made from the <recordInfo><recordContentSource> element
Subject:
This is mapped for each occurrence of:
· <subject><topic>
· <subject><name>
· <subject><titleInfo><title>
· <name><namePart> - A condition is included so that if <name>
contains multiple <namePart> elements, they are concatenated using a space
( ) as a separator.
Description:
This is mapped for all occurrences from:
· <abstract>
· <tableOfContents>
· <note>
· <subject><name><description>
Publisher:
Mapped from:
· <originInfo><publisher>
· <recordInfo><recordContentSource>
· <publicationInfo><publisher> (to accommodate early UCPEE encoding
practices - this usage is outdated)
Contributor:
Mapped from <name><namePart> only when <name><role><text>contributor</text>.
Date:
Mapped from:
· <originInfo><dateIssued>
· <originInfo><dateCreated>
· <originInfo><dateCaptured>
· <originInfo><dateOther>
· <publicationInfo><dateIssued> (as per Publisher above)
Type:
Mapped from <typeOfResource> and <genre>.
Format:
Mapped from:
· <physicalDescription><extent>
· <physicalDescription><form>
· <physicalDescription><internetMediaType
· <physicalDescription><digitalOrigin>
· <physicalDescription><note>
Identifier:
Mapped from <identifier>. If the element has a TYPE attribute equal to
"isbn", "issn", "lccn", "doi" or "uri", then this value precedes the data,
separated by colon space. Example: <identifier>uri:
http://www.ucpress.edu/books/pages/6178.html&isbn=0520081994</identifier>
If there is no TYPE attribute, or if it is not set to one of these values,
the data is mapped without qualification.
Source:
Mapped from <relatedItem> only when the attribute TYPE is equal to "original".
Language:
Mapped from <language>.
Relation:
Mapped from <relatedItem> for all occurrences except for those in which the
TYPE attribute is equal to "original" (Source, above) or "series"
(isPartOf, below).
Coverage:
Mapped from:
· <subject><geographic>
· <subject><temporal>
· <subject><hierarchicalGeographic>
· <subject><cartographic>
· <classification>
· <originInfo><place><text>
The <hierarchicalGeographic> and <cartographic> nodes are flattened so that
repeating values as well as sub-elements (and their children) are strung
into one element.
Rights:
Mapped from <accessCondition>.
DCTerms:Abstract:
Mapped from <abstract> - this data is also mapped (see above) into
Description so that Unqualified Dublin Core can be extracted without loss.
DCTerms:Created
Mapped from <recordInfo><recordCreationDate>. This is also mapped to Date,
so that data is not lost in Unqualified Dublin Core.
DCTerms:Modified
Mapped from <recordInfo><recordChangeDate>. This is also mapped to Date,
so that data is not lost in Unqualified Dublin Core.
DCTerms:isPartOf
Mapped from <relatedItem> only when the TYPE attribute is equal to
"series". This is also mapped to Relation, so that data is not lost in
Unqualified Dublin Core.
By MODS Element, from Dublin Core Element
ELEMENT MAPPED TO
<titleInfo><title> Title
<titleInfo><subTitle> Title, if occurs
<titleInfo><partNumber> ignored
<titleInfo><partName> ignored
<titleInfo><nonSort> ignored
<name><namePart> Creator, Subject, Contributor
<name><displayForm> ignored
<name><affiliation> ignored
<name><role> Used to assign Creator & Contributor, otherwise ignored.
<name><description> Description
<typeOfResource> Type
<genre> Type
<originInfo><place> Coverage
<originInfo><publisher> Publisher
<originInfo><dateIssued> Date
<originInfo><dateCreated> Date, DCTerms:Created
<originInfo><dateCaptured> Date
<originInfo><dateOther> Date
<originInfo><edition> ignored
<originInfo><issuance> ignored
<originInfo><frequency> ignored
<language> Language
<physicalDescription><form> Format
<physicalDescription><reformattingQuality> ignored
<physicalDescription><internetMediaType> Format
<physicalDescription><extent> Format
<physicalDescription><digitalOrigin> Format
<physicalDescription><note> Format
<abstract> Description, DCTerms:Absctract
<tableOfContents> Description
<targetAudience ignored
<note> Description
<subject><topic> Subject
<subject><geographical> Coverage
<subject><temporal> Coverage
<subject><titleInfo><title> Subject
(other subelements for titleInfo ignored)
<subject><name><description> Subject
(other subelements for name ignored)
<subject><hierarchicalGeographic> Coverage
(subelements "flattened" to appear in one string)
<subject><cartographics> Coverage
(subelements "flattened" to appear in one string)
<classification> Coverage
<relatedItem> Source (if type="original")
DCTerms:IsPartOf (if type="series")
Relation (for all other types)
(subelements "flattened" to appear in one string)
<identifier> Identifier
(if type is issn, isbn, lccn, uri, or doi, it is applied at beginning of
data string; otherwise data is applied as is)
Ex. <dc:identifier>isbn: 0123456789</dc:identifier>
<dc:identifier>12-34567-8901234-5-67</dc:identifier>
<location> Ignored
<accessCondition> Rights
<extension> Ignored
<recordInfo><recordContentSource> Creator, Publisher
<recordInfo><recordCreationDate> DCTerms:Created
<recordInfo><recordChangeDate> DCTerms:Modified
<recordInfo><recordIdentifier> Ignored
<recordInfo><languageOfCataloging> Ignored