The Library of Congress » Standards » MODS Official Web Site
Metadata Object Description Schema: Official Web Site
HOME >> Conversions >> MODS to MARC 21 Mapping

MODS 3.4 to MARC 21 Mapping

October 2012

This mapping is for use with MODS Schema version 3.4 located online at: http://www.loc.gov/standards/mods/v3/mods-3-4.xsd


Table of Contents

  1. Introduction
  2. Contents of Elements
  3. Mapping
  4. Leader and Fixed Fields

1. Introduction

This mapping provides equivalencies between data elements in MODS and those in MARC 21. Initially, a MODS record is converted to MARCXML. Further conversion work is required to create a MARC 21 (ISO 2709) record. Since MARC 21 includes many more data elements than MODS, this mapping suggests a single MARC 21 equivalent for each MODS element, although there may be other equivalents. The MARC 21 to MODS mapping provides multiple MARC 21 data elements appropriate for a given MODS element.

This document is intended for use in first converting a MODS record to MARCXML and then to a MARC 21 (ISO 2709) record. Since MODS data is not as granular as MARC 21 data and some MARC 21 subfields are concatenated into one MODS field, some data may map to inappropriate MARC 21 fields or subfields. Consequently, some conversions will result in some loss of data identification.

 


2. Contents of Elements

titleInfo note
name subject
typeOfResource classification
genre relatedItem
originInfo identifier
language location
physicalDescription accessCondition
abstract part
tableOfContents extension
targetAudience recordInfo


3. Mapping

<titleInfo>  
<title> with no <titleInfo> type attribute and 245 $a with ind1=1
  <subTitle> 245 $b
  <partNumber> 245 $n
  <partName> 245 $p
  <nonSort></nonSort> ind2=number of characters in content;
ind2=0 if <nonSort> not present
   
<title> with <titleInfo> type="abbreviated" and 210 $a with ind1=1 ind2=blank
  <subTitle> 210 $b
   
<title> with <titleInfo> type="translated" and 246 $a with ind2=1
  <subTitle> 246 $b
  <partNumber> 246 $n
<partName> 246 $p
   
<title> with <titleInfo> type="alternative" and 246 $a ind1=3 ind2=blank
  <subTitle> 246 $b
<partNumber> 246 $n
  <partName> 246 $p
  displayLabel="content" 246 $i
   
<title> with <titleInfo> type="uniform" and 240 $a with ind1=1
  with <name><role><roleTerm> with type="code"  
  cre or  
  <name><role><roleTerm> with type="text"  
  creator and  
<partNumber> 240 $n
  <partName> 240 $p
  <nonSort></nonSort> 240 ind2=number of characters in data;
    240 ind2=0 if <nonSort> not present
   
<title> with <titleInfo> type="uniform" and 130 $a with ind2=blank
  <partNumber> 130$n
  <partName> 130 $p
  <nonSort></nonSort> 130 ind1=number of characters in data;
130 ind1=0 if <nonSort> not present
<titleInfo altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 245, 210, 246,130, 240, 730, 740 (with subfields as above)

<name>  
<name> with no type attribute 720 ind1=blank ind2=blank
  <namePart> 720 $a
<name> with type="personal" and 100 ind1=1 ind2=blank
  <role><roleTerm> with type="text"
  creator or  
  <role><roleTerm> with type="code"  
  cre  
<name> with type="personal" and no 700 ind1=1 ind2=blank
  <role><roleTerm> with type="text"  or
<role><roleTerm> with type="text" is not "creator" or
  <role><roleTerm> with type="code" is not "cre"    
  <namePart> 100, 700 $a
  <namePart> with type="date" 100, 700 $d
  <namePart> with type="termsOfAddress" 100, 700 $c [for titles associated with a name]
  <role><roleTerm> with type="text" 100, 700 $e
  creator    
  <affiliation> 100, 700 $u
  <role><roleTerm> with type="code" 100, 700 $4
  content    
  <displayForm> 887 $a ind1=blank ind2=blank
  <description> 100, 700 $g
   
<name> with type="family" and 100, 700 ind1=1 ind2=3
  <role><roleTerm> with type="text"
  creator or  
  <role><roleTerm> with type="code"  
  cre  
   
<name> with type="corporate" and 110 ind1=2 ind2=blank
  <role><roleTerm> with type="text"
  creator or  
  <role><roleTerm> with type="code"  
  cre  
<name> with type="corporate" and no 710 ind1=2 ind2=blank
  <role><roleTerm> with type="text" or
