2

Right now I'm developing an App for querying the LMDB. LMDB has set a LIMIT for the results in order to prevent page crash (max 2500 results). I want to query the WHOLE LMDB and I was wondering if there's some way to get the whole data that is in the LMDB and not only the limited 2500 results ?

The query that I run:

PREFIX mdb: <http://data.linkedmdb.org/resource/movie/film> 
PREFIX dc: <http://purl.org/dc/terms/> 
SELECT ?movieName ?resource WHERE {
?resource dc:title ?movieName .
?resource mdb:id ?uri . 
FILTER regex(?movieName,'The Mexican', 'i')}

I get no results.

If I change the last line: FILTER regex(?movieName,'The Mexican', 'i')} to ?resource dc:title 'The Mexican' I get the desired results. This means that the data about this movie is actually in the LMDB but because of the LIMIT I can't access all entries unless I type in the EXACT name of the movie I'm searching for.

The App that I'm building uses search fields and I can't expect the users to know the exact name of the movie that's why I'm using FILTER regex().

What would be the way to fix this problem? Please help me. Should I download a local copy and run the queries against it or is there another way?

I wanted to contact the LMDB staff about this but I couldn't find any contact information

Stanislav Kralin
  • 11,070
  • 4
  • 35
  • 58
John Doe
  • 83
  • 9
  • Interesting... This works: `WHERE {?resource rdfs:label 'The Mexican'. ?resource dc:title ?movieName . FILTER (REGEX(?movieName, 'The Mexican', 'i')) }`. This doesn't work: `WHERE { ?resource dc:title ?movieName . ?resource rdfs:label 'The Mexican'. FILTER (REGEX(?movieName, 'The Mexican', 'i')) }` – Stanislav Kralin Mar 03 '18 at 19:30
  • 1
    It's backed by D2R, thus, there might be many limitations. Ideally, you should put the dataset into your own triple store, most will perform much better. – UninformedUser Mar 04 '18 at 04:40
  • 3
    By the way, I hope you know that the dataset is outdated and will never by updated? The last update is I guess from 2014 – UninformedUser Mar 04 '18 at 04:40
  • Which technologies should I use to to make my own triple store and where can I find a copy of the LMDB, which I can download ? Can anybody of you help e ? – John Doe Mar 04 '18 at 12:34
  • @JohnDoe, I've deleted my answer. It seems that LinkedMDB limits to 2500 the number of bindings to any basic graph pattern (i. e. a set of simple triple patterns). Narrowing down the number of bindings (adding `?resource a db:film`) is not working reliably for your use case. – Stanislav Kralin Mar 04 '18 at 16:21
  • @StanislavKralin is there anyway to set up my local SPARQL-Endpoint and send queries to it. Main point here is that I don't use Java or Python for my App, only JS. – John Doe Mar 05 '18 at 12:14

0 Answers0