Language is a top-level element in many metadata schema, including MODS. It is also available as an attribute for many other elements inside of a schema. Language codes at the top level describe the languages included in the resource being described. Language codes at the sub-element or attribute level instead describe the languages those elements are written in. This allows the flexibility necessary to describe an object written in Latin with a record written in English and Spanish, and properly annotate which languages are used for the various parts. The language column in your data should include information about the language of the content of your resource. If you are using multiple languages in your records, your columns should indicate those languages in their own titles. Items which contain multiple languages may also be described using an additional column which should be titled "Language Notes".
Language is required when applicable and repeatable.
<language> is a container element; the actual language values are recorded in the subelement <languageTerm>.
If the content of the resource is in more than one language, the objectPart attribute for <language> is used and the <language> element is repeated.
<language> may also be expressed in conjunction with each element in a MODS encoding by means of the xml:lang and/or langattributes to designate the language used in the metadata value; see the section on language in Attributes Used Throughout the MODS Schema for more information.
The subelement <languageOfCataloging> under <recordInfo> is used to give the language of the metadata in the record as a whole. It designates the language of the metadata record, while this <language> element designates the language of the resource.
<language> <languageTerm type="text">English</languageTerm> <languageTerm type="code" authority="iso639-2b">eng</languageTerm> </language>
Spanish book with introduction in English
<language objectPart="introduction"> <languageTerm type="text">English</languageTerm> <languageTerm type="code" authority="iso639-2b">eng</languageTerm> </language> <language objectPart="main text"> <languageTerm type="text">Spanish</languageTerm> <languageTerm type="code" authority="iso639-2b>spa</languageTerm> </language>
Noting the language of the text for the language term
<language objectPart="introduction"> <languageTerm type="text" lang="eng">English</languageTerm> <languageTerm type="code" authority="iso639-2b">eng</languageTerm> </language>