The core problem
Powersheet requires two YAML files to work together: a domain model (defining entity types and relationships) and a sheet configuration (defining columns, sources, and views). These files reference each other — the sheet configuration uses navigation property names from the domain model, and queries entity types defined there. When both files are written from scratch with full complexity, any mismatch between them produces errors that are difficult to trace. A typo in a navigation property name, a missing entity type reference, or an incorrect relationship direction can all produce similar-looking failures.The layered model
Think of Powersheet configuration as building with blocks. Each layer adds one capability on top of a working foundation:The layers below use RTM entity types as an example. Apply the same incremental approach with whatever entity types your domain requires.
Layer 1: Single entity type
Start with just one entity type in the domain model and two or three columns in the sheet configuration. This validates that:- The domain model loads without errors
- The
polarionTypemapping is correct - The sheet configuration can query and display data
- The
modelreference in the sheet configuration resolves
Layer 2: One relationship
Add a second entity type and a single relationship. This validates that:- Navigation property names (
fromNavPropName,toNavPropName) are correct - The
expandsection in the source configuration works - Binding paths like
systemRequirements.systemRequirementresolve correctly
Layer 3: Deeper hierarchy
Add a third entity type with nested expansion. This validates that multi-level expansion paths likesystemRequirements.systemRequirement.designRequirements.designRequirement work correctly.
Layer 4: Full configuration
Add constraints, views, entity factories, and additional entity types. At this point the foundation is proven and each addition is isolated to a single change.Why this works
Powersheet processes domain model and sheet configuration through several stages. First, the domain model YAML is loaded and its entity types are translated into a metadata structure. Then the sheet configuration is loaded, columns are resolved against the metadata, and data sources execute their queries with the specified expansion paths. When an error occurs at any stage, having only one new change since the last working state makes the cause obvious. The alternative — writing the entire configuration at once — means any of dozens of possible mismatches could be the cause.Configuration scope
Both domain models and sheet configurations support two levels of scope:| Scope | Location | Use case |
|---|---|---|
| Project | Project-level administration | Project-specific entity types and columns |
| Global | Global administration (shown with “(Global)” suffix) | Shared configurations reused across projects |
Common validation pitfalls
Based on support patterns, these are the errors most frequently seen during initial configuration:| Error pattern | Likely cause |
|---|---|
| Model fails to load | Entity type name contains spaces or special characters |
| ”Left error” in relationships | from value does not match any domainModelTypes name |
| ”Right error” in relationships | to value does not match any domainModelTypes name |
| Columns show no data | Binding path uses wrong navigation property name |
| Sheet shows no rows | query.from uses Polarion type ID instead of entity type name |
Practical starting points
For hands-on tutorials that follow this incremental approach:- Creating Your First Data Model — start with two entity types
- Creating Your First Sheet Configuration — start with four columns
- Creating Your First Powersheet Document — connect configuration to a LiveDoc
Sources
Sources
KB ArticlesSupport TicketsSource Code
prod-powersheet-src/com.nextedy.powersheet.client/cypress/e2e/userFlows/multiple-entity-type-flow.cy.tsprod-powersheet-src/com.nextedy.powersheet/src/META-INF/hivemodule.xmlprod-powersheet-src/com.nextedy.powersheet/src/com/nextedy/powersheet/PowersheetDocumentConfigurationService.javaprod-powersheet-src/com.nextedy.powersheet/src/com/nextedy/powersheet/PowersheetService.javaprod-powersheet-src/com.nextedy.powersheet.client/src/modules/ConfigProvider/ConfigProvider.tsx