使用 Javascript 生成 BPMN XML
Generate BPMN XML with Javascript
我想生成这样的 BPMN XML 文件:
<?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:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn">
<bpmn:process id="Process_1" isExecutable="false">
<bpmn:startEvent id="StartEvent_1">
<bpmn:outgoing>SequenceFlow_1</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:task id="Task_1" name="Titulo111">
<bpmn:incoming>SequenceFlow_1</bpmn:incoming>
<extensionElements>abc</extensionElements>
</bpmn:task>
<bpmn:sequenceFlow id="SequenceFlow_1" sourceRef="StartEvent_1" targetRef="Task_1" />
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
<bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
<dc:Bounds x="173" y="102" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Task_1_di" bpmnElement="Task_1">
<dc:Bounds x="437" y="107" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_1_di" bpmnElement="SequenceFlow_1">
<di:waypoint xsi:type="dc:Point" x="209" y="120" />
<di:waypoint xsi:type="dc:Point" x="323" y="120" />
<di:waypoint xsi:type="dc:Point" x="323" y="147" />
<di:waypoint xsi:type="dc:Point" x="437" y="147" />
<bpmndi:BPMNLabel>
<dc:Bounds x="278" y="123.5" width="90" height="20" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
有什么方法可以用 javascript 做到这一点吗?
我尝试使用 createElement,但我无法在“:”之后设置属性,例如“<bpmn:process ... ></bpmn:process>
”
提前致谢。
看看 bpmn.io 项目 (http://bpmn.io/)。
它包括一个 javascript 库来生成 BPMN 以及一个建模和渲染模块(用于 BPMN)。
仅供参考:冒号字符之前的文本表示 XML 名称 space(在您的情况下为 bpmn
),因此您需要确保将其添加到 XML 根元素:xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL"
您可能想看看这个 article (quoted from this original post) 以获取有关如何在 JS 中创建名称为 spaces 的 XML 文档的更多信息。
希望这对您有所帮助,
我想生成这样的 BPMN XML 文件:
<?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:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn">
<bpmn:process id="Process_1" isExecutable="false">
<bpmn:startEvent id="StartEvent_1">
<bpmn:outgoing>SequenceFlow_1</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:task id="Task_1" name="Titulo111">
<bpmn:incoming>SequenceFlow_1</bpmn:incoming>
<extensionElements>abc</extensionElements>
</bpmn:task>
<bpmn:sequenceFlow id="SequenceFlow_1" sourceRef="StartEvent_1" targetRef="Task_1" />
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
<bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
<dc:Bounds x="173" y="102" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="Task_1_di" bpmnElement="Task_1">
<dc:Bounds x="437" y="107" width="100" height="80" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="SequenceFlow_1_di" bpmnElement="SequenceFlow_1">
<di:waypoint xsi:type="dc:Point" x="209" y="120" />
<di:waypoint xsi:type="dc:Point" x="323" y="120" />
<di:waypoint xsi:type="dc:Point" x="323" y="147" />
<di:waypoint xsi:type="dc:Point" x="437" y="147" />
<bpmndi:BPMNLabel>
<dc:Bounds x="278" y="123.5" width="90" height="20" />
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
有什么方法可以用 javascript 做到这一点吗?
我尝试使用 createElement,但我无法在“:”之后设置属性,例如“<bpmn:process ... ></bpmn:process>
”
提前致谢。
看看 bpmn.io 项目 (http://bpmn.io/)。 它包括一个 javascript 库来生成 BPMN 以及一个建模和渲染模块(用于 BPMN)。
仅供参考:冒号字符之前的文本表示 XML 名称 space(在您的情况下为 bpmn
),因此您需要确保将其添加到 XML 根元素:xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL"
您可能想看看这个 article (quoted from this original post) 以获取有关如何在 JS 中创建名称为 spaces 的 XML 文档的更多信息。
希望这对您有所帮助,