2016-06-23 20 views
0

Ich führe SPARQL-Abfrage auf virtuose SPARQL-Editor.SPARQL HTML-Ergebnis in der nächsten Zeile

Das Ergebnis der Abfrage im HTML-Format wird für jeden entsprechenden Datensatz in der nächsten Zeile angezeigt werden wie auf der Abbildung unten gezeigt:

Bitte beraten, wie diese Anzeige Problem zu beheben.

Hier ist die SPARQL-Abfrage:

prefix DOL: <http://www.MyOnt.com/something/v1#> 
prefix foaf: <http://xmlns.com/foaf/0.1/> 

select ?cName ?domain ?dValues ?method ?rType{ 
{ 
    ?class foaf:name "MyJavaClass" . 
} 
{ ?class foaf:name ?cName } 
union 
{ ?class DOL:belongsTo ?domain } 
union 
{ ?class2 DOL:domainName ?dValues } 
union 
{ ?class DOL:hasMethod ?method } 
union 
{ ?class2 DOL:returnType ?rType } 

} 

SPARQL output on virtuoso

+0

Könnten Sie bitte das Stack-Overflow-Bild-Hosting für Bilder verwenden, anstatt andere Websites zu verwenden, in denen Bilder nicht hängen bleiben. –

+0

Fragte auf der Mailing-Liste und bekam eine Antwort dort auch ... – AKSW

+0

[Thread] (https://sourceforge.net/p/virtuoso/mailman/message/35174598/) auf der [Virtuoso Benutzer Mailingliste] (https : //sourceforge.net/p/virtuoso/mailman/virtuoso-users/) ... – TallTed

Antwort

0

UNION für matching alternatives ist, so dass die Ergebnisse der Abfrage eine der Muster von UNION verbunden entsprechen würde. Wenn Sie wollen, dass die Ergebnisse alle passen die dreifache Muster in Ihrer Abfrage, die Sie gerade group them:

PREFIX DOL: <http://www.MyOnt.com/something/v1#> 
PREFIX foaf: <http://xmlns.com/foaf/0.1/> 

SELECT ?cName ?domain ?dValues ?method ?rType 
WHERE { 
    ?class foaf:name "MyJavaClass" ; 
    DOL:belongsTo ?domain ; 
    DOL:hasMethod ?method . 
    ?class2 DOL:domainName ?dValues ; 
    DOL:returnType ?rType . 
} 

Wenn Sie die Ergebnisse wollen nur einige der Triple-Muster übereinstimmen, können Sie OPTIONAL verwenden, die Muster zu wickeln, die das Ergebnisse müssen nicht übereinstimmen, wie folgt:

+1

Die ganze Abfrage ist falsch, weil sie SPARQL und RDF nicht verstanden hat. Zum Beispiel ist "class2" völlig nutzlos und "domainName" bezieht sich natürlich auf die "Domäne". Und 'returnType' bezieht sich auf die'? Methode'. Ich habe es schon auf der Mailingliste geantwortet, da konnte ich auch die Daten sehen. In der Tat, ohne es ist unmöglich, die richtige Abfrage zu zeigen. – AKSW

+0

@jindrichm: Vielen Dank für die ausführliche Erklärung. Das nächste Zeilenproblem wird gelöst, indem Gruppierung verwendet wird. – Viki