com.hp.hpl.jena.graph.query
Interface QueryHandler

All Known Implementing Classes:
SimpleQueryHandler

public interface QueryHandler

a QueryHandler handles queries on behalf of a graph. It's primary purpose is to isolate changes to the query interface away from the Graph; multiple different Graph implementations can use the same QueryHandler class, such as the built-in SimpleQueryHandler.

Author:
kers

Method Summary
 boolean containsNode(Node n)
          true iff the graph contains a triple in which n appears somewhere.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<Node> objectsFor(Node s, Node p)
          deliver an iterator over all the objects _o_ such that _(s, p, o)_ is in the underlying graph; nulls count as wildcards.
 Stage patternStage(Mapping map, ExpressionSet constraints, Triple[] p)
          produce a single Stage which will probe the underlying graph for triples matching p and inject all the resulting bindings into the processing stream (see Stage for details)
 com.hp.hpl.jena.util.iterator.ExtendedIterator<Node> predicatesFor(Node s, Node o)
          Answer an iterator over all the predicates p such that (s, p, o) is in the underlying graph.
 BindingQueryPlan prepareBindings(GraphQuery q, Node[] variables)
          prepare a plan for generating bindings given the query _q_ and the result variables _variables_.
 TreeQueryPlan prepareTree(Graph pattern)
          deliver a plan for executing the tree-match query defined by _pattern_.
 com.hp.hpl.jena.util.iterator.ExtendedIterator<Node> subjectsFor(Node p, Node o)
          deliver an iterator over all the subjects _s_ such that _(s, p, o)_ is in the underlying graph; nulls count as wildcards.
 

Method Detail

prepareBindings

BindingQueryPlan prepareBindings(GraphQuery q,
                                 Node[] variables)
prepare a plan for generating bindings given the query _q_ and the result variables _variables_.


patternStage

Stage patternStage(Mapping map,
                   ExpressionSet constraints,
                   Triple[] p)
produce a single Stage which will probe the underlying graph for triples matching p and inject all the resulting bindings into the processing stream (see Stage for details)

_map_ is the variable binding map to use and update. _constraints_ is the current constraint expression: if this Stage can absorb some of the ANDed constraints, it may do so, and remove them from the ExpressionSet.


prepareTree

TreeQueryPlan prepareTree(Graph pattern)
deliver a plan for executing the tree-match query defined by _pattern_.


objectsFor

com.hp.hpl.jena.util.iterator.ExtendedIterator<Node> objectsFor(Node s,
                                                                Node p)
deliver an iterator over all the objects _o_ such that _(s, p, o)_ is in the underlying graph; nulls count as wildcards. .remove() is not defined on this iterator.


subjectsFor

com.hp.hpl.jena.util.iterator.ExtendedIterator<Node> subjectsFor(Node p,
                                                                 Node o)
deliver an iterator over all the subjects _s_ such that _(s, p, o)_ is in the underlying graph; nulls count as wildcards. .remove() is not defined on this iterator.


predicatesFor

com.hp.hpl.jena.util.iterator.ExtendedIterator<Node> predicatesFor(Node s,
                                                                   Node o)
Answer an iterator over all the predicates p such that (s, p, o) is in the underlying graph. .remove() is not defined on this iterator.


containsNode

boolean containsNode(Node n)
true iff the graph contains a triple in which n appears somewhere. if n is a fluid node, it is not defined whether true or false is returned, so don't do that.



Licenced under the Apache License, Version 2.0