SPARQL.Client - a SPARQL client for Elixir

SPARQL.Client allows you to execute SPARQL queries against any SPARQL 1.0/1.1-compatible endpoint.

If you don’t know what SPARQL is: SPARQL is a W3C-standardized graph query language, which allows querying of many of datasets from many different data stores, lots of them publicly available.

If you want to play around with SPARQL and the SPARQL.Client, I would highly recommend YASGUI, an online SPARQL editor with auto-completion and many preconfigured datasets, where you can build and run queries to SPARQL endpoints very easily. When you’ve built a useful query you can then use the SPARQL.Client to fetch and process the data in your Elixir application. The most notable dataset to start with is DBpedia (the default dataset in YASGUI).

I would also like to mention, that this is just another piece in my endeavor to bring the Linked Data and Semantic Web standards to life in Elixir. Other already existing parts:

  • RDF.ex: An implementation of the fundamental RDF graph data model and the most wildly used RDF graph serialization formats.
  • JSON-LD.ex: An implementation of JSON-LD, a lightweight extension to JSON making it a full-fledged RDF serialization format and allowing very easy conversion between JSON and RDF data.
  • SPARQL.ex: This is the next step. It currently contains just the parts of the SPARQL standards to make the SPARQL.Client fully functional.

Any help is highly appreciated.