Query Omeka-s using SPARQL

Hi everyone!

I’m working on an institutional project and we use Omeka-s as CMS. We devised some domain-specific ontologies that we imported into Omeka-s as vocabularies. We already populated the DB using Omeka-s templates and REST API, following the schema provided by the ontologies we developed.

Due to the project’s goal and complexity, we cannot use Omeka-s site for data retrieval and visualization. Instead, we use a custom web app that directly queries the RDB beneath Omeka-s and displays items following the structures provided by templates.

As a final goal, we want to query Omeka through SPARQL. However, I cannot find any solution by looking at various available modules and other topics in this forum.
Does anyone have some tips or suggestions on how it can be possible to use SPARQL to query (only retrieve and display, not insert) data stored in Omeka-s?

We are working with Omeka-s v3.2.3.

Thank you all!

1 Like

It is not possible to use SPARQL to query the Omeka S database. To do so would require migrating data from Omeka’s relational database to an RDF graph database or triplestore. I am unaware of any efforts to do this, but perhaps someone who has tried can follow up here.

There is a Sparql module for Omeka S by Daniel-KM.

I personally just harvest all JSON-LD (which is RDF!!) via the standard Omeka S REST API with a simple harvester which you can then import into a SPARQL enabled triplestore like Apache Jena Fuseke or GraphDB. You can read about this in the Google-translated article Under the hood: providing linked open data via SPARQL endpoint on the Gouda Timemachine website.

Lastly, see the forum topic Publish to triple store so you can SPARQL your linked data [module proposal].


Thank you for your help!

I’ve already looked up the Sparql module but, since it is supported only on Omeka v4 and I’m working on Omeka v3, I have to find another solution.

Using Omeka S REST API to export data and import them into Apache Jena Fuseki should work; I’ll try this way.

Hi, @AndreaNS can u provide some help or guideline or any documentation/reference possible on how to devise a domain-specific Ontology ?