1

Given the SPARQL / SPARQL Update endpoint, how to test empirically the RDF store for RDFS/RDFS+/OWL 1/2 * / maybe SPIN capabilities it offers? Is there any readily available set of queries?

That is, after running those queries and depending on the returned triples, the inference capabilities support (expressiveness) and level of compliance could be guessed.

This seems like really trivial idea (and probably a no-brainer for an expert to come up with the set of queries), but can't find such material anywhere.

Not sure whether SPARQL service description is relevant to this, but declaring something is one thing and really delivering is another.

Roman Susi
  • 4,135
  • 2
  • 32
  • 47
  • Why test this in an automated manner? You could just read the docs. – Michael May 18 '15 at 12:53
  • There may be many reasons to do that. Application may need to know what to expect before making wrong decisions. And it can't read the docs. – Roman Susi May 19 '15 at 18:07
  • What use case do you have that would require you to use RL sometimes, EL others, and yet others, RDFS. The app's performance would vary, and potentially, it's functionality. imo, you should pick a level and stick with it. – Michael May 20 '15 at 10:10
  • @Michael For example, I have an app, which requires some kind of RDFS+-capable SPARQL/Update backend. It makes matters more predictable if the application instance can quickly figure out the capabilities of the endpoint(s) before running (instead of running full testsuite), to possibly refuse to run instead of failing silently (or flag some advanced features as unavailable). The same pattern used in one way or another in network protocol connections (like POP3's CAPA command). – Roman Susi May 20 '15 at 10:40

1 Answers1

0

I think you should have a look at SPARQL benchmarks. The DBpedia SPARQL Benchmark also does SPARQL feature analysis. While I don't know if this will cover all of the features you are looking for.

DBPSB is a general SPARQL benchmark procedure, which we apply to the DBpedia knowledge base. The benchmark is based on query-log mining, clustering and SPARQL feature analysis. In contrast to other benchmarks, we perform measurements on actually posed queries against existing RDF data.

(http://aksw.org/Projects/DBPSB)

Other SPARQL benchmarks would be the Lehigh University Benchmark (LUBM), the Berlin SPARQL Benchmark (BSBM) or SP²Bench.

Further you could take a look at LODStats which gathers some statistics about dataset. While it currently is focused on analyzing data dumps the code already contains some capability of directly gathering statistics from SPARQL endpoints. You should be able to extend the code to also test some SPARQL features resp. features of the underlaying Triple Store.

white_gecko
  • 4,808
  • 4
  • 55
  • 76
  • Hmmm. How benchmarks for those huge datasets can help find out qualitative (not performance!) characteristics, like certain level of expressivenens? For example, Berlin SPARQL Benchmark is about "[measuring] the performance of queries against large amounts of RDF data". Ditto for DBPSB: measures "Query Mixes per Hour" – Roman Susi May 17 '15 at 19:39
  • To extend the code I need to go through all the RDF-OWL specs and design queries, which signle out specific inference capabilities. What is the added value of the mentioned benchmarks then? I am trying to find readily available set of queries for the specific task of finding out whether there is OWL RL behind the endpoint or just RDFS. Please, correct if I am missing some point. – Roman Susi May 17 '15 at 19:45
  • As I understand, benchmarks can be qualitative or quantitative, so they are not limited to performance checks but could also test for feature completeness. Maybe there is no benchmark for your purpose so far, so you are free to create one :-) – white_gecko May 18 '15 at 08:32
  • ok, thanks for encouragement... No such thing also counts for the answer. I will wait for a while if someone has at least something better. – Roman Susi May 18 '15 at 08:48