Skip to content

About

Filter DSL module for Sequeless

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

sequeless-filter

sequeless-filter is a standalone human-facing query language: a text DSL that parses to a FilterNode AST, a serializer that renders an AST back to canonical DSL text with a round-trip guarantee, pluggable operator and field registries, and completion utilities for building an interactive query UI. It has no runtime dependency on any storage or query engine — a consumer resolves the parsed AST against whatever backend it owns.

lineItems.qty > 5 and status is 'shipped'
any contains 'urgent'
createdAt meets between('2024-01-01', '2024-02-01')
status is in ['open', 'pending'] and (region is 'us' or region is 'eu')

See docs/filter-dsl.md for the full grammar, operator set, serialization rules, and completion behavior.

Add it as a dependency

Requires JDK 21.

<dependency>
  <groupId>org.sequeless</groupId>
  <artifactId>filter-core</artifactId>
  <version>0.0.0-SNAPSHOT</version>
</dependency>

Modules

Module Coordinates Contents
filter-core org.sequeless:filter-core The DSL: AST model, ANTLR 4 grammar and parser, serializer, operator and field registries, completion utilities.
filter-sql-adapter org.sequeless:filter-sql-adapter Translates a parsed FilterNode AST into raw, parameterized SQL via a hexagonal QueryBuilder vendor port. See docs/sql-adapter.md.

The repository root is a pom-packaged aggregator/parent (org.sequeless:sequeless-filter) that ships no code — it holds the single shared version, dependency management, and build plugins. All modules are released together from that one version.

Build

make verify    # full build + tests + quality gates (Spotless, Enforcer, ArchUnit)
make test      # fast unit tests only
make fmt       # apply formatting (Spotless / Palantir Java Format)

make verify wraps ./mvnw -B verify; the Maven wrapper is committed, so no local Maven install is required.

Documentation

Contributing

See CONTRIBUTING.md.

License

Apache License 2.0.

About

Filter DSL module for Sequeless

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages