X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;ds=sidebyside;f=bibframe%2Ftriplestore.xml;h=aae572563fe1e8b0c9891eb37a617c775cb4efbc;hb=8ae9650f354ef45a98deba37f572f48b59d81e8b;hp=ff4498ae8c9c4e4c0004de196e4fee092e1f74c6;hpb=55a5237e7ece9ae9a11c2b1ed72d202fdb7957ac;p=mp-sparql-moved-to-github.git diff --git a/bibframe/triplestore.xml b/bibframe/triplestore.xml index ff4498a..aae5725 100644 --- a/bibframe/triplestore.xml +++ b/bibframe/triplestore.xml @@ -1,13 +1,14 @@ - + + rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns bf: http://bibframe.org/vocab/ -
SELECT - ?work - MAX(?wtitle) AS ?title - MAX(?creatorlabel) AS ?creator - MAX(?subjectlabel) AS ?subject + SELECT + ?work + (sql:GROUP_DIGEST (?wtitle, ' ; ', 1000, 1)) AS ?title + (sql:GROUP_DIGEST (?creatorlabel, ' ; ', 1000, 1))AS ?creator + (sql:GROUP_DIGEST (?subjectlabel, ' ; ', 1000, 1))AS ?subject
?work a bf:Work @@ -26,15 +27,13 @@ ?wt bf:titleValue %v FILTER(contains(%v, %s)) ?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 %v FILTER(contains(STR(%v), %s)) } - GROUP BY $work
- + 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 }
@@ -50,7 +49,7 @@ ?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/
SELECT DISTINCT ?instance ?title ?format