The cardinality property in the Nextedy POWERSHEET domain model defines the multiplicity of relationships between entity types.
Cardinality is a Powersheet domain model concept. Polarion link roles do not have a cardinality setting — Powersheet uses the cardinality value to control how the sheet renders and navigates relationship data.
Defines the relationship multiplicity between the from and to entity types
The cardinality property is declared within each entry of the relationships array in the domain model YAML. It works together with from, to, storage, linkRole, direct, and back to form a complete relationship definition.
The domain model, sheet sources, and sheet columns are connected through navigation property names. The cardinality of a relationship determines which expand pattern and column binding syntax to use.
Domain model defines entity types and relationships (including cardinality, direct, and back navigation property names)
Sheet sources define how to query and expand those relationships using the navigation property names
Sheet columns define how to display the resulting data using binding paths derived from the same navigation property names
Scenario: Each UserNeed belongs to exactly one Chapter.The relationship uses the direct direction with name: chapter (singular, scalar navigation property). Because the cardinality is many-to-one, the navigation property on the “from” side points to a single entity.
The expand uses the direct navigation property name chapter. Because it is a scalar property (N:1), the expand resolves to a single related entity per row.
columns: title: title: Title hasFocus: true chapter: title: Chapter display: title list: search: - title chapter.title: title: Chapter Title isReadOnly: true
Column Key
Behavior
Description
chapter
Single-value reference picker
Scalar navigation property renders as a dropdown picker. The display property controls the displayed label. The list.search array defines searchable fields.
chapter.title
Read-only display
Dot-notation accesses a property on the referenced entity. Set isReadOnly: true to prevent editing.
A singular navigation property name (e.g., chapter) indicates a N:1 cardinality. The sheet renders this as a single-value reference picker, not an expandable child level.
Scenario: Each Chapter has multiple child UserNeed items.This is the reverse side of the many-to-one relationship above. It uses the back direction with name: userNeeds (plural, collection navigation property).
The expand uses the back navigation property name userNeeds. Because it is a collection property (1:N), the expand creates child rows underneath each Chapter.
Collection navigation property expands into a new hierarchical level in the sheet. Each child row displays one UserNeed.
When a collection navigation property is used as a column key, it opens a new sheet level with child rows. No dot-notation is needed — the expand directly opens the child level.
Scenario:UserNeed items are linked to multiple SystemRequirement items, and vice versa.Many-to-many relationships use an association entity as an intermediate layer. The source expand is two levels deep, and column binding uses dot-notation to reach through the association to the target entity.
columns: title: title: Title hasFocus: true systemRequirements.systemRequirement: title: System Requirement list: search: - objectId - title createNew: true systemRequirements.systemRequirement.title: title: SysReq Title hasFocus: true
Column Key
Behavior
Description
systemRequirements.systemRequirement
Multi-item reference picker
Two-level dot-notation traverses association then target. Renders as a multi-item picker. list.search enables search; createNew: true allows creating new linked items.
systemRequirements.systemRequirement.title
Display field on target
Three-level dot-notation accesses a property on the target entity through the association.
M:N relationships always require a two-level expand in the source configuration. If you omit the inner expand (- name: systemRequirement), the column will bind to the association entity rather than the target entity, and data will not display correctly.
The one-to-one cardinality value means each entity on both sides links to exactly one entity on the other side. The behavior is identical to many-to-one from a source expand and column binding perspective — the navigation property is scalar, and the column renders as a single-value reference picker.