Skip to content
Patrick Hochstenbach edited this page May 16, 2014 · 11 revisions

This page shall explain the basic concepts of Catmandu

To better make use of Catmandu is helps to first understand its core concepts:

Items are the basic unit of data processing in Catmandu. Items may be read, stored, and accessed in many forms.

Importers are Catmandu packages to read items into an application. We provide importers for MARC, JSON, YAML, CSV, Excel, and other input formats. One can also import from remote sources for instance via Atom and OAI-PMH endpoints.

Fixes transforms items, massage the data into any format you like. See Fix language and Fix packages for details.

Stores are database to store your data. With database such MongoDB and ElasticSearch it becomes really, really easy to store quite complicated, deeply nested, items.

Exporters are used to transform items back into JSON, YAML, CSV, Excel or any format you like.

Iterables are the bread and butter of Catmandu. Every stream of data, if it comes from Iterators, Fixes, Stores is an iterator. Iterators can be connected to other iterators to make processing chains. Iterators the memory consumption of your program low: you can process Gigabytes, Terabytes of input data without ever running out of memory.

Extended features

Clone this wiki locally