A. Garcia-Dominguez

Hawk

Hawk is a model indexer that can read models developed in various technologies (such as EMF, Modelio or IFC) and index them into a graph database. Graph databases are a natural match for storing models, as they are specially designed for quickly traversing relationships between nodes and finding nodes that meet certain conditions. Hawk can use several graph database technologies, such as Neo4j, OrientDB, GreyCat, or SQLite.

In addition to indexing the models, Hawk can generate indexes based on attribute values (for quickly locating specific model elements based on interesting features) and can precompute derived attributes that would be expensive to recompute repeatedly.

Currently, Hawk supports models based on the Eclipse Modelling Framework, the Modelio modelling environment and the IFC STEP and XML formats (versions 2x3 and 4).

Hawk can be used both from Eclipse and as a standalone library. The source code and binaries are available from its official website at Eclipse.org.