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
}