<role><roleTerm> with type="text" is not "creator" or
  <role><roleTerm> with type="code" is not "cre"    
  <namePart> (1st usage) 110, 710 $a
  <namePart> (each additional) 110, 710 $b
  <role><roleTerm> with type="text" 110, 710 $e
  content    
  <role><roleTerm> with type="text" 110, 710 $4
  content    
  <displayForm> 887 $a ind1=blank ind2=blank
  <description> 110, 710 $g
   
<name> with type="conference" and 111 ind1=2 ind2=blank
    <role><roleTerm> with type="text"
  creator or  
  <role><roleTerm> with type="code" 711 ind1=2 ind2=blank
  cre
<name> with type="conference" and no
  <role><roleTerm> with type="text" or
<role><roleTerm> with type="text" is not "creator" or
  <role><roleTerm> with type="code" is not "cre"  
       
  <namePart> 111, 711 $a
  <role><roleTerm> with type="text" 111, 711 $4
  content    
  <role><roleTerm> with type="code" 111, 711 $4
  content    
  <displayForm> 887 $a ind1=blank ind2=blank
  <description> 111, 711 $g
<name altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 100, 700, 110, 711, 111, 711, 720 (with subfields as above)

<typeOfResource> Leader/06
text a ; also: Establish 008=BK if
<originInfo><issuance>="monographic"
Establish 008=SE if
<originInfo><issuance>="continuing"
text and attribute manuscript="yes" t ; also:
Establish 008=BK
cartographic e ; also:
Establish 008=MP
cartographic and attribute manuscript="yes" f ; also:
Establish 008=MP
notated music c ; also:
Establish 008=MU
notated music and attribute manuscript="yes" d ; also:
Establish 008=MU
sound recording-nonmusical i; also:
Establish 008=MU
sound recording-musical j ; also:
Establish 008=MU
still image k ; also:
Establish 008=VM  note that projected still images are more appropriately included in code g (e.g. slides)
moving image g ; also:
Establish 008=VM
three dimensional object r ; also:
Establish 008=VM
software, multimedia m ; also:
Establish 008=CF
mixed material p ; also:
Establish 008=MM
if attribute collection="yes" Leader/07 "c"
 
NOTE: Establish 008 based on above Leader/06 codes and specified 008. The first typeOfResource determines type of MARC 008.
 If there is more than one typeOfResource, subsequent instances are mapped to 006/00 with code as above.

<genre>  
<genre authority="marcgt"> Various positions; map to 008 type previously established by typeOfResource.
In cases of 007, establish the 007 and map.
When there are multiple positions (e.g. 008/24-27) map each succeeding position until exhausted.
abstract or summary   008/24-27 BK, SE (code a)
art original   008/33 VM (code a)
art reproduction   008/33 VM (code c)
atlas   008/25 MP (code e) and
    007/01 MP (code d) with 007/00 (code a)
autobiography   008/34 BK (code a)
    008/30-31 MU (code a)
bibliography   008/24-27 BK, SE (code b)
biography   008/34 BK (code d)
008/30-31 MU (code b)
calendar   008/24-27 BK, SE (code 5)
catalog   008/24-27 BK, SE (code c)
chart   008/33 VM (code n)
comic or graphic novel   008/24-27 BK, SE (code 6)
comic strip   008/33 BK (code c)
conference publication   008/29 BK, SE (code 1)
008/30-31 MU (code c)
database   008/21 SE (code d)
008/26 CF (code e)
dictionary   008/24-27 BK, SE (code d)
diorama   008/33 VM (code d)
directory   008/24-27 BK, SE (code r)
discography   008/24-27 BK, SE (code k)
drama   008/33 BK (code d)
008/30-31 MU (code d)
encyclopedia   008/24-27 BK, SE (code e)
essay   008/33 BK (code e)
008/30-31 MU (code e)
festschrift   008/30 BK (code 1)
fiction   008/33 BK (code 1)
008/30-31 MU (code f)
filmography   008/24-27 BK, SE (code q)
filmstrip   008/33 VM (code f)
flash card   008/33 VM (code o)
folktale   008/30-31 MU (code o)
font   008/26 CF (code f)
game   008/26 CF (code g)
graphic   008/33 VM (code k)
globe   008/25 MP (code d) and 007/00 (code d)
handbook   008/24-27 BK, SE (code f)
history   008/30-31 MU (code h)
humor, satire   008/33 BK (code h)
008/30-31 MU (code k)
index   008/24-27 BK, SE (code i)
instruction   008/30-31 MU (code i)
interview   008/30-31 MU (code t)
kit   008/33 VM (code b)
language instruction   008/30-31 MU (code j)
law report or digest   008/24-27 BK, SE (code w)
legal article   008/24-27 BK, SE (code g)
legal case and case notes   008/24-27 BK, SE (code v)
legislation   008/24-27 BK, SE (code l)
letter   008/33 BK (code i)
loose-leaf   008/21 SE (code l)
map   007/01 MP (code j) with 007/00 (code a)
memoir   008/30-31 MU (code m)
microscope slide   008/33 VM (code p)
model   008/33 VM (code q) and
    007/01 MP (code q) with 007/00 (code a)
