Skip to content

docs(core-spec): correct Sigma CASE and NULLIF mappings - #660

Merged
christianeu-db merged 1 commit into
apache:mainfrom
bk-ww:docs/sigma-if-nullif-mapping
Oct 29, 2026
Merged

christianeu-db merged 1 commit into
apache:mainfrom
bk-ww:docs/sigma-if-nullif-mapping

Conversation

@bk-ww

@bk-ww bk-ww commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

Summary

Two rows of the Sigma column in core-spec/expression_language.md (Conditional Function Mapping) describe Sigma as less capable than it is:

Ossie Standard Before After
CASE WHEN... Only 3-argument If(cond, t, f); no native multi-branch CASE If(c1, v1, c2, v2, ..., else) (variadic; else is optional and defaults to Null)
NULLIF(a, b) If(a = b, Null(), a) NullIf(a, b)

Sigma documents both: If takes condition/value pairs with an optional else, and NullIf is native. The Sigma converter has used both mappings since apache/ossie-converters#12, as suggested in that PR's review.

Docs only; no spec semantics change.

Related Issues

Follows apache/ossie-converters#12 (fixes apache/ossie-converters#21).

Checklist

Specification

Converters

Compliance

  • ASF license headers are present on all new source files (no new files)
  • No third-party dependencies are added

Sigma's If() is variadic, If(c1, v1, c2, v2, ..., else), with an
optional else that defaults to Null, so a multi-branch CASE maps to
it directly. Sigma also has a native NullIf(a, b). The Sigma converter
uses both since apache/ossie-converters#12.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 28, 2026 22:38
@github-actions

Copy link
Copy Markdown

Thank you for your first contribution to Apache Ossie (incubating)!

A committer will review your PR. In the meantime, please ensure:

  • All CI checks pass
  • ASF license headers are present on new source files
  • Tests cover new functionality

No ICLA is required to contribute. If you are elected as a committer in the future, you will need an Individual Contributor License Agreement (ICLA) on file with the ASF.

Questions? Ask in the PR comments or join us on Slack.

We appreciate your contribution!

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota.

@christianeu-db christianeu-db left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine to merge. Although this fixes a core spec file, dialects are now opaque to the spec and are moving to extensions (#641).

@christianeu-db
christianeu-db merged commit d8aa85b into apache:main Oct 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Sigma converter: SQL→Sigma rejects NULL, NULLIF and CASE without ELSE, so its own output doesn't round-trip

3 participants