EM Data Architecture and the Python Library
▶ EM Data Architecture and the Python Library (~~7 min)
Prerequisites
Overview
Under the hood: EM stores data as a JSON property graph (not a relational database). The Python library reads and writes this graph, exposes a REST API, and connects Blender with the Heriverse web platform. Node types and qualia vocabularies are defined in JSON files bundled with the code — offline-first.
EM architecture: Blender → Python library → JSON graph → Heriverse.
Key Concepts
EM data = JSON property graph, not a relational database.
The Python library mediates between Blender, yEd, and the Heriverse web platform.
Node types and qualia are defined in JSON — changing one file propagates to all tools.
Vocabularies (Getty, CIDOC) are bundled for offline use — no internet required.
A REST API exposes the graph for external tools and automation.
Screenshots
The node declaration JSON file defining all node types and connectors.
Qualia definitions with linked Getty vocabulary URIs.
The EM Python library REST API documentation.
Try It Yourself
Open the EM node types JSON in a text editor and add a new qualia property to the ‘construction’ node type.
Note
A video walkthrough for this tutorial will be available on the Extended Matrix YouTube channel.
See also
Installing EM Tools: yEd and Blender