X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=bibframe%2Ftriplestore.xml;h=72c98e7b376049b4260df2cf546d8e2dbc026c99;hb=39809dcbb979cbf8e462a035e798b26a2372315e;hp=56b80fa7dc46f4ddba3683bbbdb7054d8683175e;hpb=fea72715438bf7e340fb08a22fbb97df31dd2ec8;p=mp-sparql-moved-to-github.git diff --git a/bibframe/triplestore.xml b/bibframe/triplestore.xml index 56b80fa..72c98e7 100644 --- a/bibframe/triplestore.xml +++ b/bibframe/triplestore.xml @@ -1,48 +1,318 @@ + + + + + + + +]> + - - rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns - bf: http://bibframe.org/vocab/ -
SELECT DISTINCT ?work ?wtitle ?creatorlabel ?subjectlabel
- ?work a bf:Work + + + - ?work bf:workTitle ?wt - ?wt bf:titleValue ?wtitle - ?wt bf:titleValue %v FILTER(contains(%v, %s)) - ?work bf:creator ?creator - ?creator bf:label ?creatorlabel - ?creator bf:label %v FILTER(contains(%v, %s)) - ?work bf:subject ?subject - ?subject bf:label ?subjectlabel - ?subject bf:label %v FILTER(contains(%v, %s)) -
- + + rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/ -
CONSTRUCT { ?work bf:title ?title . ?work bf:author ?creator . ?work bf:instanceTitle ?it }
+
SELECT DISTINCT ?work
?work a bf:Work - ?work bf:workTitle ?wt - ?wt bf:titleValue ?wtitle - ?wt bf:titleValue %v FILTER(contains(%v, %s)) - ?work bf:creator ?creator - ?creator bf:label ?creatorlabel - ?creator bf:label %v FILTER(contains(%v, %s)) - ?work bf:subject ?subject - ?subject bf:label ?subjectlabel - ?subject bf:label %v FILTER(contains(%v, %s)) -
- + + ?work a bf:Work FILTER( ?work = %u ) + + + + ?work bf:workTitle ?wt . + ?wt bf:titleValue %v FILTER(contains(%v, %s)) + + + ?work bf:workTitle ?wt . + ?wt bf:subtitle %v FILTER(contains(%v, %s)) + + + + ?work bf:workTitle ?wt . + ?wt bf:partTitle %v FILTER(contains(%v, %s)) + + + + + ?work bf:titleVariation ?tv . + ?tv bf:titleValue %v FILTER(contains(%v, %s)) + + + + + ?inst bf:instanceOf ?work . + ?inst bf:instanceTitle ?it . + ?it bf:titleValue %v FILTER(contains(%v, %s)) + + + + + { ?work bf:workTitle ?wt . + { ?wt bf:titleValue %v FILTER(contains(%v, %s)) } UNION + { ?wt bf:subtitle %v FILTER(contains(%v, %s)) } UNION + { ?wt bf:partTitle %v FILTER(contains(%v, %s)) } + } UNION { + ?work bf:titleVariation ?tv . + ?tv bf:titleValue %v FILTER(contains(%v, %s)) + } UNION { + ?inst bf:instanceOf ?work . + ?inst bf:instanceTitle ?it . + ?it bf:titleValue %v FILTER(contains(%v, %s)) + } + + + + + ?work bf:creator ?c . + ?c bf:label %v FILTER(contains(%v, %s)) + + + + ?work bf:contributor ?c . + ?c bf:label %v FILTER(contains(%v, %s)) + + + + ?work bf:subject ?subject . + ?subject bf:label %v FILTER(contains(%v, %s)) + + + + + CONSTRUCT { ?work ?rel ?subj } + WHERE { + ?work a bf:Work . + ?work ?rel ?subj . + ?work ?rel ?obj FILTER( str(?work) = %s ) + } + + + + + CONSTRUCT { ?work ?rel ?obj . + ?obj ?rel1 ?obj1 . + ?obj1 ?rel2 ?obj2 . + ?obj2 ?rel3 ?obj3 } + WHERE { + ?work a bf:Work . + ?work ?rel ?obj . + OPTIONAL { + ?obj ?rel1 ?obj1 + MINUS { ?obj a bf:Work } + } + OPTIONAL { + ?obj1 ?rel2 ?obj2 + MINUS { ?obj1 a bf:Work } + } + OPTIONAL { + ?obj2 ?rel3 ?obj3 + MINUS { ?obj2 a bf:Work } + } + ?work ?rel ?obj FILTER( str(?work) = %s ) + } + + + + + CONSTRUCT { %u ?rel ?wobj1 . + ?wobj1 ?wrel1 ?wobj2 . + ?wobj2 ?wrel2 ?wobj3 . + ?inst ?irel1 ?iobj1 . + ?iobj1 ?irel2 ?iobj2 . + ?iobj2 ?irel3 ?iobj3 } + WHERE { + %u a bf:Work . + %u ?rel ?wobj1 . + OPTIONAL { + ?inst bf:instanceOf %u + } + &workfull; + OPTIONAL { + ?wobj ?wrel1 ?wobj1 + MINUS { ?wobj a bf:Work } + MINUS { ?wobj a bf:Instance } + } + OPTIONAL { + ?wobj1 ?wrel2 ?wobj2 + MINUS { ?wobj1 a bf:Work } + MINUS { ?wobj1 a bf:Instance } + } + OPTIONAL { + ?wobj2 ?wrel3 ?wobj3 + MINUS { ?wobj2 a bf:Work } + MINUS { ?wobj2 a bf:Instance } + } + + OPTIONAL { + ?inst ?irel1 ?iobj1 + } + OPTIONAL { + ?iobj1 ?irel2 ?iobj2 + } + OPTIONAL { + ?iobj2 ?irel3 ?iobj3 + } + + } + + + + rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/ -
SELECT DISTINCT ?instance ?title ?format
+
SELECT ?instance ?title ?format
?instance a bf:Instance - ?instance bf:title ?title ?instance bf:title %v FILTER(contains(%v, %s)) ?instance bf:format ?format ?instance bf:format %s +
+ + + + + + + + + ?thing bf:label %v FILTER(contains(%v, %s)) + ?thing bf:label %v FILTER(contains(%v, %s)) + + + + rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns + bf: http://bibframe.org/vocab/ +
SELECT DISTINCT ?thing
+ ?thing ?rel ?obj + + CONSTRUCT { %u ?rel ?obj } + WHERE { + %u ?rel ?obj . + } + + + + + CONSTRUCT { %u ?rel ?obj . + ?obj ?rel1 ?obj1 . + } + WHERE { + %u ?rel ?obj . + OPTIONAL { ?obj ?rel1 ?obj1 } + } + +
+ + + + ?thing a bf:Place + ?thing bf:label %v FILTER(contains(%v, %s)) + + + ?thing a bf:Person + ?thing bf:label %v FILTER(contains(%v, %s)) + + + ?thing a bf:Meeting + ?thing bf:label %v FILTER(contains(%v, %s)) + + + ?thing a bf:Agent + ?thing bf:label %v FILTER(contains(%v, %s)) + + + ?thing a bf:Event + ?thing bf:label %v FILTER(contains(%v, %s)) + + + ?thing a bf:Organization + ?thing bf:label %v FILTER(contains(%v, %s)) + + + ?thing a bf:Topic + ?thing bf:label %v FILTER(contains(%v, %s)) + + + + + ?thing a bf:Title + + { ?thing bf:titleValue %v FILTER(contains(%v, %s)) } UNION + { ?thing bf:subtitle %v FILTER(contains(%v, %s)) } UNION + { ?thing bf:partTitle %v FILTER(contains(%v, %s)) } + + + { ?thing bf:titleValue %v FILTER(contains(%v, %s)) } UNION + { ?thing bf:subtitle %v FILTER(contains(%v, %s)) } UNION + { ?thing bf:partTitle %v FILTER(contains(%v, %s)) } + + ?thing bf:titleValue %v FILTER(contains(%v, %s)) + ?thing bf:subtitle %v FILTER(contains(%v, %s)) + ?thing bf:partTitle %v FILTER(contains(%v, %s)) + + + + + + rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns + bf: http://bibframe.org/vocab/ +
SELECT ?node ?rel ?obj
+ ?node ?rel ?obj FILTER( str(?node) = %s ) +
+ + + + rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns + bf: http://bibframe.org/vocab/ +
SELECT ?node ?rel ?obj
+ ?node ?rel ?obj FILTER( str(?obj) = %s )