motion picture   008/33 VM (code m)
newspaper   008/21 SE (code n)
novel   008/33 BK (code f)
numeric data   008/26 CF (code a)
offprint   008/24-27 BK (code 2)
patent   008/24-27 BK (code j)
periodical   008/21 SE (code p)
picture   008/33 VM (code i)
poetry   008/33 BK (code p)
    008/30-31 MU (code p)
programmed text   008/24-27 BK, SE (code p)
realia   008/33 VM (code r)
rehearsal   008/30-31 MU (code r)
remote sensing image   007/01 MP (code r) with 007/00 (code a)
reporting   008/30-31 MU (code g)
review   08/24-27 BK, SE (code o)
series   008/21 SE (code m)
short story   008/33 BK (code j)
slide   008/33 VM (code s)
sound   008/26 CF (code h)
008/30-31 MU (code s)
speech   008/33 BK (code s)
008/30-31 MU (code l)
standard or specification   008/24-27 BK (code u)
statistics   008/24-27 BK, SE (code s)
survey of literature   008/24-27 BK, SE (code n)
technical drawing   008/33 VM (code l)
technical report   008/24-27 BK, SE (code t)
theses   008/24-27 BK, SE (code m)
toy   008/33 VM (code w)
transparency   008/33 VM (code t)
treaty   008/24-27 BK, SE (code z)
videorecording   008/33 VM (code v)
web site   008/21 SE (code w)
yearbook   008/24-27 BK, SE (code y)
 
NOTE: Those MARC elements that have multiple positions (008/24-27BK, SE, 008/30-31, MU) allow for multiple genre codes. If more than one instance of <genre> place in succeeding positions until positions exhausted. If more codes than positions, leave out subsequent ones.
NOTE: If 008 is established to a variety other than that in the mapping (based on typeOfResource), retain data and map to: 655 $a ind1=blank ind2=7 $2="marcgt".
   
<genre> with authority is not "marcgt" 655 $a ind1=blank ind2=7
<genre> with authority="content" and type="musical composition" 047 add $2=contents of authority attribute
<genre> with authority="content" 336 add $2=contents of authority attribute
<genre altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 047,336,655 (with subfields as above)

<originInfo>  
<place><placeTerm> with type="code" and authority="marccountry" 008/15-17; if multiple <place><placeTerm type="code"> repeat first and put subsequent in 044 $a, repeating $a
<place><placeTerm> with type="code" and authority="iso3166" 044 $c ind1=blank ind2=blank
   
<place><placeTerm> with type="text" 260 $a ind1=blank ind2=blank
<publisher> 260 $b
<dateIssued> or with point="start" or no point attribute 260 $c
<dateIssued> with point="end" 260 $c [Generate a hyphen before date]
   
displayLabel="producer"  264 ind2=0
<place><placeTerm> with type="text" 264 $a
<publisher> 264 $b
<dateOther type="production"> 264 $c
   
displayLabel="publisher"  264 ind2=1
<place><placeTerm> with type="text" 264 $a
<publisher> 264 $b
<dateIssued type="publication"> 264 $c
   
displayLabel="manufacturer"  264 ind2=2
<place><placeTerm> with type="text" 264 $a
<publisher> 264 $b
<dateOther type="distribution"> 264 $c
   
displayLabel="distributor"  264 ind2=3
<place><placeTerm> with type="text" 264 $a
<publisher> 264 $b
<dateOther type="manufacture"> 264 $c
   
<dateIssued> with encoding="marc" 008/07-10 (008/06="s")
<dateIssued> with point="start" or no point attribute and 008/07-10 (008/06="m")
  encoding="marc"
<dateIssued> with point="end" and 008/11-14 (008/06="m")
  encoding="marc"
<dateIssued> with qualifier="questionable" 260 $c [Generate a question mark after the date]
<dateCreated> 260 $g
<dateCaptured> with encoding="iso8601" 033 ind1=0 ind2=0 $a
<dateCaptured> with point="start" or no point attribute and 033 ind1=2 ind2=0 first $a
  encoding="iso8601"
<dateCaptured> with point="end" and 033 ind1=2 ind2=0 second $a
  encoding="iso8601"
<dateOther> 046$c
<dateOther> with point="start" or no point attribute 046$c
<dateOther> with point="end" 046$e
<dateOther> with type

518 with "contents of type attribute":

