2016-04-26 16 views
0

Ist es möglich, die WHERE-Klausel von einer Abfrage zu erhalten org.apache.jena.query.Query? Ich habe nirgendwo eine Information gefunden, nirgendwo Dokumentation.Erhalten der WHERE von einem Apache JENA ARQ Query

Stellen Sie sich vor ich eine Abfrage von einem String

String queryString = "  
SELECT ?name ?mbox 
    WHERE 
     { ?x foaf:name ?name . 
     ?x foaf:mbox ?mbox }"; 

Query query = QueryFactory.create() ; 

Zum Beispiel erstellen, kann ich die Variablen erhalten, dass die Abfrage die query.getResultVars mit anfordert()), aber ich kann eine beliebige Art und Weise die nicht bekommen zu bekommen WHERE Klausel/Ausdruck oder wie auch immer Sie anrufen möchten. Nur interessiert, diesen Teil in immer:

{ ?x foaf:name ?name . 
    ?x foaf:mbox ?mbox } 

Hier Abfrage API: https://jena.apache.org/documentation/javadoc/arq/org/apache/jena/query/Query.html

+1

'Query :: getQueryPattern()' gibt ein Objekt vom Typ 'Element' zurück, das im Wesentlichen der Teil der WHERE-Klausel ist. – AKSW

+0

Vielen Dank @AKSW. Warum hast du nicht als Antwort geschrieben? Ich werde akzeptieren und kann für andere Menschen in der Zukunft nützlich sein, oder? – tremendows

Antwort

1

Query::getQueryPattern() gibt ein Objekt vom Typ Element, die im Wesentlichen der Teil der WHERE-Klausel ist.