contentSpaceActionPolicy
Properties, variants, types and bounds for contentSpaceActionPolicy.
This reference describes the full structure of contentSpaceActionPolicy. Paths include nested objects, list items and conditional branches. A branch selected by kind, contract or mode only admits its own properties.
Structure and values
| Field | Options / expected values | Description |
|---|---|---|
contract |
"ContentSpaceActionPolicy@1" |
Required. Exact discriminant of this contract variant. Match the literal value shown. |
spaceKey |
string; min length 1; max length 120; /^[a-z][a-z0-9-]*$/u |
Required. Stable key reference to the corresponding named declaration; the compiler checks existence and compatibility. |
actionKey |
string; min length 1; max length 120; /^[a-z][a-z0-9-]*$/u |
Required. Reference to a declared Action; rendering does not execute it. |
minimumRole |
"owner" | "editor" |
Required. Cardinality or budget bound for the named resource. Exceeding the bound is refused; null denotes no bound only where admitted by the schema. |
Reading the contract
A path ending in [] describes each list item; {key} describes each dictionary value. The ↻ marker refers to the same recursive expression. Closed objects reject additional properties. Semantic validation denotes an additional check: matching a type does not make a reference, permission or transition valid. References must resolve in the Model and the current user context.
An older variant cannot accept properties belonging to a newer variant. The compiler checks the version and consistency of the complete Model.
Structural example
This fragment passes the schema for this section. Its business references must be defined in the enclosing Model.
{
"contract": "ContentSpaceActionPolicy@1",
"spaceKey": "client",
"actionKey": "client",
"minimumRole": "owner"
}
Related references
Complete Model index · Build a Model
Applied examples : Preparation and archive permissions
The Space policy requires editor to prepare and owner to archive, in addition to the application role. Command visibility does not replace those permissions.
Configuration
Contract object contentSpaceActionPolicy. Properties and accepted values.
{
"contract": "ContentSpaceActionPolicy@1",
"spaceKey": "clients",
"actionKey": "prepare-quote",
"minimumRole": "editor"
}
Variation and connection
Fragment placed in contentActions[]. Properties and accepted values.
{
"contract": "ContentSpaceActionPolicy@1",
"spaceKey": "clients",
"actionKey": "archive-client",
"minimumRole": "owner"
}
UI layout example
The illustrative layout below places this configuration in the Clients/Quotes app. Insert each fragment at the stated location, with Field, Query and Action references matching the Model declarations.
- Action
- Minimum role
- Authorized sources
- Decision
spaceKey- clients
actionKey- prepare-quote
minimumRole- editor
Values above follow the configuration fragment; references resolve in the complete Model.