Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Do this for each indirect filter property, e.g. ep1 ep4 and ip1ip4

No Format
PREFIX ei: <[http://purl.obolibrary.org/obo/]>
PREFIX rdfs: <[http://www.w3.org/2000/01/rdf-schema#]>

SELECT
?filterValueUri
?filterValueLabel

WHERE {
?resourceUri a <${baseType}> .
?resourceUri ei:ERO_0000070 <${organization}> .
?resource <${ep1ep4}> ?embeddedResource .
?embeddedResource <${ip1ip4}> ?filterValueUri .
?filterValueUri rdfs:label ?filterValueLabel .
}

...

First part is identical to unfiltered query (remember to remove unset config params, e.g. op1), then conditions are added as triple patterns;
Assume filterValueUrix is the filter value selected by the user, for each filter property, e.g. filterValueUri1 for fp1
( NOTE if only one filter is selected, add only that triple pattern/triple pattern group).

No Format
PREFIX ei: <[http://purl.obolibrary.org/obo/]>
PREFIX eiapp: <[http://eagle-i.org/ont/app/1.0/]>
PREFIX rdfs: <[http://www.w3.org/2000/01/rdf-schema#]>

SELECT
?resourceUri
?resourceLabel
?resourceDescription
?lp1Value
?op1ValueLabel
?op1ValueUri
?op2ValueLabel
?op2ValueUri

WHERE {
?resourceUri a <${baseType}> .
?resourceUri ei:ERO_0000070 <${organization}> .
?resourceUri rdfs:label ?resourceLabel .
OPTIONAL {
?resourceUri eiapp:resource_description ?resourceDescription .
?resourceUri <${lp1}> ?lp1Value .
?resourceUri <${op1}> ?op1ValueUri . ?op1ValueUri rdfs:label ?op1ValueLabel .
?resourceUri <${op2}> ?op2ValueUri . ?op2ValueUri rdfs:label ?op2ValueLabel .
}

?resourceUri <${fp1}> <${filterValueUri1}> .
?resourceUri <${fp2}> <${filterValueUri2}> .
?resourceUri <${fp3}> <${filterValueUri3}> .

?resourceUri <${ep1ep4}> ?embeddedResource1 .
?embeddedResource1 <${ip1ip4}> <${filterValueUriIndirect1filterValueUri4}> .

?resourceUri <${ep2ep5}> ?embeddedResource2 .
?embeddedResource2 <${ip2ip5}> <${filterValueUriIndirect2filterValueUri5}> .
}
No Format