An ontology triple (quad) store for RDF/OWL using Entity Framework 4
This weeks side-project was the creation of an ontology store using Entity Framework 4. An ontology store stores axioms consisting of Subject, Predicate, Object which are usually serialized as RDF, OWL, N3, … Whereas there’s lots of details about these serialization formats, the actual mechanics of how to store and manipulate them was somewhat harder to come by. Nevertheless, after much experimentation I came up with an Entity Model that can store Quads (Subject, Predicate, Object and Meta) or Quins (Subject, Predicate, Object, Meta, Graph). The addition of Meta allows one Axiom to reference another. The addition of Graph allows the store to be segmented making it easy to import some N3 or RDF into a graph, then flush that graph if it is no longer needed or if a newer version becomes available.
The store is currently hooked up to an Euler reasoner that can reason against it, lazily fetching just the necessary records from the SQL database that backs the Entity Model.
Here’s the EDMX showing how I modeled the Ontology Store:
Comments are closed.

about 2 years ago
Cool model. Any chance you’d post part of the project?
Dave G
about 2 years ago
Yes, I hope to publish the whole thing once it’s done. I’m working on getting a reasoner to work against it at the moment.
about 2 years ago
Ah, just what I was looking for. It seems the last update was quite a while back. Any chance you intend to release the source soon and additional thoughts on your model.
Also thanks for your thoughts on extending C# for the semantic web.
Cheers,
–Gary