Class SelectorImpl

java.lang.Object
org.apache.jena.rdf.model.SimpleSelector
org.apache.jena.rdf.model.impl.SelectorImpl
All Implemented Interfaces:
Predicate<Statement>, Selector

public final class SelectorImpl extends SimpleSelector
A general selector class for use when querying models.

OBSOLETE: use SimpleSelector. This implementation is a stub that provides only constructors.

An instance of this class is passed with query calls to models. The model will use the test method of this class to decide whether a statement should be included in the selection.

Instances of this class can be provided with subject, predicate and object constraints. If a subject, a predicate or an object are provided, the model implementation may restrict the statements that it tests to statements whose subject, predicate and object match those provided in the constructor. This can provide for considerably more efficient searching. However, the model implementation is not required to do this. If no subject, predicate or object are provided in the constructor, then all statements in the model must be tested.

This class is designed to be subclassed by the application, defining defining further selection criteria of its own by providing its own selects method.

The test method first verifies that a statement satisfies any subject, predicate or object constraints and the calls the selects method to test for any application supplied constraint. The default selects method simply returns true.

  • Constructor Details

    • SelectorImpl

      public SelectorImpl()
      Create a selector. Since no subject, predicate or object constraints are specified a model will test all statements.
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, RDFNode object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - if not null, the object of selected statements must equal this argument.
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, boolean object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - if not null, the object of selected statements must equal this argument.
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, long object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - the object of selected statements must equal this argument.
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, char object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - the object of selected statements must equal this argument.
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, float object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - the object of selected statements must equal this argument.
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, double object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - the object of selected statements must equal this argument.
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, String object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - the object of selected statements must equal this argument - a null string matches the empty string
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, String object, String language)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object parameter. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - the object of selected statements must equal this argument - the null string matches the empty string
      language - the language of the object constraint
    • SelectorImpl

      public SelectorImpl(Resource subject, Property predicate, Object object)
      Create a selector. A model may restrict statements that are tested using the selects method to those whose subject matches the subject parameter, whose predicate matches the predicate parameter and whose object matches the object paramater. Any null parameter is considered to match anything.
      Parameters:
      subject - if not null, the subject of selected statements must equal this argument.
      predicate - if not null, the predicate of selected statements must equal this argument.
      object - if not null, the object of selected statements must equal this argument.
  • Method Details

    • isSimple

      public boolean isSimple()
      Answer true to the question "is this a simple selector". Otherwise the default for SimpleSelector subclasses, false, would apply.
      Specified by:
      isSimple in interface Selector
      Overrides:
      isSimple in class SimpleSelector
      Returns:
      true iff this selector only depends on S/P/O identity.