Null checks test whether a property has a value or is empty. Use eq or ne with a null value.Property has no value:
title: eq: null
Property has a value:
title: ne: null
Expression
Lucene Translation
Meaning
prop: { eq: null }
NOT HAS_VALUE:prop
Property is empty
prop: { ne: null }
HAS_VALUE:prop
Property has a value
The HAS_VALUE pseudo-field is a Polarion-specific Lucene construct for checking property existence. The server API translates null predicates into this syntax automatically.
Resulting Lucene: (priority:[3 TO *]) AND ((status:"approved") OR (status:"in_review"))
AND binds more tightly than OR. Each operand in composite predicates is parenthesized during Lucene translation to maintain correct evaluation order. Use explicit nesting when combining AND and OR to ensure predictable results.
Returns true if any element in the collection matches the condition
all
every
Returns true if all elements in the collection match the condition
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 domain model.
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 the where 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
If a predicate references a property that does not exist in the entity type metadata, the query will fail with a validation error. Always use property names exactly as defined in the domain model.
For navigation property filtering (document or project scoping), use the dedicated constraint system. See Document Filtering and Query Context.
Cross-project queries are not supported. All queries execute within a single project scope. The project predicate is used to specify which project to query, not to query across multiple projects simultaneously.
When the project predicate contains only an 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.
When multiple filter conditions are combined (for example, from user-applied filters and sheet configuration constraints), Powersheet merges them using these rules: