pyDATR is an implementation of the DATR language written in Python.
It can parse DATR theories and evaluate queries against them. It
also contains a persistence layer that allows storing theories and
nodes in a relational database. Theories that have been stored through
this layer can later be partially loaded and will transparently
retrieve nodes from the database as needed, thus reducing memory
consumption.
There's not much there in the way of a user interface as it is intended
to be called from Python scripts.