Class Query

  • public abstract class Query
    extends Object
    Definition of filtering to apply for fetching a resource subset. Filtering can happen in two domains:
    1. By filtering the Feature instances.
    2. By filtering the properties in each feature instance.
    Compared to Java functional interfaces, the first domain is equivalent to using Predicate<Feature> while the second domain is equivalent to using Unary­Operator<Feature>.
    Note: it is technically possible to use Query for performing more generic feature transformations, for example inserting new properties computed from other properties, but such Query usages should be rare since transformations (or more generic processing) are the topic of another package. Queries are rather descriptive objects used by Feature­Set to optimize search operations as much as possible on the resource, using for example caches and indexes.
    Compared to the SQL language, Query contains the information in the SELECT and WHERE clauses of a SQL statement. A Query typically contains filtering capabilities and (sometime) simple attribute transformations. Well known query languages include SQL and CQL.
    See Also:

    Defined in the sis-storage module

    • Constructor Detail

      • Query

        protected Query()
        Creates a new, initially empty, query.