Angenommen, wir haben die TripelSPARQL Eigenschaft Pfad, 1. Teil ist einzigartig, Pfad wiederholt sich nach
a1 blah <http://foo.com/f>
a1 pt c1
c1 pt d1
Wie würde ich eine SPARQL-Abfrage erstellen a1
oder c1
oder d1
wählen? Ich muss in der Lage sein, ein blah
Prädikat oder mehrere pt
Prädikate zu gehen.
So a1 kann Teil eines dreifach wie: a1 blah <http://foo.com/f>
aber ich weiß nicht, wie man den Fall angeben, in dem es nicht a1, sondern seine Aufgabe verbunden über einen anderen Weg in die andere Richtung a1. Aber ich muss auch den Weg behalten blah verwenden, da das ist, was a1 oder f1 zum Objekt von
Hier verbunden ist, ist, wie ich es zu arbeiten, aber es ist nicht recht:
select * from
{
# other sparql stuff before it
{ ?s blah <http://foo.com/f>
?s pt+ <c1> }
UNION
{ <c1> blah <http://foo.com/f> }
}
ich kann ändere 'c1' zu 'a1' oder 'd1' und das obige sparql funktioniert immer noch
Sie benötigen den Sequenzoperator '/' anstelle des alternativen Operators '|'. – AKSW
Wollen Sie die * spezifischen * Prädikate ** blah ** und ** pt **, oder wollen Sie eine Sequenz von "diesem Prädikat und dann Wiederholungen dieses Prädikats"? –
Es muss nicht ein bestimmtes Predciate sein. Ich versuche, irgendein Thema zu bekommen, das durch eines dieser Prädikate verbunden ist. Das Prädikat "blah" verbindet nur ein Subjekt mit einem Objekt, aber das Prädikat "pt" kann Objekte mit N Verbindungen verbinden. Ich werde den Sequenzoperator ausprobieren und Sie wissen lassen. –