X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=bibframe%2Ftriplestore.xml;h=633d9d512be8be8300bda7ffbd674a8dea0cf7a2;hb=60523b77c43ab3d9bc48215c21e4af112a705b2b;hp=f59629e5df1fd2738011db435818d8eb196289c7;hpb=24426789587262eecf32286b0655b2314977b6eb;p=mp-sparql-moved-to-github.git diff --git a/bibframe/triplestore.xml b/bibframe/triplestore.xml index f59629e..633d9d5 100644 --- a/bibframe/triplestore.xml +++ b/bibframe/triplestore.xml @@ -21,14 +21,13 @@ - + CONSTRUCT { - ?thing ?rel ?subj + %u ?rel ?subj } WHERE { - ?thing ?rel ?subj . - ?thing ?rel ?subj FILTER( str(?thing) = %s ) + %u ?rel ?subj . } @@ -108,15 +107,11 @@ - { - ?thing 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 { - ?thing ?titlerel ?ti . + ?thing bf:title %v FILTER(contains(%v, %s)) + } UNION { + ?thing ?titlerel ?ti . ?ti a bf:Title { ?ti bf:titleValue %v FILTER(contains(%v, %s)) @@ -130,7 +125,6 @@ ?inst bf:instanceTitle ?it . ?it bf:titleValue %v FILTER(contains(%v, %s)) } UNION { - ?thing bf:title %v FILTER(contains(%v, %s)) } @@ -166,8 +160,8 @@ - - + + CONSTRUCT { %u ?rel ?wobj1 . ?wobj1 ?wrel1 ?wobj2 . @@ -181,30 +175,27 @@ %u ?rel ?wobj1 . OPTIONAL { - ?wobj ?wrel1 ?wobj1 - MINUS { ?wobj a bf:Work } - MINUS { ?wobj a bf:Instance } - OPTIONAL { - ?wobj1 ?wrel2 ?wobj2 + ?wobj1 ?wrel2 ?wobj2 MINUS { ?wobj1 a bf:Work } MINUS { ?wobj1 a bf:Instance } - OPTIONAL { - ?wobj2 ?wrel3 ?wobj3 + OPTIONAL { + ?wobj2 ?wrel3 ?wobj3 MINUS { ?wobj2 a bf:Work } MINUS { ?wobj2 a bf:Instance } - } } } OPTIONAL { - ?inst bf:instanceOf %u - OPTIONAL { - ?inst ?irel1 ?iobj1 + ?inst bf:instanceOf %u . + ?inst ?irel1 ?iobj1 + OPTIONAL { + ?iobj1 ?irel2 ?iobj2 + MINUS { ?iobj1 a bf:Work } + MINUS { ?iobj1 a bf:Instance } OPTIONAL { - ?iobj1 ?irel2 ?iobj2 - OPTIONAL { - ?iobj2 ?irel3 ?iobj3 - } + ?iobj2 ?irel3 ?iobj3 + MINUS { ?iobj2 a bf:Work } + MINUS { ?iobj2 a bf:Instance } } } } @@ -319,9 +310,9 @@ } - + - + CONSTRUCT { %u ?irel1 ?iobj1 . ?iobj1 ?irel2 ?iobj2 . @@ -332,33 +323,28 @@ } WHERE { %u a bf:Instance . - %u ?irel1 ?iobj1 + %u ?irel1 ?iobj1 . OPTIONAL { ?iobj1 ?irel2 ?iobj2 - MINUS { ?iobj1 a bf:Work } - MINUS { ?iobj1 a bf:Instance } + MINUS { ?iobj2 a bf:Work } + MINUS { ?iobj2 a bf:Instance } . OPTIONAL { ?iobj2 ?irel3 ?iobj3 - MINUS { ?iobj2 a bf:Work } - MINUS { ?iobj2 a bf:Instance } + MINUS { ?iobj3 a bf:Work } + MINUS { ?iobj3 a bf:Instance } } } - - OPTIONAL { - %u bf:instanceOf ?work + OPTIONAL { + %u bf:instanceOf ?work . + ?work ?wrel1 ?wobj1 . OPTIONAL { - ?work ?wrel1 ?wobj1 - MINUS { ?wobj1 a bf:Work } - MINUS { ?wobj1 a bf:Instance } + ?wobj1 ?wrel2 ?wobj2 + MINUS { ?wobj1 a bf:Work } + MINUS { ?wobj1 a bf:Instance } . OPTIONAL { - ?wobj1 ?wrel2 ?wobj2 - MINUS { ?wobj2 a bf:Work } - MINUS { ?wobj2 a bf:Instance } - OPTIONAL { - ?wobj2 ?wrel3 ?wobj3 - MINUS { ?wobj3 a bf:Work } - MINUS { ?wobj3 a bf:Instance } - } + ?wobj2 ?wrel3 ?wobj3 + MINUS { ?wobj2 a bf:Work } + MINUS { ?wobj2 a bf:Instance } } } } @@ -377,7 +363,7 @@ - + CONSTRUCT {