No BPMNDI Information
Memastikan elemen BPMN yang tampil secara visual memiliki informasi grafis (BPMNDI).
| Atribut | Nilai |
|---|---|
| Rule ID | no-bpmndi |
| Severity | Error — wajib diperbaiki agar BPMN lolos linter |
| Elemen yang dicek | Seluruh elemen yang seharusnya tampil di diagram |
| Sumber | bpmnlint (rule bawaan) |
Rule No BPMNDI Information memeriksa agar setiap elemen BPMN yang memiliki representasi visual juga memiliki informasi grafis (BPMNDI) yang menyertainya.
Sebuah elemen BPMN dirujuk oleh elemen BPMNDI. BPMNDI mendefinisikan bagaimana elemen tersebut ditampilkan atau digambar. Ada kalanya pengguna tidak sengaja menghapus elemen BPMNDI (misalnya karena mengedit XML secara langsung). Kondisi ini dapat menimbulkan kesalahan: elemen BPMN tetap ikut dijalankan saat proses dieksekusi, namun tidak lagi terlihat pada alat pemodelan grafis. Rule ini bertugas mendeteksi kasus-kasus semacam itu.
Contoh penggunaan yang salah (perhatikan task1):
<bpmn:process id="Process_0unw6ak" isExecutable="true">
<bpmn:task id="task1" />
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_0unw6ak">
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>Contoh penggunaan yang benar:
<bpmn:process id="Process_0unw6ak" isExecutable="true">
<bpmn:task id="task1" />
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_0unw6ak">
<bpmndi:BPMNShape id="Activity_1r7w5u9_di" bpmnElement="task1">
<dc:Bounds x="160" y="77" width="100" height="80" />
</bpmndi:BPMNShape>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>Pesan di Studio
Temuan rule ini tampil di panel Problems BPMN Editor dengan pesan berikut:
Element is missing bpmndi
Cara memperbaiki
- Temuan ini berarti elemen ada di XML BPMN tetapi tidak punya bentuk visual, sehingga tidak tampil di canvas. Biasanya terjadi pada BPMN hasil impor atau hasil generate.
- Hapus elemen tersebut dari XML BPMN bila memang tidak dipakai, atau gambar ulang elemen tersebut di canvas.
- Bila BPMN berasal dari hasil generate, generate ulang atau perbaiki sumbernya.
Referensi
Dokumentasi BPMN Linter: https://github.com/bpmn-io/bpmnlint/blob/main/docs/rules/no-bpmndi.md
