Overview

The EMF Query project facilitates the process of search and retrieval of model elements of interest in a flexible yet controlled and structured manner. Provides API support for the basic EObject based Condition objects that are used to formulate queries for EMF models.

The query component provides the following classes/interfaces to support queries.

The IEObjectSource interface provides the search scope elements to be used in a query.

The SELECT class implements a template-function that does the iteration over model elements and applies the search condition on each; it collects the resulting elements into a QueryResultSet object and returns it to the caller.

The FROM class represents the elements to search. It is responsible of providing an appropriate iterator for the elements in the search space.

The WHERE class applies the search conditions over the elements in the search set.

The UPDATE class passes the elements who satisfy the search condition to a caller-supplied modification function. It collects the modified elements into a QueryResultSet object and returns it to the caller.

The QueryResultSet class represents the set of elements returned by a given query.

The EObjectCondition class is the abstract parent of all conditions that deal with model-elements (i.e., EObjects). It incorporates the services of a PruneHandler in order to answers whether or not to prune the element tree at a specific element and thus ignore its children.

The ConditionPolicy class is used to allow the user to decide how to apply a given condition on a collection of a model-element EAttributes or EReferences values. Supports both the: exists (ANY) and for-all (ALL) semantics.

The EObjectStructuralFeatureValueCondition class is the parent class for conditions that are responsible for checking the values held in model-elements attributes or references.

Features

New in this release

No significant events have occurred with the Indigo release. EMF Query is undergoing it's participation in the Eclipse Simultaneous release as it has for each and every release. This is the sixth yearly June release of EMF Query.

Communities

Interaction in Bugzilla

Activity on the EMF newsgroup

Collaboration with other projects at Eclipse

Commiter Changes

No committers changes on EMF Query for Indigo. Anthony Hunter is the lead of the the EMF Query component and currently the only active committer on EMF Query. There are other active committers on the EMF Query2 component in the EMF Query project.

IP Issues

The EMF Query component leadership verifies that:

the about files and use licenses are in place as per the Guidelines to Legal Documentation.

all contributions (code, documentation, images, etc) have been committed by individuals who are either Members of the Foundation, or have signed the appropriate Committer Agreement. In either case, these are individuals who have signed, and are abiding by, the Eclipse IP Policy.

all significant contributions have been reviewed by the Foundation's legal staff.

all non-Committer code contributions, including third-party libraries, have been documented in the release and reviewed by the Foundation's legal staff.

all Contribution Questionnaires have been completed.

the "provider" field of each plug-in is set to "Eclipse Modeling Project“.

the "copyright" field of each feature is set to the copyright owner (the Eclipse Foundation is rarely the copyright owner).

any third-party logos or trademarks included in the distribution (icons, help file logos, etc) have been licensed under the EPL.

any fonts or similar third-party images included in the distribution (e.g. in PDF or EPS files) have been licensed under the EPL.