X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=bibframe%2Ftriplestore.xml;h=dcfbc93bc4c24b3acb76cf82eb60d44890e05770;hb=3b8f82551458bf8243c7ed12743516e9e480e6fd;hp=db8aae6934f2024658787aa54660c2cf893b081b;hpb=b34de1b90e4a5bdf9bc0970a26ba2b29ffe4b8d5;p=mp-sparql-moved-to-github.git diff --git a/bibframe/triplestore.xml b/bibframe/triplestore.xml index db8aae6..dcfbc93 100644 --- a/bibframe/triplestore.xml +++ b/bibframe/triplestore.xml @@ -3,7 +3,12 @@ rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/ -
SELECT DISTINCT ?work ?wtitle ?creatorlabel ?subjectlabel
+
SELECT + ?work + MAX(?wtitle) AS ?title + MAX(?creatorlabel) AS ?creator + MAX(?subjectlabel) AS ?subject +
?work a bf:Work OPTIONAL { @@ -22,11 +27,11 @@ ?creator bf:label %v FILTER(contains(%v, %s)) ?subject bf:label %v FILTER(contains(%v, %s)) { - { ?wt bf:titleValue %v FILTER(contains(%v, %s)) } - UNION { ?creator bf:label %v FILTER(contains(%v, %s)) } - UNION { ?subject bf:label %v FILTER(contains(%v, %s)) } + ?work ?op1 ?child . + ?child ?op2 ?val FILTER(contains(STR(?val), %s)) } + GROUP BY $work
rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns