Weaver has at its core a graph database that supports version control for data. This gives full control of the contents of the database, without requiring a rigid database schema to which entered data must adhere.
Graph databases allow adding data from different sources, using their own structures. Accepting heterogeneous data models into a flexible graph structure allows for exploration and interlinking of previous divergent knowledge contained in their own respective data silos.
Through various export possibilities data can be extracted from Weaver in-full. The various query endpoints enable real time querying of data, allowing insight in the integrated data environment through other tooling.
Every fact within the Weaver database can in itself be described in the Weaver database without further requirements. Compared to other (graph) databases Weaver treats a statement of fact as a statement itself, about which other statements can be made. This allows for complex models where statements can be invalidated or refined by other statements.
Version control for data allows for data sets to evolve over time, with full retention of the past history. Different current versions can also exist, allowing for data changes to be explored before a verdict is reached about whether to integrate the proposed changes in the main dataset. Each different version is a first class database that can be viewed, queried, and modified. This enables for similar-yet-different processes to all use the same main data source while maintaining autonomy in changes.
Because the strict version changes tracking in Weaver, data never really disappears. When statements are deleted, they are removed from the actively queryable data views. It is possible to go back to before the deletion, and restore the dataset as it existed at this time. From there a different reality can be created. But even then the deletion is not deleted itself, and as long as the two different realities do not conflict they can be united again.