Skip to main content

Overview

PowerSheet configurations are defined in YAML files stored in .polarion/nextedy/sheet-configurations/. Each configuration specifies:
  • Column groups and their properties
  • Data source (entity type and relationships)
  • Views (filtered or reformatted displays)
  • Formatters and decorators (cell styling, color coding, enums)
  • Document links (where to create new work items)
A PowerSheet module binds to a configuration via the nextedySheetConfig custom field on the module.xml document.

PowerSheet Module Structure

PropertyTypeDefaultDescription
typeenumpowersheetDocument type in module.xml. Older modules may use requirement
nextedySheetConfigenumYAML config name from .polarion/nextedy/sheet-configurations/ (e.g., Whole RTM Config.yaml)
systemElementIdstringOptional: links PowerSheet to a specific system element for scoped views
homePageContentVelocityHTML rendered before user clicks PowerSheet button. Includes openPowersheetButton macro call and description of sheet purpose
statusenumdraftWorkflow status: draft, reviewed, approved

Document-Level Custom Fields

PowerSheet documents use five document custom fields to integrate with Polarion and Nextedy:
FieldTypeUsed ForExample
systemElementIdstringLink document to system element; used by dashboards to group documents per componentTA-20533 (PSU component)
templateDocenumReference to parent template for risksheet inheritance (Risksheet only)RiskTemplates / DFMEATemplate
nextedySheetConfigenumPowerSheet YAML config nameWhole RTM Config.yaml
versionstringDocument version tracking1.0, 1.1
teammulti-selectProject team members assigned to documentjwalek, admin
The exact enum values for nextedySheetConfig depend on your project’s YAML configurations. Use Polarion’s document editor to see available options.

Column Group Structure

PowerSheet columns are organized into column groups. Each group collapses/expands as a unit and may have a separate color theme.

Column Group Properties

