Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

 

Krikri/Heidrun Architecture diagram (PDF)

High-Level Components

Heidrun is a Ruby on Rails application, and most of its functionality is implemented through Krikri, a Rails engine.

Data Models

Metadata models used by Krikri are implemented using ActiveTriples, an ActiveModel-like interface for Resource Description Framework graphs. DPLA has produced the dpla_map gem, which implements ActiveTriples models for the DPLA Metadata Application Profile. A small number of Krikri models are implemented using ActiveRecord.

Metadata Harvesting, Mapping, and Enrichment

Krikri implements a number of harvesters used to bring metadata into Heidrun. Metadata mapping is implemented using a mapper, which uses the mapping domain specific language to instantiate DPLA MAP graphs.

Persistence and indexing

Graphs generated by the application are persisted in Apache Marmotta, a triple store that implements the Linked Data Platform 1.0 Recommendation. In our deployment, Marmotta stores its backend data in PostgreSQL, along with objects associated with ActiveRecord-based models.

Presentation

Blacklight

  • No labels