<dateModified> 046$j
<dateValid> with point="start" or no point attribute 046$m
<dateValid> with point="end" 046$n
<copyrightDate> 260 $c [Generate a "c" before the date] (008/06="s")
   
<edition> 250 $a ind1=blank ind2=blank
<issuance> and Leader/07
  value: continuing Leader/07 (code s)
[Note that some may be more appropriately mapped to "b"]
  value: monographic Leader/07 (code m)
[Note that some may be more appropriately mapped to "a"]
  value: multipart monograph Leader/07 (code m) and Leader/19 (code a)
  value: single unit Leader/07 (code m)
  value: integrating resource Leader/07 (code i)
  value: serial Leader/07 (code s)
<frequency> 310 $a ind1=blank ind2=blank
<frequency> with authority ="marcfrequency" 008/18 CR
<frequency authority="marcfrequency">="Annual" 008/18 (code a)
<frequency authority="marcfrequency">="Bimonthly" 008/18 (code b)
<frequency authority="marcfrequency">="Semiweekly" 008/18 (code s)
<frequency authority="marcfrequency">="Daily" 008/18 (code d)
<frequency authority="marcfrequency">="Biweekly" 008/18 (code e)
<frequency authority="marcfrequency">="Semiannual" 008/18 (code f)
<frequency authority="marcfrequency">="Biennial" 008/18 (code g)
<frequency authority="marcfrequency">="Triennial" 008/18 (code h)
<frequency authority="marcfrequency">="Three times a week" 008/18 (code i)
<frequency authority="marcfrequency">="Three times a month " 008/18 (code j)
<frequency authority="marcfrequency">="Continuously updated" 008/18 (code k)
<frequency authority="marcfrequency">="Monthly" 008/18 (code m)
<frequency authority="marcfrequency">="Quarterly" 008/18 (code q)
<frequency authority="marcfrequency">="Semimonthly" 008/18 (code s)
<frequency authority="marcfrequency">="Three times a year " 008/18 (code t)
<frequency authority="marcfrequency">="Unknown" 007/00 (code u)
<frequency authority="marcfrequency">="Weekly" 007/00 (code w)
<frequency authority="marcfrequency">="Other" 007/00 (code z)
<originInfo altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 044, 260, 046, 033, 250, 310, 321 (with subfields as above)

<language>  
with objectPart 041
    (use $a as a default if a specific subfield below is not applicable)
objectPart="text/sound track " 041 $a
objectPart="summary or abstract" 041 $b
objectPart="sung or spoken text" 041 $d
objectPart="librettos" 041 $e
objectpart="table of contents" 041 $f
objectPart="accompanying material other than librettos" 041 $g

objectPart="original and/or intermediate translations of text"

041 $h
objectPart="subtitles or captions" 041 $j
<language><languageTerm> with type="code" and authority="iso639-2b" 008/35-37
  additional languages add 041$a ind1=0 ind2=blank
    (repeat $a for multiple language codes)
<language><languageTerm> with type="code" and authority="iso639-3" 041 $a and $2=is639-3 ind1=0 ind2=7
<language><languageTerm> with type="code" and authority="rfc3066" 041 $a and $2=rfc3066 ind1=0 ind2=7
<language><languageTerm> with type="code" and authority="rfc4646" 041 $a and $2=rfc4646 ind1=0 ind2=7
<language><scriptTerm> with type="text" 546 $b
<language altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 041, 546 (with subfields as above)

<physicalDescription>
<digitalOrigin>="reformatted digital" 007/11 CF (code a) with 007/00-10 (c|||||||||)
<digitalOrigin>="digitized microfilm " 007/11 CF (code b) with 007/00-10 (c|||||||||)
<digitalOrigin>="digitized other analog " 007/11 CF (code u) with 007/00-10 (c|||||||||)
<form authority="gmd"> 245$h
<form authority="marcform">  
  and value:  
<form authority="marccategory">="map" 007/00 (code a)
<form authority="marccategory">="electronic resource " 007/00 (code c)
<form authority="marccategory">="globe" 007/00 (code d)
<form authority="marccategory">="tactile material " 007/00 (code f)
<form authority="marccategory">="projected graphic " 007/00 (code g)
<form authority="marccategory">="microform" 007/00 (code h)
<form authority="marccategory">="nonprojected graphic " 007/00 (code k)
<form authority="marccategory">="motion picture " 007/00 (code m)
<form authority="marccategory">="kit" 007/00 (code o)
<form authority="marccategory">="notated music " 007/00 (code q)
<form authority="marccategory">="remote sensing image" 007/00 (code r)
<form authority="marccategory">="sound recording " 007/00 (code s)
<form authority="marccategory">="text" 007/00 (code t)
<form authority="marccategory">="videorecording" 007/00 (code v)
<form type="media"> 337$a and $2=contents of attribute authority
<form type="carrier"> 338$a and $2=contents of attribute authority
<form type="material"> 340$a
<form type="technique"> 340$d
braille 008/23 BK, MU, SE, MM (code f)
008/29 MP, VM (code f)
electronic 008/23 BK, MU, SE, MM (code s)
008/29 MP, VM (code s)
008/26 CF (code m)
microfiche 008/23 BK, MU, SE, MM (code b)
008/29 MP, VM (code b)
microfilm
008/23 BK, MU, SE, MM (code a)
008/29 MP, VM (code a)
print 008/23 BK, MU, SE, MM (code blank)
008/29 MP, VM (code blank)
<extent> 300 $a ind1=blank ind2=blank
  except
