Predicate Types
Binary Predicates
A binary predicate compares one entity property against a value using a comparison operator.Syntax
Full form:eq):
Comparison Operators
The
gt, ge, lt, and le operators work with Integer, Double, and Long values. They are not applicable to string or boolean properties.Examples
Equality — exact match on a property value:title:"System Requirement 1".
Inequality — exclude a specific value:
Null Predicates
Null checks test whether a property has a value or is empty. Useeq or ne with a null value.
Property has no value (intended behavior):
Composite Predicates
Composite predicates combine multiple sub-predicates using logical AND or OR operators.AND Predicate
All sub-predicates must match. Wrap conditions in anand array:
(status:"approved") AND (priority:{2 TO *})
OR Predicate
Any sub-predicate may match. Wrap conditions in anor array:
(status:"draft") OR (status:"in_review")
Nested Composites
AND and OR predicates can be nested to build complex filtering logic:(priority:[3 TO *]) AND ((status:"approved") OR (status:"in_review"))
Collection Quantifiers
Collection quantifiers evaluate predicates against multi-valued navigation properties (related entity collections).any uses short-circuit evaluation — it stops at the first match for performance.
all returns false at the first non-match. It is used in validation rules and completeness checks.
Collection quantifiers are used for filtering across related entity collections. The exact query syntax for
any and all with nested property conditions depends on the entity type metadata and the relationship configuration in the data model.ObjectId Predicates
Query a specific entity by its Polarion work item ID:project/id expands to a compound query: project.id:"myProject" AND id:"UN-001".
Data Property Predicates
Predicates on entity data properties are validated against the entity type schema before execution. Only scalar (non-navigation) properties are supported in direct predicates. The server API processes thewhere clause by:
- Extracting all property names from the predicate
- Matching each property against the entity type metadata
- Rejecting predicates that reference unknown or navigation properties
- Combining validated predicates with AND logic
Document and Project Predicates
Document and project predicates filter by navigation properties and are extracted separately from data property predicates. Document filtering:id field, the server API uses a simplified Lucene query (project.id:value). More complex project predicates undergo full predicate evaluation against the Project entity type metadata.
Where Clause Merging
When multiple filter conditions are combined (for example, from user-applied filters and sheet configuration constraints), Powersheet merges them using these rules:Lucene Translation Summary
Predicates are translated to Polarion Lucene query syntax before execution against the data store.Complete YAML Example
A source configuration with predicates applied through thewhere clause:
- Targets
UserNeedentities - Requires
titleto contain the substringSafety - Limits results to
approvedorin_reviewstatus - Requires priority of 3 or higher
- Expands the
systemRequirementsnavigation property - Scopes results to the current document
Predicate Type Compatibility
The following table summarizes which Polarion custom field types are compatible with each operator:Related Pages
- EntityQuery — top-level query structure with
from,where,expand, andorderBy - Expand Clause — loading related entities inline
- Query Context — runtime parameters for query execution
- Document Filtering — scoping queries to specific documents
- Binding Syntax — property path syntax used in predicate property names
- Sources — configuring data sources that use predicates