bpmn-io/bpmn-js-differ

Find diffs inside <bpmn:extensionElements>

Open

#28 opened on Mar 3, 2025

View on GitHub
 (5 comments) (3 reactions) (0 assignees)JavaScript (20 forks)auto 404
backlogenhancementgood first issuespring cleaning

Repository metrics

Stars
 (55 stars)
PR merge metrics
 (PR metrics pending)

Description

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

Changes(any, e.g. updated, added/removed) in camunda elements under bpmn:extensionElements are not recognized, even is Camunda Moddle is added and finds diffs in camunda attributes on main level well

Tried also via https://demo.bpmn.io/diff, maybe it`s just some old version is there. Currently looking for similar tool for my project.

Describe the solution you'd like

Add precise elements check for diffs inside bpmn:extensionElements same as other elements

Describe alternatives you've considered

nope

Additional context

bpmn example for tests:

<?xml version="1.0" encoding="UTF-8"?>
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.2">
  <bpmn:process id="Process_1" isExecutable="true">
    <bpmn:businessRuleTask id="BusinessRuleTask" camunda:decisionRef="foobar">
      <bpmn:extensionElements>
        <camunda:inputOutput>
          <camunda:inputParameter name="firstInput">in2</camunda:inputParameter>
          <camunda:inputParameter name="secondInput">in3</camunda:inputParameter>
          <camunda:outputParameter name="secondOutput">out2</camunda:outputParameter>
        </camunda:inputOutput>
      </bpmn:extensionElements>
    </bpmn:businessRuleTask>
  </bpmn:process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
      <bpmndi:BPMNShape id="BusinessRuleTask_1lqeokr_di" bpmnElement="BusinessRuleTask">
        <dc:Bounds x="396" y="134" width="100" height="80" />
      </bpmndi:BPMNShape>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</bpmn:definitions>

Contributor guide