256 $a ind1=blank ind2=blank
    if
  form authority="marcform"
    followed by
  value "electronic"
    and
<typeOfResource>="software, multimedia"
<internetMediaType> 856 $q
  append to 856 mapped from <identifier>
<reformattingQuality>  
value: access 007/13CF code "a"
value: preservation 007/13CF code "p"
value: replacement 007/13CF code "r"
<physicalDescription altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 245, 337, 338, 340, 300, 256, 856 (with subfields as above)

<abstract>  
<abstract> with 520 $a ind1=blank ind2=blank
  xlink:simpleLink="content" 520 $u
  add attribute displayLabel ="Summary" 520 ind1=# (blank)
  add attribute displayLabel ="Subject" 520 ind1=0
  add attribute displayLabel ="Review" 520 ind1=1
  add attribute displayLabel ="Scope and content " 520 ind1=2
  add attribute displayLabel ="Abstract" 520 ind1=3
  add attribute displayLabel ="Content advice " 520 ind1=4
<abstract altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 520 (with subfields as above)

<tableOfContents>  
<tableOfContents> with 505 $a ind1=0 ind2=blank
  xlink:simpleLink="content" 505 $u
  attribute displayLabel="Contents" 505 ind1=0
  attribute displayLabel="Incomplete contents" 505 ind1=1
  attribute displayLabel="Partial contents" 505 ind1=2
<tableOfContents altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 505 (with subfields as above)

<targetAudience>  
<targetAudience> 521 $a ind1=blank ind2=blank
<targetAudience displayLabel="Audience"> 521 $a ind1=blank
<targetAudience displayLabel="Reading grade level " 521 $a ind1=0
<targetAudience displayLabel="Interest age level " 521 $a ind1=1
<targetAudience displayLabel="Interest grade level "> 521 $a ind1=2
<targetAudience displayLabel="Special audience characteristics"> 521 $a ind1=3
<targetAudience displayLabel="Motivation or interest level "> 521 $a ind1=4
   
<targetAudience authority="marctarget"   various positions
  and value:   008/22 BK, SE, CF, MU, VM
  adolescent   code "d"
  adult   code "e"
  general   code "g"
  juvenile   code "j"
  preschool   code "a"
  specialized   code "f"
<targetAudience altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 521 (with subfields as above)

<note>  
<note> with no type or uri attribute 500 $a ind1=blank ind2=blank
<note> with type= 5XX $a (a suggested list with mappings will be provided at a later date); if no appropriate specific field, use 500 $a
  appropriate name assigned, e.g.
  xlink:simpleLink="content" 856 $u
<note> with type= 511 $a
  "performers"  
<note> with type= 518 $a
  "venue"  
<note> with type= 245 $c
  "statement of responsibility"  
<targetAudience altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 245$c, 362$a$z, 5XX (with subfields as above)

<subject>  
<subject authority="lcsh"> ind2=0
<subject authority="lcshac"> ind2=1
<subject authority="mesh"> ind2=2
<subject authority="csh"> ind2=5
<subject authority="nal"> ind2=3
<subject authority="rvm"> ind2=6
<subject authority="content"> ind2=7 if other value in authority; value in $2
 
Set 600, 610, 611, 630, 648, 650, 651 indicators based on <subject authority> attribute
First MODS subtag determines MARC tag:
   
<topic> 650 $a ind1=1
<name> with type="personal" 600 ind1=1 ind2 see above
<namePart> 600 $a
<namePart> with type="termsOfAddress" 600 $c [for titles associated with a name]
<role><roleTerm> with type="text" 600 $e
  "content"  
<affiliation> 600 $u
<role><roleTerm> with type="code" and authority="marcrelator"> 600 $4
  "content"  
   
<name> with type="corporate" 610 ind1=2 ind2 see above
<namePart> (1st usage) 610 $a
<namePart> (each additional) 610 $b
<role><roleTerm> with type="text" 610 $e
  "content"  
