The four components
Every working powersheet setup involves four elements that collaborate at runtime:Domain model
The domain model is a YAML file that defines the semantic layer between Siemens Polarion ALM’s native work item types and the structured entities Powersheet works with. It declares:- Entity types (
domainModelTypes): named types that map to Polarion work item types via thepolarionTypeproperty. Each entity type lists its availableproperties— fields that can be displayed and edited in the sheet. - Relationships: connections between entity types specifying
from,to,cardinality,storagemechanism (typicallylinkedWorkItems), and thelinkRoleused in Polarion. Each relationship creates navigation properties (fromNavPropName,toNavPropName) that enable traversal between entities. - Constraints: optional rules for
load(query filtering),create(default values for new entities), andpick(picker dialog filtering).
Think of the domain model as a “lens” over Polarion’s data. It does not create new work item types — it maps existing ones into a structured hierarchy that Powersheet can navigate and enforce rules upon.
Sheet configuration
The sheet configuration is a YAML file that controls what the user sees and how they interact with the data. It references entity types and navigation properties from the domain model and defines:- Columns: each column has a binding path (e.g.,
title,systemRequirements.systemRequirement.severity) that maps to a domain model property or navigates through a relationship. Columns control display headers, width, editability, and formatting. - Sources: data source definitions with a
modelreference, aquery(specifying which entity type to start from), and anexpandtree (which relationships to follow when loading data). - Views: named presets that can show different column sets for the same data, allowing different analysis perspectives without separate configurations.
Powersheet Drive
Powersheet Drive is a sidebar navigation topic that provides users with a central entry point to all configured powersheet documents in a project. It queries for documents that have thenextedySheetConfig custom field populated and lists them in a drive-like navigator.
Powersheet Drive becomes visible once the powersheet topic is added to the project’s navigation views. See Setting Up Navigation for the tutorial.
LiveDoc (document entry point)
Each powersheet is anchored to a Polarion LiveDoc. The LiveDoc has anextedySheetConfig custom field that points to a sheet configuration file. When a user opens the document through Powersheet Drive, the sheet configuration and its referenced domain model are loaded, the data query executes, and the interactive sheet renders.
Documents can also include an “Open with Nextedy POWERSHEET” button using a Velocity macro, enabling bidirectional navigation between the standard LiveDoc view and the sheet view.
How the components connect
At runtime, the loading sequence follows a clear chain:- The user clicks a document in Powersheet Drive
- The
nextedySheetConfigcustom field value identifies the sheet configuration YAML file - The sheet configuration’s
sources[].modelproperty identifies the domain model - The domain model’s entity types are translated into a metadata structure
- The sheet configuration’s columns are resolved against that metadata
- The data source query executes, expanding relationships as specified
- The sheet renders with the configured columns, populated with data
| Component | Defined in | References |
|---|---|---|
| Domain model | Administration > Nextedy POWERSHEET > Domain Models | Polarion work item types, link roles |
| Sheet configuration | Administration > Nextedy POWERSHEET > Sheet Configurations | Domain model (by name) |
| LiveDoc | Project documents | Sheet configuration (via nextedySheetConfig field) |
| Powersheet Drive | Administration > Portal > Topics | Documents with nextedySheetConfig set |
The exact query used by Powersheet Drive to discover documents is configurable via project properties. The default query finds all documents with the
nextedySheetConfig field populated.Separation of concerns
The split between domain model and sheet configuration is deliberate. A single domain model can be shared by multiple sheet configurations, each presenting a different view of the same data. Conversely, a project can have multiple domain models for different use cases (e.g., requirements traceability vs. risk management). This separation means that changes to how data is displayed (columns, views) do not require changes to the data structure (entity types, relationships), and vice versa. For a deeper exploration of this design principle, see Data Model vs Sheet Configuration. For hands-on tutorials building each component, see the Getting Started section.Sources
Sources
Source Code
model.yamlprod-powersheet-src/com.nextedy.powersheet.client/src/modules/Powersheet/Powersheet.tsxprod-powersheet-src/com.nextedy.powersheet.client/ltc-repo/packages/sheet/SheetComponent.tsxtodos_model.yamltodosBig_model.yaml