Document and Trie Processing.

An Open Source iOS, Mac OS X, and Linux C-Library

Version: 0.1.1

LibDocument provides functions and data structures for working with documents and prefix trees (tries). It is currently being used in CODAMONO's commercial products BioInterchange (Mac OS X and Linux) and Brightword (iOS).

Contributing: Even though the library is stable in large parts, it needs some more work in particular when it comes to error handling and proper support for UTF. Error handling stubs are mostly in place (if statements with an empty code block), but function signatures need to be extended with an error-code pointer (such as f(..., ldoc_err_t* err)).

License: Mozilla Public License, v. 2.0

GitHub Repo:


Header: document.h

Unit-tests/examples: document.cpp

Functions and data structures for creating annotated documents that are treelike (cross references permitted). Serialization functions for HTML, JSON, and Python objects.

Tries (Prefix Trees)

Header: trie.h

Unit-tests/examples: trie.cpp

Functions and data structures for CRUD operations on tries (prefix trees).


Header: json.h

Unit-tests/examples: json.cpp

JSON and JSON-LD readers that create annotated document representations.