Skip to main content

DomainSupport

Defined in: js-api/src/domains.ts:183

What a domain table can do AT ALL, independent of the caller — the server's one answer (DomainAccess.support) for every optional behaviour a client would otherwise guess from the table's shape. Orthogonal to DomainAccess.can: can is this caller's permission, support is the table's storage and declaration. A client installs an optional affordance only when its flag is true, and refuses by name when it is false — never probes.

Properties

PropertyTypeDescriptionDefined in
ancestorsbooleanThe table declares a hierarchy, so DomainTableClient.pathTo and the under filter term answer. On a flat table pathTo is a DomainUnsupportedError, while under on a column that is not a tree reads as an unknown column (DomainFilterError) — no oracle.js-api/src/domains.ts:201
auditbooleanWrites leave an in-transaction audit trail (DomainTableClient.audit / DomainTableClient.auditLog); row watch needs it too.js-api/src/domains.ts:197
deletedbooleanSoft delete: `deleted: 'include''only'reads and the~is_deleted` service column.
probebooleanThe table carries updated_on, so a live client can poll for the newest write.js-api/src/domains.ts:203
restorebooleanDomainTableClient.restore brings a soft-deleted row back (writes AND deleted).js-api/src/domains.ts:194
systemColumnsDomainSystemColumn[]The system columns this table physically has, in projection order. A registration that declares a subset (a platform table exposed through the Core schema) lists only those.js-api/src/domains.ts:186
versionbooleanThe change token (DomainTableClient.version) moves: every write goes through the engine. False for a registration the platform itself writes, whose token never advances — poll the aggregate instead. Reading the token also needs DomainAccess.can.view.js-api/src/domains.ts:207
watchbooleanDomainTableClient.watch subscribes to change notifications.js-api/src/domains.ts:209
writesbooleanThe engine accepts writes (DomainTableClient.insert / DomainTableClient.update / DomainTableClient.batch / DomainTableClient.updateWhere). False for a read-only, entity-backed or system-subset registration — which answers 403 read-only for every write.js-api/src/domains.ts:190