opengeospatial / opengeospatial/ogcapi-features

CQL2 can we support propertyName in isInListPredicate?

Open
#992 5 comments 0 reactions 1 assignee View on GitHub

@pvretano is already working on this.

Since Aug 11, 2025.

CQL2
Dominant language
CSS
Stars
386
Forks
92
Avg merge
3d 4h
Merged PRs (30d)
15

Description

I hope to do something like this:

'building' IN labels

but according to the CQL2 standard:

isInListPredicate = scalarExpression ["NOT"] "IN" "(" inList ")";
inList = scalarExpression [ {"," scalarExpression} ];
scalarExpression = characterClause                                                                                                                                                                         
                 | numericLiteral
                 | instantInstance
                 | arithmeticExpression
                 | booleanLiteral
                 | propertyName
                 | function;

"‘building' IN labels" is invalid. I can only use array functions:

A_CONTAINEDBY( ('building'), labels)

Which is an overkill approuch.
But I think the array function is complecated. And it is hard to convert to SQL.

So can we support the propertyName in isInListPredicate? something like:

isInListPredicate = scalarExpression ["NOT"] "IN" "(" inList ")"
  | scalarExpression ["NOT"] "IN" propertyName
  | scalarExpression ["NOT"] "IN" function;

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.