<role><roleTerm> with type="code" and authority="marcrelator" 610 $4
  "content"  
   
<name> with type="conference" 611 ind1=2 ind2 see above
<namePart> 611 $a
<role><roleTerm> with type="code" and  authority="marcrelator" 611 $4
  "content"  
   
<title> 630 $a ind1=0
   if <nonSort> not present
   if <nonSort> is present
ind1= number of characters in content
ind2 see above
<partName> 630 $p
<partNumber> 630 $n
   
<geographic> 651 $a ind1=blank ind2 see above
<temporal> 650 $a
  Further subtags after the first in following subfields:
<topic> $x in appropriate field based on first tag
<geographic> $z in appropriate field based on first tag
<temporal> $y in appropriate field based on first tag
   
<temporal> with encoding="iso8601" 045 $b ind1=0 ind2=blank
<temporal> with  
  point="start" and encoding="iso8601" 045 $b ind1=2 ind2=blank
<temporal> with  
  point="end" and encoding="iso8601" 045 repeat $b
     
<geographicCode> with authority="marcgac" 043 $a
<geographicCode> with authority="iso3166" 043 $c
     
<subject><hierarchicalGeographic> ind1=blank ind2=blank
<country> 662 $a
<province> 662 $b
<region> 662 $a
<state> 662 $b
<territory> 662 $a
<county> 662 $c
<city> 662 $d
<island> 662 $a
<area> 662 $g
<citySection> 662 $e
<extraterrestrialArea> 662 $h
   
<subject><cartographics> 255 ind1=blank ind2=blank
<coordinates> 255 $c
<scale> 255 $a
<projection> 255 $b
   
<subject><occupation> 656 $a
   
<subject><genre> 6XX $v
<subject altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 600, 610, 611, 630, 648, 650, 651, 653, 656, 662, 752, 045, 043, 034, 255 (with subfields as above)

<classification>
<classification> with authority="lcc" 050 $a ind1=blank ind2=0
     if
  <recordContentSource>="DLC"
     or
  "Library of Congress"
     else ind2=4
<classification> with authority="ddc" 082 $a ind1=0 ind=blank
   and edition="content"    add $2
<classification> with authority="udc" 080 $a ind1=blank ind2=blank
<classification> with authority="nlm" 060 $a ind1=blank ind2=4
<classification> with authority="sudocs" 086 $a ind1=0 ind2=blank
<classification> with authority="candocs" 086 $a ind1=1 ind2=blank
<classification> with authority="content" 084 $a ind1=blank ind2=blank
     add $2
<classification> with displayLabel="content of subfield 050 $3" 050 $3
<classification altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 050, 082, 080, 060, 086, 084 (with subfields as above)


<relatedItem> Establish field using <relatedItem> type attribute:
<relatedItem> with no type specified 787 ind1=0 ind2=blank
<relatedItem> with type="preceding" 780 ind1=0 ind2=0
<relatedItem> with type="succeeding" 785 ind1=0 ind2=0
<relatedItem> with type="otherFormat" 776 ind1=0 ind2=blank
<relatedItem> with type="original" 534 ind1=blank ind2=blank
<relatedItem> with type="host" 773 ind1=0 ind2=blank
<relatedItem> with type="constituent" 774 ind1=0 ind2=blank
<relatedItem> with type="otherVersion " 775 ind1=0 ind2=blank
<relatedItem> with type="series" 440 or 8XX (depending on name type)
  800 if <name> with type="personal"
  810 if <name> with type="corporate"
  811 if <name> with type="conference"
<relatedItem> with type="isReferencedBy" 510
<relatedItem> with displayLabel="content of subfield $i or $3" 76X-78X $i or
773 $3
   
title subelement:  
<title> and $t in 773, 774, 775, 776, 780, 785, 787, 534; $t in 800
  <partNumber> $g in 774, 775, 776, 780, 785, 787, 534; $n in 440
  <partName> $g in 774, 775, 776, 780, 785, 787, 534; $p in 440
   
<title> with no <titleInfo> type attribute and 787 $t
  <partNumber> 787 $g
   
<title> with <titleInfo> type="abbreviated" and 787 $p
  <partNumber> 787 $g
   
<title> with <titleInfo> type="uniform" and 787 $s
  <partNumber> 787 $g
   
name subelement:  
<name> with type=personal"  
  <namePart> $a in 773, 774, 775, 776, 780, 785, 787, 534; $a in 800
  <namePart> with type="date" append to data from first <namePart> in $a in 773, 774, 775, 776, 780, 785, 787, 534; $d in 800
     
  <namePart> with type="termsOfAddress" 800 $c [for titles associated with a name]
  <role><roleTerm> with type="text" append to data after all instances of <namePart>, separated by comma in 773, 774, 775, 776, 780, 785, 787, 534; $e in 800
  <role><roleTerm> with type="code" append to data after all instances of <namePart>, separated by comma in 773, 774, 775, 776, 780, 785, 787, 534; $4 in 800
<name> with type="corporate"
  <namePart> append to data from first <namePart> in $a in 773, 774, 775, 776, 780, 785, 787, 534; 810$a (first instance) and 810$b (subsequent instances)
  <role><roleTerm> with type="text" append to data after all instances of <namePart>, separated by comma in 773, 774, 775, 776, 780, 785, 787, 534; $e in 810
  <role><roleTerm> with type="code" append to data after all instances of <namePart>, separated by comma in 773, 774, 775, 776, 780, 785, 787, 534; $4 in 810
<name> with type="conference"  
  <namePart> append to data from first <namePart> in $a in 773, 774, 775, 776, 780, 785, 787, 534; $a in 811
  <role><roleTerm> with type="code" append to data after all instances of <namePart>, separated by comma in 773, 774, 775, 776, 780, 785, 787, 534; $4 in 811
   
<name> with no type attribute 787 $a
   
physical description subelement:
<physicalDescription>  
<extent> 534 $e; $h in 773, 774, 775, 776, 780, 785, 787
   
note subelement:  
<note> $n in 773, 774, 775, 776, 780, 785, 787, 534
   
identifier subelement:  
<identifier> with no type $o in 773, 774, 775, 776, 780, 785, 787, 534
<identifier> with type="issn" $x in 773, 774, 775, 776, 780, 785, 787, 534
<identifier> with type="isbn" $z in 773, 774, 775, 776, 780, 785, 787, 534
<identifier> with type="uri" 856 $u ind2=2
<identifier> with type="local" $w in 773, 774, 775, 776, 780, 785, 787, 534
   
part subelement  
<part><text> 773 $g
<part>
<detail><number>

<extent><start>
773 $q
[Generate a colon after each repeatable <detail> in numeric order]
[Generate a less than angle bracket < (&lt;) before <partExtent>]

<identifier>  
<identifier> with type="doi" 024 $a $2doi
<identifier> with type="hdl" 024 $a $2hdl
<identifier> with type="isbn" 020 $a ind1=blank ind2=blank
<identifier> with type="isbn" and invalid="yes" 020 $z ind1=blank ind2=blank
<identifier> with type="isrc" 024 $a ind1=0 ind2=blank
<identifier> with type="isrc" and invalid="yes" 024 $z ind1=0 ind2=blank
<identifier> with type="ismn" 024 $a ind1=2 ind2=blank
<identifier> with type="ismn" and invalid="yes" 024 $z ind1=2 ind2=blank
<identifier> with type="issn" 022 $a ind1=blank ind2=blank
<identifier> with type="issn-l" 022 $a ind1=blank ind2=blank
<identifier> with type="issn" and invalid="yes" 022 $z ind1=blank ind2=blank
<identifier> with type="issue number" 028 $a ind1=0 ind2=0
<identifier> with type="lccn" 010 $a ind1=blank ind2=blank
<identifier> with type="lccn" and invalid="yes" 010 $z ind1=blank ind2=blank
<identifier> with type="matrix number" 028 $a ind1=1 ind2=0
<identifier> with type="music publisher" 028 $a ind1=3 ind2=0
<identifier> with type="music plate" 028 $a ind1=2 ind2=0
<identifier> with type="sici" 024 $a ind1=4 ind2=blank
<identifier> with type="sici" and invalid="yes" 024 $z ind1=4 ind2=blank
<identifier> with type="stocknumber" 037 $a ind1=blank ind2=blank
<identifier> with type="uri" 856 $u ind1=blank ind2=blank
<identifier> with type="uri" and attribute 856 $3
<identifier> with type="upc" 024 $a ind1=1 ind2=blank
<identifier> with type="upc" and invalid="yes" 024 $z ind1=1 ind2=blank
<identifier> with type="videorecording 028 ind1=4 $a ind2=0
<identifier altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 856, 020, 024, 022, 028, 010, 037 (with subfields as above)

<location>  
  <physicalLocation> 852 $a

<physicalLocation> with displayLabel="content" 852 $3
  <physicalLocation> with xlink 852 $u

<url> 856 $u

<url> with displayLabel="content" 856 $3

<url> with dateLastAccessed="content" 856 $z

<url> with note="contents of subfield" 856 $z

<url> with access="preview" 856 $3

<url> with access="raw object" 856 $3

<url> with access="object in context" 856 $3

<url> with usage ="primary display" 856 $z
<location altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 852, 856 (with subfields as above)

