id
Fully-qualified unique identifier of this model instance. A member follows its actual owning instance, so two instances of the same user class have distinct member IDs. declarationId retains the common source declaration for navigation and naming rules.
Format follows Kotlin's own uniqueness rules:
Top-level
val fooin packagecom.x.y→"com.x.y.foo"(the synthetic…Ktfile-facade class is recognised by its simpleName ending inKtand stripped; if@file:JvmNameoverrides the facade name, the override is treated as a regular class —com.x.y.MyFacade.foo.)Member
val fooof instancecom.x.y.controller→"com.x.y.controller.foo".An explicitly bound exchange/DSL ID remains authoritative across uses.
Anonymous entities (constructed but never bound to a Kotlin val, so referenceName stays null even after wireup) do not have an ID. Reading id for such an entity fails fast instead of inventing a process-local fallback.