PropertyTypeDescription
titlestringDisplay name in column header (e.g., “Customer Requirements”, “Design Requirements”)
colorhexBackground color for group (e.g., #4CAF50 for green, #9C27B0 for purple)
collapseTostringWhich column to show when group is collapsed (e.g., title or description)
columnsarrayList of column definitions in this group

Column Properties

PropertyTypeDescription
namestringInternal column identifier (e.g., id, title, description)
labelstringDisplay name in column header
sourcestringWhich field to read from (e.g., id, title, classification)
typeenumstring, enum, status, date, multi-item, custom
rendererobjectFormatter rules for display (color, enum mapping, etc.)
widthstringColumn width (e.g., 120px, auto)
sortablebooleanEnable sorting on this column

Renderers and Formatters

PowerSheet uses renderers to transform work item field values into styled display text.

Classification Renderer (SC/CC)

Maps the classification field enum to colored text:
renderer:
  type: classification
  mapping:
    sc: "SC"      # Safety-Critical
    cc: "CC"      # Custom-Critical
Displays as: SC (red) or CC (blue)

Enum Renderer (Color-Coded Status)

Maps enum values to colors:
renderer:
  type: enum
  mapping:
    approved: "#4CAF50"    # Green
    draft: "#FF9800"       # Orange
    rejected: "#F44336"    # Red

Priority Renderer

Maps priority levels to colors:
renderer:
  type: priority
  mapping:
    high: "#F44336"        # Red
    medium: "#FF9800"      # Orange
    low: "#4CAF50"         # Green

SAL (Security Assurance Level) Renderer

Maps SAL scores to 4×4 matrix colors:
renderer:
  type: sal
  # Likelihood × Impact = SAL color (from security-sal.md)
  # 1×1 = blue (SAL-4), 4×4 = red (SAL-1)

Custom Field Renderer

Displays custom work item fields:
renderer:
  type: custom
  field: "interfaceType"    # Custom field name
  mapping:
    hardware: "#42A5F5"
    software: "#AB47BC"
    hwsw: "#FFA726"

Data Sources and Expansion

PowerSheet reads data from the RTM model using source definitions:

Source Structure

sources:
  - model: rtm                      # Domain model name
    from: CustomerRequirement       # Starting entity type
    link: "customerReqs"            # Forward relationship name
    to: SystemRequirement
    expand:                         # Chain expansions
      - link: "systemReqs"
        to: SubsystemRequirement
      - link: "designReqs"
        to: DesignRequirement
      - link: "testCases"
        to: TestCase

Standard RTM Relationships

FromLinkToCardinality
CustomerRequirementcustomerReqsSystemRequirement1..n
SystemRequirementsystemReqsSubsystemRequirement1..n
SubsystemRequirementdesignReqsDesignRequirement1..n
DesignRequirementtestCasesTestCase1..n
DesignRequirementcharacteristicsCharacteristic1..n
SystemElementfunctionsFunction1..n
SystemElementcharacteristicsCharacteristic1..n
Expansion chains can have 2–4 levels. More than 4 levels may cause performance issues.

Constraints and Filtering

PowerSheet supports two types of constraints:

applyCurrentDocumentTo

Scopes the PowerSheet to show only work items from the current document:
constraints:
  applyCurrentDocumentTo:
    - SubsystemRequirement    # Show only this doc's subsystem reqs
    - DesignRequirement       # And their downstream design reqs
Use case: When a single module contains multiple subsystem requirement specs, use this constraint to show only the current module’s reqs, not all reqs in the project.

documentFilters

Target a specific document for entity creation (write-back):
entityFactory:
  modulePath: "Testing/DesignReqsVerification"
  # When user clicks "Add test case" in PowerSheet, create item in this document

Views

PowerSheet configurations can define multiple views — different column layouts or filters for the same data.

View Properties

PropertyTypeDescription
namestringDisplay name (e.g., “Summary”, “Without V&V”, “By DO-160G Section”)
columnsarrayColumn names to show in this view (omit a column to hide it)
groupBystringOptional: group rows by field value (e.g., envCategory for DO-160G sections)
sortBystringOptional: sort by column name

Example: Progressive Disclosure Views

views:
  - name: "Default"
    columns: [id, title, description, testCases]
  
  - name: "Summary"
    columns: [id, title]              # Hide descriptions for compact view
  
  - name: "Without V&V"
    columns: [id, title, description] # Hide test case columns
Users toggle views using the view dropdown in the PowerSheet toolbar.

Common Configuration Patterns

Whole RTM Configuration

Shows 4-level decomposition: Customer → System → Subsystem → Design Reqs with test cases.
columnGroups:
  - title: "Customer Requirements"
    color: "#4CAF50"                  # Green
    columns:
      - {name: "id", label: "ID", width: "80px"}
      - {name: "title", label: "Title"}
  
  - title: "System Requirements"
    color: "#9C27B0"                  # Purple
    columns:
      - {name: "id", label: "ID"}
      - {name: "classification", label: "Classification", renderer: {type: "classification"}}
  
  - title: "Subsystem Requirements"
    color: "#00BCD4"                  # Teal
  
  - title: "Design Requirements"
    color: "#2196F3"                  # Blue
  
  - title: "Test Cases"
    color: "#FF9800"                  # Orange

views:
  - name: "Full View"
    columns: [all]
  
  - name: "Without V&V"
    columns: [id, title, description] # Excludes test cases

Component-Scoped RTM

Same as Whole RTM but filtered to one subsystem:
constraints:
  applyCurrentDocumentTo:
    - SubsystemRequirement
    - DesignRequirement

Characteristics Tracking

Maps design requirements to characteristics:
sources:
  - model: rtm
    from: DesignRequirement
    expand:
      - link: "characteristics"
        to: Characteristic

columnGroups:
  - title: "Design Requirements"
    color: "#2196F3"
  
  - title: "Characteristics"
    color: "#4CAF50"

Environmental Qualification (DO-160G)

Design requirements → characteristics → test cases, grouped by DO-160G section:
views:
  - name: "By DO-160G Section"
    groupBy: "envCategory"            # Group rows by DO-160G section

Renderer Property Reference

diagram

Example: Complete Whole RTM Configuration

# .polarion/nextedy/sheet-configurations/Whole RTM Config.yaml

columnGroups:
  - title: "Customer Requirements"
    color: "#4CAF50"
    collapseTo: "title"
    columns:
      - name: "id"
        label: "ID"
        source: "id"
        type: "string"
        width: "80px"
        sortable: true
      
      - name: "title"
        label: "Title"
        source: "title"
        type: "string"
      
      - name: "description"
        label: "Description"
        source: "description"
        type: "string"
      
      - name: "classification"
        label: "Class"
        source: "classification"
        type: "enum"
        renderer:
          type: "classification"
          mapping:
            sc: "SC"
            cc: "CC"

  - title: "System Requirements"
    color: "#9C27B0"
    collapseTo: "title"
    columns:
      - name: "sysreq_id"
        label: "ID"
        source: "id"
        width: "80px"
      
      - name: "sysreq_classification"
        label: "Class"
        source: "classification"
        renderer:
          type: "classification"

  - title: "Subsystem Requirements"
    color: "#00BCD4"
    columns:
      - name: "subreq_id"
        label: "ID"
        width: "80px"

  - title: "Design Requirements"
    color: "#2196F3"
    columns:
      - name: "desreq_id"
        label: "ID"
        width: "80px"

  - title: "Test Cases"
    color: "#FF9800"
    columns:
      - name: "testcase_id"
        label: "Test ID"
        width: "100px"

sources:
  - model: rtm
    from: CustomerRequirement
    link: "customerReqs"
    to: SystemRequirement
    expand:
      - link: "systemReqs"
        to: SubsystemRequirement
      - link: "designReqs"
        to: DesignRequirement
      - link: "testCases"
        to: TestCase

views:
  - name: "Full View"
    columns: [all]
  
  - name: "Without V&V"
    columns: [id, title, description, sysreq_id, sysreq_classification, subreq_id, desreq_id]
  
  - name: "Summary"
    columns: [id, title, sysreq_id, subreq_id, desreq_id, testcase_id]

Best Practices

  1. Color by hierarchy level — Use distinct colors for each level (green → purple → teal → blue) to improve readability
  2. CollapseTo for usability — Always set collapseTo to the most important column (usually title or id)
  3. Limit expansions — Keep expansion chains to 3–4 levels; more causes performance issues
  4. Name views clearly — “Without V&V”, “Summary”, “By Standard” are more useful than “View 1”, “View 2”
  5. Test filtering early — Use applyCurrentDocumentTo to verify scoping works before adding all columns
  6. Document renderer mappings — Add comments explaining enum values (e.g., # sc = Safety-Critical)
PowerSheet configuration syntax and available renderers may vary by Nextedy product version. Review your .polarion/nextedy/sheet-configurations/ examples for current patterns.
Code: modules/RiskTemplates/DFMEATemplate/module.xml, modules/Risks/DFMEA-CMP-PSU/module.xml, modules/_default/WholeRTMSheet/module.xml, modules/Requirements/CUSTOMER-REQS/module.xml (representative of ~50 module.xml files across all spaces and templates) (0.65) · .polarion/nextedy/sheet-configurations/DO-160G Environmental Qualification.yaml, Component RTM.yaml, Configuration Index.yaml, Design Verification Sheet.yaml, Interface Control Matrix.yaml, Problem Report Tracker.yaml, Process Steps.yaml, Review Action Item Tracker.yaml, SOI Stage Gate Dashboard.yaml, Use Steps Specification.yaml, User Need Validation Sheet.yaml, characteristics.yaml, component-characteristics.yaml, customer-requirements.yaml, design-requirements.yaml, subsystem-functions.yaml, subsystem-verification.yaml, system-elements.yaml, test-verification.yaml (0.58) · modules/Risks/DFMEA-CMP-PSU/attachments/risksheet.json (0.44) · .polarion/documents/fields/custom-fields.xml (0.43) · .polarion/nextedy/sheet-configurations/ARP 4754A System Development Assurance.yaml (0.41) · .polarion/polarion-project.xml, .polarion/context.properties, .polarion/security/user-roles.xml, .claude/PROJECT.md, TODO.md (0.39) · .polarion/nextedy/sheet-configurations/Whole RTM Config.yaml (0.39) · .polarion/nextedy/sheet-configurations/DO-178C Objectives Compliance Matrix.yaml (0.36) · .polarion/nextedy/sheet-configurations/DO-254 Hardware Design Assurance.yaml (0.35)