<accessCondition>  
with type="restrictionOnAccess" 506 $a ind1=blank ind2=blank
with type="useAndReproduction" 540 $a ind1=blank ind2=blank
<acessCondition altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 506, 540 (with subfields as above)

<part> 887 $a ind1=blank ind2=blank
  with $2="mods"
  [Copy MODS elements & values]

<extension> 887 $a ind1=blank ind2=blank
  with $2="mods"
  [Include XML syntax with content]

<recordInfo>  
<recordContentSource> with 040$a
  authority="marcorg"  
<recordCreationDate> with 008/00-05
  encoding="marc"  
<recordChangeDate> with " 005
  encoding="iso8601  
<recordIdentifier> 001
attribute source 003
<languageOfCataloging> and <languageTerm> with 040 $b
  authority="iso639-2b"  

<descriptionStandard> with an authority attribute, e.g., <descriptionStandard authority="marcdescription"> see <http://www.loc.gov/marc/relators/reladesc.html> for controlled values

040 $e
<descriptionStandard authority="aacr"> Leader/18 code a
<recordInfo altRepGroup=" "> transform field as above with altRepGroup and add matching altRepGroup to equivalent MARC 880 field 880$6 = 040, 005, 001, 003 (with subfields as above)


4. Leader and Fixed Fields

A MARC 21 record requires a Leader and field 008 (Fixed-Length Data Elements). Certain character positions in each of these fixed-length fields will need coding, although most will generate default values.

Leader -- Data elements that provide information for the processing of the record. The data elements contain numbers or coded values and are identified by relative character position. The Leader is fixed in length at 24 character positions (00-23) and is the first field of a MARC 21 record. Converted records should include a Leader as follows:

00-04 - Logical record length
  computer-generated, five-character numeric string
05 - Record status
  set to "n" (new)
06 - Type of record
  see above under <typeOfResource>
  if none indicated set to "a" (language material)
07 - Bibliographic level
  if <originInfo><issuance>="monographic, set to "m" (monograph/item)
  if <originInfo><issuance>="continuing", set to "s" (serial)
  if <typeOfResource> with attribute "collection=yes", set to "c" (collection)
Only one value may be used; if more than one of the above values is in a MODS record, consider this in priority order; if none of these values are indicated, set to "m"
08 - Type of control
  set to "blank"
09 - Character coding scheme
  set to "blank"
10 - Indicator count
  set to "2"
11 - Subfield code count
  set to "2"
12-16 - Base address of data
  computer-generated five-character numeric string
17 - Encoding level
  set to "u"
18 - Descriptive cataloging form
  set to "u"
19 - Linked record requirement
  set to "blank"
20-23 - Entry map
  set to "4500"

008: Fixed-length data elements
Establish appropriate 008 according to <typeOfResource> as indicated above. Fill in character positions as follows:

008/00-05 - Date entered on file
  -- see <recordInfo> <recordCreationDate encoding="marc">
  -- if not present, generate a six-character numeric string representing the day the MARC 21 record was created using the following format: yymmdd.
008/06 - Type of date/publication status
  -- if <originInfo><issuance="monographic"> and <dateIssued> is not repeated, set to "s" (single known date/probable date)
  -- if <originInfo><issuance="monographic"> and <dateIssued point="start">, set to "m" (multiple dates)
  -- if <originInfo><issuance="monographic"> and <dateIssued point="end">, set to "m" (multiple dates)
  -- if <originInfo><issuance="continuing"> and <dateIssued point="end" encoding="marc">=9999, set to "c" (continuing resource currently published)
  -- if <originInfo><issuance>="continuing" and <dateIssued point="end" encoding="marc">=[some date], set to "d" (continuing resource ceased publication)
  -- if <originInfo><issuance="continuing"> and <dateIssued point="end" encoding="marc">=uuuu, set to "u" (continuing status status unknown)
  -- if <originInfo> includes <dateIssued> without <issuance>, set to "s" (single known date/probable date)
  -- if <originInfo> includes <dateIssued encoding="marc">, set to "s" (single known date/probable date)
  -- if no data in <dateIssued>, set to fill (|)
008/07-14 - Date 1/Date 2
  -- see above under <originInfo><dateIssued>
  -- if no data, set to fills (|)
008/15-17 - Place of publication, production, or execution
  -- see above under <originInfo><place><placeTerm type="code authority="marccountry">
008/18-34
  -- set as specified above under <genre> and <targetAudience>
  -- set unused character positions to fills (|)
008/38-39
  --set to fills (|)


HOME >> Conversions >> MODS to MARC 21 Mapping

Questions and comments:
Contact Us ( November 27, 2012 )
Legal | External Link Disclaimer