Module: NEU

Defined in:
lib/neu-mods.rb,
lib/neu/mods/version.rb,
lib/neu/mods/builders.rb,
lib/neu/mods/document.rb,
lib/neu/mods/selectors.rb,
lib/neu/mods/namespaces.rb,
lib/neu/mods/projection.rb,
lib/neu/mods/canonicalize.rb,
lib/neu/mods/language_codes.rb,
lib/neu/mods/text_normalizer.rb,
lib/neu/mods/projection/dates.rb,
lib/neu/mods/projection/names.rb,
lib/neu/mods/projection/access.rb,
lib/neu/mods/projection/titles.rb,
lib/neu/mods/projection/support.rb,
lib/neu/mods/projection/subjects.rb,
lib/neu/mods/projection/languages.rb,
lib/neu/mods/projection/identifiers.rb,
lib/neu/mods/projection/origin_info.rb,
lib/neu/mods/projection/name_display.rb,
lib/neu/mods/projection/related_items.rb,
lib/neu/mods/projection/physical_description.rb

Overview

Northeastern-flavored MODS v3 projection + selection for the DRS.

A Nokogiri-native, dependency-light reading/projection contract over MODS documents, shared by Cerberus (front end) and Atlas (API backend). Pure functions over a document -- no Rails, no persistence, no HTTP. It answers two questions and nothing else:

* "Where is X?"            -> Selectors (live nodes; serve read AND write)
* "What does this project to?" -> Projection (plain data; for index/display)

Top-level conveniences delegate to the canonicalization helpers so callers can write NEU::MODS.whitespace_equivalent?(a, b) etc. without reaching into the submodules.

Defined Under Namespace

Modules: MODS