Skip to content

Latest commit

 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

odin-graph

Status: experimental; v0.1.0 is a Garden-pinned baseline, not an independently supported public API release.

Role: an in-memory RDF graph kernel and migration evidence for proven consumers.

Not: a Store, SPARQL engine, reasoner, or required SPARQL dependency.

odin-graph is an experimental in-memory RDF graph kernel for the Odin semantic ecosystem. The scope of any supported external release is extracted only from behavior that concrete consumers have proven in integration tests. Its SPARQL adapter remains useful migration evidence, but it does not determine the dependency contract of the released SPARQL core.

Start here: local verification · development plan · Garden architecture

flowchart LR
    Evidence["Garden integration evidence"] --> Gate{"stable shared<br/>requirements?"}
    Gate -->|not yet| Workspace["local odin-graph<br/>core-development workspace"]
    Gate -->|yes| Extract["published, independently<br/>versioned odin-graph"]
Loading

The governing ecosystem boundary and extraction gate live in ../odin-garden/docs/architecture.md. The decision to defer a published extraction is recorded in ../odin-garden/docs/adr/0001-defer-odin-graph.md.

Scope

The first implementation milestone provides:

  • RDF Dataset set semantics across default and named graphs;
  • copied/owned RDF values with explicit blank-node identity rules;
  • bounded graph-scoped scans with immutable freeze-time exact, two-term, and one-term candidate indexes;
  • freeze-in-place immutable views suitable for a later public odin-sparql Dataset adapter;
  • documented resource limits, ownership, and error behavior.

Boundaries

  • RDF parsing, writing, or canonicalization;
  • SPARQL syntax, algebra, query planning, or result encoding;
  • RDFS/OWL rules, inference provenance, or materialization policy;
  • persistence, recovery, backup, replication, or network services;
  • multi-writer isolation, MVCC, WAL, or a speculative general transaction API.

Durability and operational transaction semantics belong to a future, independent odin-store only when a concrete requirement exists.

Roadmap

The staged work and acceptance conditions are in TODO.md. Do not promote it to a supported component dependency until the Garden extraction gate has produced the required multi-consumer evidence.

Development

With odin-rdf checked out beside this repository at the release pinned by Garden, run:

odin test graph -collection:odin-rdf=../odin-rdf

The optional SPARQL adapter is separate from the kernel and can be verified against the adjacent SPARQL development checkout with:

odin test adapter/sparql -collection:odin-rdf=../odin-rdf -collection:odin-sparql=../odin-sparql

The separate Reasoner closure importer is a copying migration prototype. It retains each fact's asserted/inferred first origin, but not the Store's native term/fact IDs or its inference engine. Its optional derivation-aware entry also retains opaque rule IDs and first-support Graph indexes. Test it against the pinned Reasoner revision with:

odin test adapter/reasoner -collection:odin-rdf=../odin-rdf -collection:odin-reasoner=../odin-reasoner

For development across the adjacent working trees, run:

sh scripts/verify-current-convergence.sh

It prints the exact checked-out revisions and runs the Graph kernel, both adapters, the bounded OWL RL W3C-evidence suite, and Garden's current-source integration packages. This is migration evidence only: it intentionally does not replace Garden's release-qualified, fixed-revision verification command.

To additionally run the optional Graph-adapter compatibility checks alongside SPARQL's full pinned W3C suites and its 50,000-case fuzz gate, use:

ODIN_GRAPH_FULL_CONFORMANCE=1 sh scripts/verify-current-convergence.sh

This is deliberately opt-in: it is a broader conformance run, not the fast development loop. SPARQL's W3C runners cache their compiled executables in $ODIN_SPARQL_COLLECTION/.cache, so that directory must be writable for the full mode; normal convergence writes only odin-graph/.tmp.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages