Reference
Property Type: reference
A Reference property is a structure that exposes the object, identifier of another object instance. Some references can be expanded , allowing an object instance to be read through another.
Property ACLs can be attached to references in order to allow greater access to expanded properties than would normally be allowed. For example, the Patient File Object account property exposes the name property of the referenced account when expanded to anyone who is Connected to the Patient File.
Custom reference properties can be configured to allow the reference identifier to be updated, but only if the caller has the required referenceAccess
to the instance being referenced. References can also be configured to include a static list of properties, or disallow expansion entirely.
Property Options
Option | Type | Default | Description |
expandable | Boolean | false | If true, this property can be expanded using "expand" options |
autoCreate | Boolean | false | If true, a referenced object is auto-created, owned by the owner of the host context (in the case of account, the account holder) |
grant | Number | acl.AccessLevels.NoAllow | Applies to expansions. The access level granted to the calling principal through expansion. Warning! This option can expose private context details. Consider using object pacls instead, and leave the grant level low. |
sourceObject | String | Content | Applies to expansions. The name of the object from which to expand. |
paths | String | Content | Applies to expansions. A list of fixed property names to load if the property is expanded. If set, access is always granted to these paths. |
referenceAccess | Number | acl.AccessLevels.Share | The access required by the calling principal on the referenced context in order to set the reference _id. |
pacl | Document | Content | Adds augmented access to individual properties in the expanded object. |
writeThrough | Boolean | false | Allows updating referenced objects, overriding access control using custom defaultAcl, gran and roles. |
inheritInstanceRoles | Boolean | false | When true, instance roles held by the caller on the current instance are applied to the reference when expanded or updated using write-through. |
defaultAcl | Object[] | [] | An overriding set of acl rules to apply to referenced instances when expandable or write-through is enabled. |
Last updated