Skip to content

Instantly share code, notes, and snippets.

@caschwartz
Last active October 5, 2015 17:28
Show Gist options
  • Save caschwartz/2844549 to your computer and use it in GitHub Desktop.
Save caschwartz/2844549 to your computer and use it in GitHub Desktop.
Query language elements in MODS documents and XML version of MARC Code List for Languages
xquery version "1.0-ml";
(: Query language elements in MODS documents and XML version of Library of Congress MARC Code List for Languages :)
declare namespace mods = "http://www.loc.gov/mods/v3";
declare namespace cd = "info:lc/xmlns/codelist-v1";
let $docs := xdmp:directory("/mods/", "infinity")
for $doc in fn:subsequence($docs, 1, 4)//mods:mods/mods:language
let $text := fn:doc("/marc-languages.xml")/cd:codelist/cd:languages/cd:language[cd:code = $doc/mods:languageTerm]/cd:name
let $newNode := <languageTerm type="text" xmlns="http://www.loc.gov/mods/v3">{ fn:data($text) }</languageTerm>
return $newNode
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment