Skip to main content

Identifiers & Literals


Basic expressions are the most fundamental building blocks in DQL. They represent either direct references to data sources (such as columns or tables) or literal values (such as strings, numbers, booleans, or nulls). These expressions do not perform any computation but serve as atomic elements within functions, predicates, and larger logic.

Usage​

These expressions appear inside other constructs like:

  • Predicate fields ($left, $right)

  • Function operands ($operand, $operands)

  • Containers like $list, $tuple, or $map

  • They are interpreted directly without additional computation.

These forms are often nested inside higher-level expressions and can be freely combined with other types.


$identifier​

Added in: indicate.dsl.dql@1.0.0

Refers to a column or alias name currently in scope.

{
"$identifier": <string>
}

$qualifier​

Added in: indicate.dsl.dql@1.0.0

Specifies a table reference, optionally including schema, catalog, or exclusion flags.

{
"$qualifier": {
"$table": <string>,
"$schema": <string>,
"$catalog": <string>,
"$excluded": <boolean>
}
}

$scalar​

Added in: indicate.dsl.dql@1.0.0

Represents a raw primitive value such as a string, number, boolean, or null.

{
"$scalar": <string> | <number> | <boolean> | <null>
}

$var​

Added in: indicate.dsl.dql@1.0.0

References a runtime variable, typically provided externally during evaluation.

{
"$var": <string> | <number> | <boolean> | <null>
}

$literal​

Added in: indicate.dsl.dql@1.0.0

Represents a string literal, escaped and encoded for inclusion as-is.

{
"$literal": <string>
}

$null​

Added in: indicate.dsl.dql@1.0.0

Explicitly represents a null value in expression form.

{
"$null": true
}