Skip to content

FIQL Compliance: filter by just the selector #28

@mckaygraybill

Description

@mckaygraybill

Hi, thanks for this cool parser, it's been very easy to use so far. Today I came across something that seems worth bringing up. I haven't read the whole FIQL document yet but noticed that just the selector by itself is valid FIQL:

A FIQL constraint is composed of a selector, which identifies a
portion of an entry's content, and an optional comparison/argument
pair, which refines the constraint. When processed, a constraint
yields a Boolean value.

constraint = selector [ comparison argument ]

It is a way to select data in the resource for which that field is present. However, in the readme for this project we find the following:

Comparison is composed of a selector, an operator and an argument.

comparison = selector, comparison-op, arguments;

Indeed, when I specify only the selector and no operator or arguments I get a RSQLParserException (Encountered "" at line 1, column 2.). This seems incongruent with the following quote on the readme:

Since RSQL is a superset of the FIQL, it can be used for parsing FIQL as well.

Maybe there are other parts of FIQL that are not supported in RSQL, I don't know at the moment. Should that wording be changed, or should support for single selectors be added?

I can see how it could be used as a "is not null" check, though that would still leave the "is null" check unsupported by default.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions