Skip to content

Add Universal Processing Notation (UPN) Shape Library #5493

@ehsky

Description

@ehsky

Is your feature request related to a problem? Please describe.

draw.io supports many diagramming standards (UML, BPMN, flowcharts, etc.) but lacks support for Universal Process Notation (UPN). UPN is an open, nonproprietary process mapping standard originally developed in the early 2000s and released as an open standard in 2008. It is designed to be simple enough for anyone to use, not just process analysts, and is today supported by and embedded in many enterprise software programs. Teams that use UPN currently have no native shape library in draw.io and must manually construct activity boxes from grouped shapes, which is tedious and produces inconsistent results.

This was previously requested in #1031 but was declined, in part due to the lack of a suitable licensed icon set. This proposal addresses that concern directly: the implementation uses no external icons or image assets. All shapes are rendered programmatically using canvas drawing operations (rectangles, lines, circles, text), so there are no licensing dependencies. Everything is Apache 2.0 compatible.

Describe the solution you'd like

A UPN shape library in the sidebar palette containing:

  • Activity Box - A single shape divided into three sections: WHAT (activity description), WHO (responsible resources), and SYSTEM (tools used)
  • Flow Lines - Labeled connectors between activities describing WHY the next step occurs
  • RASCI role badges - Programmatically rendered visual indicators on resources showing their role (Responsible, Accountable, Supportive, Consulted, Informed)
  • Drill-down support - UPN's hierarchical process decomposition can be achieved by using draw.io's built-in link feature on activities to navigate to sub-process pages within the same document
Image

Describe alternatives you've considered

  • Using BPMN shapes as a substitute, but BPMN is significantly more complex and doesn't map well to UPN's simplicity
  • Building UPN diagrams manually from basic shapes, which works but is slow, inconsistent, and loses semantic meaning
  • Distributing a custom library via Extras > Configuration (similar to [drawIo-Salesforce](https://github.com/ehsky/drawIo-Salesforce)), which covers basic shapes but cannot support programmatic features like RASCI badge rendering

Additional context

I have a working implementation ready in my fork that i will link in a bit: https://github.com/ehsky/drawio

All rendering is done programmatically. No external icons, fonts, or image assets are required. Happy to open a PR if there is interest.

UPN references:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions