È possibile utilizzare UNION
ad es.
PREFIX prefix: <http://example.org/ns#>
SELECT *
WHERE {
{ ?x a prefix:type1 } UNION { ?x a prefix:type2 }
}
noti l'uso di a
che è una parola SPARQL che può essere utilizzato in posizione predicato e corrisponde al tipo RDF URI http://www.w3.org/1999/02/22-rdf-syntax-ns#type
Ci sono altri modi per fare questo come l'utilizzo FILTER
clausole con varie espressioni:
- serie di
?type = prefix:type1
combinati con la condizionale o l'operatore ||
?type IN (prefix:type1, prefix:type2)
Oppure si potrebbe usare una clausola VALUES
per specificare le opzioni per ?type
Questi possono essere meglio se la query è più complesso e non si vuole duplicare gran parte della query su entrambi i lati del UNION
o avere più di due possibilità da considerare.
"il? Type in" sembra interessante, ma non funziona, sto sicuramente facendo un errore sulla sintassi, giusto? SELEZIONA * DOVE { ? X rdf: tipo? Tipo ? Digita (wo: Kingdom, wo: Phylum) } – Noor
Queste sono espressioni che possono essere utilizzate in una clausola 'FILTER' in modo che sia' FILTER (? digita IN (wo: Kingdon, wo: Phylum)) ' – RobV