Skip to main content

Step 1: Verify Entity Type Names

Entity type names in domainModelTypes must be single words without spaces or special characters:
domainModelTypes:
  UserNeed:          # correct
    polarionType: userNeed
  SystemRequirement: # correct
    polarionType: systemRequirement
Names like User Need (with a space) or System-Requirement (with a hyphen) cause parsing errors. Always use PascalCase without separators: UserNeed, SystemRequirement, DesignRequirement.

Step 2: Verify polarionType Mappings

Ensure each polarionType value matches an existing Polarion work item type ID. Go to Administration > Work Item Types in Polarion to check available types.
Domain Model EntitypolarionTypeCheck
UserNeeduserNeedMust exist in Polarion
SystemRequirementsystemRequirementMust exist in Polarion
DesignRequirementdesignRequirementMust exist in Polarion
HazardhazardMust exist in Polarion
RiskControlriskControlMust exist in Polarion
Powersheet generates a JSON schema for domain model configuration. IDE editors with YAML schema support will show validation errors and autocomplete suggestions as you edit.

Step 3: Verify Relationship References

In the relationships section, both from and to values must reference entity type names defined in domainModelTypes — not Polarion work item type IDs:
relationships:
  - from: UserNeed           # must match a domainModelTypes key
    to: SystemRequirement    # must match a domainModelTypes key
    cardinality: one-to-many
    storage: linkedWorkItems
    linkRole: refines
    direct:
      name: systemRequirements
    back:
      name: userNeeds
A common error is writing from: userNeed (Polarion type) instead of from: UserNeed (domain model entity). The from and to fields must match domainModelTypes keys exactly. Errors from an invalid from value appear as “left errors” and invalid to values appear as “right errors” in the error log.
Each linkRole in a relationship must match a link role defined in Polarion:
  1. Go to Administration > Work Item Link Roles in Polarion
  2. Confirm the link role ID exists (e.g., refines, verifies, relatesTo)
  3. Verify the link role allows connections between the correct work item types

Step 5: Check Property Names

Properties listed in entity type definitions should match Polarion custom field names or built-in field names:
domainModelTypes:
  UserNeed:
    polarionType: userNeed
    properties:
      description: ~   # built-in Polarion field
      severity: ~       # built-in Polarion field
      component: ~      # built-in Polarion field
Reserved property names project and document have special handling and should not be defined as custom properties.

Step 6: Use the Model Helper Widget

The Model Helper widget provides a visual representation of your model structure and helps verify that bindings and expansion paths are correct:
  1. Open a LiveReport page with the Model Helper configured
  2. Set the parameters:
    • model: your model name (e.g., rtm)
    • projectId: your project ID
    • startEntity: the root entity type (e.g., UserNeed)
    • depth: number of relationship levels to display
  3. Review the tree structure to confirm all relationships are correctly connected

Validation Checklist

Use this checklist to validate your domain model before deployment:
  • All entity type names are single PascalCase words
  • Each polarionType exists in Polarion work item types
  • All from and to values in relationships reference domainModelTypes keys
  • All linkRole values exist in Polarion link role configuration
  • Navigation property names (direct.name, back.name) are unique per entity type
  • Properties reference valid Polarion field names
  • cardinality values are one of: one-to-one, many-to-one, one-to-many, many-to-many
  • storage is set to linkedWorkItems for Polarion link-based relationships

Verify

After correcting any issues, save the domain model and open a powersheet document. You should now see:
  • The sheet loads without model connection errors
  • All entity types display the correct Polarion work items
  • Relationships expand correctly in the hierarchy
  • Picker dialogs show items of the correct types

See Also

SchemaGenerator.java, model.yaml, OrderByClause.java, ticket insights on validation rules
KB ArticlesSupport TicketsSource Code
  • OrderByClause.java
  • prod-powersheet-src/com.nextedy.powersheet.client/src/modules/ModelProvider/ModelProvider.tsx
  • SchemaGenerator.java
  • QueryToLuceneTest.java
  • model.yaml