Lower-level SQL validation and query-building helpers.
Most application code should prefer Arex.Record, Arex.Query,
Arex.Schema, and the graph helpers. Arex.Sql is useful when extending
Arex or building custom wrappers on top of the same validation and boundary
rules.
This module is where Arex centralizes reusable SQL-oriented behavior such as:
- identifier and RID validation
- boundary stamping for inserts
- boundary-aware filter construction
- protection of system-managed or boundary-managed fields
Keeping those rules here lets higher-level modules stay small while still sharing one consistent definition of tenant/scope behavior.
Summary
Functions
Builds a parameterized set clause from an attribute map.
Builds a parameterized where clause from filters and the active boundary.
Drops system fields and stamps boundaries for insert content payloads.
Drops system-managed and boundary keys before merge-style updates.
JSON-encodes a map for inline SQL content and merge clauses.
Returns whether a record matches the active tenant and scope boundary.
Normalizes a map so all keys are strings.
Rejects attribute maps that attempt to mutate protected or system-managed keys.
Rejects protected property names that helper APIs must not mutate directly.
Stamps active tenant and scope values onto an attribute map.
Resolves the effective type from record attrs and the resolved type option.
Validates a type, property, or other generated SQL identifier.
Validates an ArcadeDB index name, including bracketed names such as Customer[field].
Validates an ArcadeDB RID such as #12:0.
Functions
Builds a parameterized set clause from an attribute map.
Builds a parameterized where clause from filters and the active boundary.
Drops system fields and stamps boundaries for insert content payloads.
Drops system-managed and boundary keys before merge-style updates.
JSON-encodes a map for inline SQL content and merge clauses.
Returns whether a record matches the active tenant and scope boundary.
Normalizes a map so all keys are strings.
Rejects attribute maps that attempt to mutate protected or system-managed keys.
Rejects protected property names that helper APIs must not mutate directly.
Stamps active tenant and scope values onto an attribute map.
Resolves the effective type from record attrs and the resolved type option.
Validates a type, property, or other generated SQL identifier.
Validates an ArcadeDB index name, including bracketed names such as Customer[field].
Validates an ArcadeDB RID such as #12:0.