How the Domain Model Works
The domain model is a YAML configuration file that declares three things:- Entity types — what kinds of objects exist (e.g.,
UserNeed,SystemRequirement,Hazard) - Relationships — how entity types connect to each other, with cardinality and link roles
- Properties — which fields each entity type exposes, mapped to Polarion work item fields
Entity Type Configuration
- Domain Model Types — Entity type definitions:
name,polarionType, nested properties, and plural name generation - Polarion Type Mapping — How
polarionTypemaps domain entities to Polarion work item types, including multi-type mappings
Relationships and Navigation
- Cardinality — Relationship multiplicity options (one-to-one, one-to-many, many-to-one, many-to-many) and how each affects source expansion and column binding
- Link Roles — Mapping domain model relationships to Polarion link role identifiers
- Navigation Directions — Forward (
direct) and reverse (back) navigation properties, naming conventions, and how directions drive expansion paths
Constraints and Access Control
- Constraints — Load, create, and pick constraint rules that scope which Polarion items an entity type includes, using Lucene query syntax
- Permissions — Entity-level and property-level access control:
readable,updatable,createable, andisReadOnlyflags - Context Expressions Reference — Dynamic context expressions for runtime evaluation in constraints and filters
Quick Orientation
| Concept | Key YAML Property | Reference |
|---|---|---|
| Define an entity type | domainModelTypes.TypeName | Domain Model Types |
| Map to Polarion | polarionType | Polarion Type Mapping |
| Add fields | properties | Properties |
| Connect entity types | relationships[] | Relationships |
| Set multiplicity | cardinality | Cardinality |
| Name navigation paths | direct.name / back.name | Navigation Directions |
| Assign Polarion link | linkRole | Link Roles |
| Restrict loaded items | constraints | Constraints |
| Control editability | isReadOnly, updatable | Permissions |
Relationship between model, sources, and columns
Relationship between model, sources, and columns
The domain model defines what exists. Sheet sources define what to query and expand. Columns define what to display. Navigation property names from the domain model are the thread connecting all three layers. See Cardinality for end-to-end examples showing how each cardinality type flows from model through source expansion to column binding.