Skip
repetitive navigational links
L-Soft  -  Home of  the  LISTSERV  mailing list  manager LISTSERV(R) 14.5
Skip repetitive navigational links
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (December 2003)Back to main MODS pageJoin or leave MODSReplyPost a new messageSearchProportional fontNon-proportional fontLog in
Date:         Thu, 18 Dec 2003 13:18:56 -0500
Reply-To:     Metadata Object Description Schema List <[log in to unmask]>
Sender:       Metadata Object Description Schema List <[log in to unmask]>
From:         "Rebecca S. Guenther" <[log in to unmask]>
Subject:      Re: MODS to Dublin Core mapping stylesheet and documentation
Comments: To: Metadata Object Description Schema List <[log in to unmask]>
In-Reply-To:  <[log in to unmask]>
Content-Type: TEXT/PLAIN; charset=US-ASCII

On Tue, 16 Dec 2003, Paul Fogel wrote: > Bruce had requested that I post these documents to the list. I hope that > someone may find them useful and I encourage all feedback and criticism. > > These were developed to transform MODS (encoded in METS) into Dublin Core > for internal indexing purposes. While this is not a final version, it is > in production and seems to be doing what it is supposed to. A slightly > modified production version can be viewed at > http://ark.cdlib.org/xslt/extract-dc/OAC-LSTA-MODS2DC.qdc21.xsl. > > I took the DC to MODS mapping stylesheet as a starting point, but as we all > know round-tripping is never the same both ways and I had to make a lot of > logical modification. Also, we are still working with MODS 2.0 so this > will need work when we make the transition. > > I have attached the documents (an .xslt and a .txt) and have also pasted > them below. Again, please let me hear any opinions you may have. > > Paul Fogel > California Digital Library > [log in to unmask] > 510.987.0680 > <xsl:apply-templates mode="makeIsPartOf"/> > </xsl:when> > </xsl:choose> > </xsl:for-each> > </xsl:template> > > <xsl:template match="*" mode="makeIsPartOf"> > <xsl:apply-templates mode="makeIsPartOf"/> > </xsl:template> > > <xsl:template match="text()" mode="makeIsPartOf"> > <xsl:if test="normalize-space(.) != ''"> > <dcterms:isPartOf> > <xsl:value-of select="normalize-space(.)"/> > </dcterms:isPartOf> > </xsl:if> > </xsl:template> > > </xsl:stylesheet> > > > MODS to Dublin Core Mapping > > > > By Dublin Core Element, from MODS Element > > Title: > //mods/titleInfo/title - A conditional IF statement is included to catch > <titleInfo><subTitle> and append it to the title, separated by colon space > (: ). > > Creator: > //mods/name/namePart - when //mods/name/role[. = 'creator'] > //mods/recordInfo/recordContentSource > > Subject: > //mods/subject/topic > //mods/subject/name > //mods/subject/titleInfo/title > > Description: > //mods/abstract > //mods/tableOfContents > //mods/note > //mods/subject/name<description> > > Publisher: > //mods/originInfo/publisher > //mods/publicationInfo/publisher - to accommodate earlier encoding > practices; this usage is outdated > > Contributor: > //mods/name/namePart - when //mods/name/role/text[. = 'contributor'] > > Date: > Mapped from: > //mods/originInfo/dateIssued > //mods/originInfo/dateCreated > //mods/originInfo/dateCaptured > //mods/originInfo/dateOther > //mods/publicationInfo/dateIssued - to accommodate earlier encoding > practices; this usage is outdated > > Type: > //mods/typeOfResource > //mods/genre > > Format: > //mods/physicalDescription/extent > //mods/physicalDescription/form > //mods/physicalDescription/internetMediaType > //mods/physicalDescription/digitalOrigin > //mods/physicalDescription/note > > Identifier: > //mods/identifier - If @TYPE= '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&amp;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: > //mods/relatedItem[@TYPE='original'] > > Language: > //mods/language > > Relation: > //mods/relatedItem - except when relatedItem[(@TYPE='original') or > (@TYPE='series')] > > Coverage: > Mapped from: > //mods/subject/geographic > //mods/subject/temporal > //mods/subject/hierarchicalGeographic > //mods/subject/cartographic > //mods/classification > 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: > //mods/accessCondition > > DCTerms:Abstract: > //mods/abstract - this data is also mapped (see above) into Description, so > that data is not lost in Unqualified Dublin Core. > > DCTerms:Created > //mods/recordInfo/recordCreationDate. This is also mapped to Date, so that > data is not lost in Unqualified Dublin Core. > > DCTerms:Modified > //mods/recordInfo/recordChangeDate. This is also mapped to Date, so that > data is not lost in Unqualified Dublin Core. > > DCTerms:isPartOf > //mods/relatedItem - when //mods/relatedItem[@TYPE='series']. This is also > mapped to Relation, so that data is not lost in Unqualified Dublin Core. > > > > > > > > By MODS Element, to Dublin Core Element > > ELEMENT MAPPED TO > //mods/titleInfo/title title > //mods/titleInfo/subTitle title > //mods/titleInfo/partNumber ignored > //mods/titleInfo/partName ignored > //mods/titleInfo/nonSort ignored > > //mods/name/namePart creator, contributor (see > above) > //mods/name/displayForm ignored > //mods/name/affiliation ignored > //mods/name/role Used to assign creator and > contributor, otherwise ignored. > //mods/name/description description > > //mods/typeOfResource type > > //mods/genre type > > //mods/originInfo/place ignored > //mods/originInfo/publisher publisher > //mods/originInfo/dateIssued date > //mods/originInfo/dateCreated date, dcterms:created > //mods/originInfo/dateCaptured date > //mods/originInfo/dateOther date > //mods/originInfo/edition ignored > //mods/originInfo/issuance ignored > //mods/originInfo/frequency ignored > > //mods/language language > > //mods/physicalDescription/form format > //mods/physicalDescription/reformattingQuality ignored > //mods/physicalDescription/internetMediaType format > //mods/physicalDescription/extent format > //mods/physicalDescription/digitalOrigin format > //mods/physicalDescription/note format > > //mods/abstract description, dcterms:absctract > > //mods/tableOfContents description > > //mods/targetAudience ignored > > //mods/note description > > //mods/subject/topic subject > //mods/subject/geographical coverage > //mods/subject/temporal coverage > //mods/subject/titleInfo/title subject > (other subelements for titleInfo ignored) > //mods/subject/name<description> subject > (other subelements for name ignored) > //mods/subject/hierarchicalGeographic coverage > (subelements flattened to appear in one string) > //mods/subject/cartographic coverage > (subelements flattened to appear in one string) > //mods/classification coverage > > //mods/relatedItem[@type='original'] source > //mods/relatedItem[@type='series'] dcterms:isPartOf > //mods/relatedItem[@type='*'] relation > (subelements flattened to appear in one string) > > //mods/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> > > //mods/location ignored > > //mods/accessCondition rights > > //mods/extension ignored > > //mods/recordInfo/recordContentSource creator, > //mods/recordInfo/recordCreationDate dcterms:created > //mods/recordInfo/recordChangeDate dcterms:modified > //mods/recordInfo/recordIdentifier ignored > //mods/recordInfo/languageOfCataloging ignored > > >


Back to: Top of message | Previous page | Main MODS page

LISTSERV.LOC.GOV CataList email list search Powered by LISTSERV email list manager