OrganizationRole (Semantic Module)
The OrganizationRole semantic module is applied to the role property attached directly to the OrganizationMembers relationship edge, representing member roles within an organization (e.g. owner, admin, editor, viewer).
Technical Specifications
Section titled “Technical Specifications”| Attribute | Specification |
|---|---|
| Scope | Property (Applied to a relationship edge attribute) |
| Data Type | String (configured with an enum list of allowed roles) |
| Has Configuration | No |
Design Guidelines & Validation Rules
Section titled “Design Guidelines & Validation Rules”To build a valid organization role property, the platform enforces the following compile-time rules:
- Enum Requirement: The property annotated with
OrganizationRoledefines an enum of allowed roles (e.g.['owner', 'admin', 'editor', 'viewer']). - Relationship Edge Scope: The property must be attached directly to the
OrganizationMembersrelationship edge.
Configuring in the Domain Modeler
Section titled “Configuring in the Domain Modeler”To define organization roles in the user interface:
- Open the Domain Modeler and select the relationship tagged with
OrganizationMembers. - Under the relationship edge properties panel, locate the
roleproperty (tagged withOrganizationRole). - Enable the property for your API and customize the allowed Enum role options (e.g.,
owner,admin,editor,viewer). - Save your changes.
Runtime Behavior
Section titled “Runtime Behavior”When evaluating membership access using the matchOrganization access rule (e.g. enforcing allowedOrgRoles), the Serverless Engine inspects this edge property on the join table to verify whether the authenticated member holds one of the allowed roles for the requested API action.