MODS Elements and Attributes
The MODS top-level elements are listed below in the order in which they appear in the MODS XML schema. All top-level elements are described on individual pages, along with their subelements and attributes. An Alphabetical List of Top-level Elements is included at the end of this page. A separate list of all MODS elements and subelements is linked: Alphabetical Index of MODS Elements and Subelements.
Top-level Elements in MODS
(listed in order, read down each column)
Attributes Used Throughout the MODS Schema
Certain attributes may be applied to multiple MODS elements, as indicated in the MODS schema.
Language-Related and Other Attributes: lang - xml:lang - script - transliteration - altRepGroup - displayLabel
Date Attributes: encoding - point - keydate - qualifier
Linking Attributes: ID - xlink
Language-Related and Other Attributes
Certain language and related attributes (e.g., script and transliteration attributes) may be applied to most MODS elements, as indicated in the . They are defined below:
- lang – This attribute is used to specify the language used within individual elements, using the codes from ISO 639-2/b. This is equivalent to authority="iso639-2b" used with the <language> element (which gives a language of the resource described in the record), but is applied to the language used as content
of the metadata elements. There is no MARC 21 equivalent for this attribute since language cannot be currently indicated at the element level.
<description lang="eng">District Commissioner</description>
<description lang="fre">Préfet de région</description>
- xml:lang – In the XML standard, this attribute is used to specify the language used within individual elements, using specifications in RFC 3066. RFC 3066 ("Request for Comments," which defines Internet practice) uses the two-character ISO 639-1 codes along with three-character ISO 639-2 codes
for those languages not given in 639-1. This is equivalent to authority="rfc3066" used with the <language> element (which gives a language of the resource described in the record), but is applied to the language used as content of the metadata elements. There
is no MARC 21 equivalent for this attribute since language cannot be currently indicated at the element level.
<titleInfo xml:lang="fr" type="translated">
<title>homme qui voulut être roi</title>
- script – This attribute specifies the script used within individual elements, using codes from ISO 15924 (Code for the representation of names of scripts). There is no MARC 21 equivalent for this attribute.
- transliteration – This attribute specifies the transliteration technique used within individual elements. There is no standard list of transliteration schemes available, although one may be developed. There is no MARC 21 equivalent for
- altRepGroup – This attribute is used to link alternate representations of the same element content, such as different scripts, transliterations, and translations. The same attribute value is applied to each of the element instances to be linked. The attribute applies to all MODS top-level elements with the exception of <relatedItem>, however, it applies to those top-level elements when used within <relatedItem>.
<name type="personal" script="Latn" altRepGroup="8">
<namePart>Būrī, Muhammad al-Tihāmī,</namePart>
<namePart type="date">d. 1827</namePart>
<name type="personal" script="Arab" altRepGroup="8">
<namePart>بوري، محمد التهامي،</namePart>
<namePart type="date">d. 1827</namePart>
- displayLabel – This attribute provides additional text associated with the element if needed for display purposes. The preferred text with its capitalization should be included, but not delimiters such as colons.
<titleInfo type="alternative" displayLabel="Spine title">
<title>Science and public affairs</title>
<targetAudience displayLabel="grade level">kindergarten<targetAudience>
<classification authority="lcc" displayLabel="Library of Congress classification">ML410.B3</classification>
Certain date attributes may be applied to some MODS elements, as indicated in the schema. They are defined below:
- encoding – The following values are used with the encoding attribute:
- w3cdtf – This value identifies dates following the W3C profile of ISO 8601, Date and Time Formats, that specifies the extended format for dates using the pattern: YYYY-MM-DD. If hours, minutes, and seconds are also needed the following pattern is used: YYYY-MM-DDThh:mm:ss.
- iso8601 – This value identifies formatted dates allowed in ISO 8601 which use the alternative described as "basic" (i.e., with minimum number of separators) rather than "extended" (i.e., with separators). This alternative specified in the standard
uses the following date patterns: YYYY; YYYY-MM if only year and month given; YYYYMMDD if year, month, and day are included (hours, minutes, seconds may also be added: Thhmmss.s). It is also used for other encodings specified in ISO 8601, e.g., date ranges,
which are in the form of <date/time>/<date/time>.
- marc – This value identifies formatted according to MARC 21 rules in field 008/07-14 for dates of publication/issuance. Thus, this would only apply to the attribute in <dateIssued>. Examples include: YYYY (for year), MMDD (for month and day), 19uu
(MARC convention showing unknown digits in a year date), 9999 (MARC convention showing that the end year date has not occurred or is not known). See Legal Characters section under field 008/06 of MARC Bibliographic
- edtf – This value is used for dates coded according to Extended Date/Time Format which in consistent with ISO 8601 but extends it to express special forms of dates that are not covered by w3cdtf and iso8601, such as open ended ranges.
- temper – This value is used for dates coded according to Temporal Enumerated Ranges . TEMPER is a simple date and time syntax for representing points, lists, and ranges of timestamps. The syntax is designed to be easy to parse and for humans to read, and compatible with basic lexical sorting algorithms.
- point – If no point attribute is specified, date is assumed to be a single date. The following values are used with the point attribute:
- start – This value is used for the first date of a range (or a single date, if used).
- end – This value is used for the end date of a range.
- keyDate – The following value is used with the keyDate attribute:
- yes – This value is used so that a particular date may be distinguished among several dates. Thus for example, when sorting MODS records by date, a date with keyDate="yes" would be the date to sort on. It should occur only for one date at most in
a given record.
<dateOther keyDate="yes">20030328</dateOther> <dateOther>20030427</dateOther>
- qualifier – The following values are used with the qualifier attribute:
- approximate – This value is used to identify a date that may not be exact, but is approximated, such as "ca. 1972".
- inferred – This value is used to identify a date that has not been transcribed directly from a resource, such as "[not before 1852]".
- questionable – This value is used to identify a questionable date for a resource, such as "1972?".
<dateIssued qualifier="questionable" point="start">1894?</dateIssued>
Certain linking attributes may be applied to some MODS elements, as indicated in the schema. They are defined below:
Alphabetical List of Top Level Elements in MODS
This section provides an alphabetical list of the top-level elements in MODS. All elements, subelements, and attributes are described on their individual pages (click on element link).
July 21, 2016