Semantic Graph Database Integration

Hi,
I’m co-creating a knowledge graph for the the Regeneration / Impact ecosystem. We are talking to some projects that are using Ceramic to store profiles for users, for ex Gitcoin Passport which stores a JSON blob of Verifiable credentials on Ceramic. In addition to people and project profiles, we want to support any other related data that will ideally be standardized by a schema.

I see you are working on knowledge graph functionality with composeDB, which is a SQL db with GraphQL for queries. Could this allow complex SPARQL-like queries across all data on Ceramic? We are still deciding on what database architecture to use and are considering a semantic graph db based on RDF & SPARQL. Would it work for us to store everything on Ceramic?

Here is our project: https://gitcoin.co/grants/7506/regen-knowledge-graph

3 Likes

Thanks for posting here, @DarrenZal. Several of us were traveling or OOO last week, and are just getting back to the office.

Tagging @Paul, who did a lot of research on RDF.

Hi,
Currently we don’t have plans to implement other query methods for ComposeDB, but you could implement your own APIs on top of the SQL database used for indexing to support your needs.

1 Like

Sorry to hijack this thread months later, but I was sent this way when I asked about RDF in the Discord, and came across this thread. I also follow the Fluree project which implements a RDF graph engine atop a blockchain state layer. Really interesting project. They’re in the midst of finalizing their JSON-LD support now.

They support SPARQL (along with their own QL), but also GraphQL; the GraphQL endpoint is just more limited in the nature of the queries you can express.

Anyway, originally I was wondering if Ceramic can support RDF style triples? It would be powerful to be able to speak JSON-LD and leverage vocabularies from i.e. schema.org when defining ComposeDB schema.

Thx in advance for any feedback!

Incidentally, there are some interesting existing methods for working with RDF graphs via GraphQL.

Edited to add link