Color-Of-Code / dokuwiki-plugin-bpmnio

Renders BPMN and DMN diagrams using the bpmn.io js library within dokuwiki
https://www.dokuwiki.org/plugin:bpmnio
Other
1 stars 2 forks source link

Link to DokuWiki pages #6

Open andyboeh opened 8 years ago

andyboeh commented 8 years ago

I would like to link my process steps to DokuWiki pages. Do you have any idea how this could be implemented?

jdehaan commented 8 years ago

In order to implement this there are several things required:

Without involving changes to bpmnio this could be implemented via a postprocessing step, just after bpmnio generated the SVG. The resulting SVG could be parsed again by the dokuwiki plugin in order to inject links. This should work and not be a very big challenge.

Do you have an idea about the syntax for the links? I believe the most "wiki"-like way would simply be to support [[page|title]] syntax. IMHO this should be the first thing in the state description and if present the link is generated. There is AFAIK no way to link single words to pages, it needs to be a complete SVG element like the state. But maybe I'm wrong.

This sounds like a good plan but I do not know when I would have time to implement this. Do you have any better idea or additional suggestions or comments?

andyboeh commented 8 years ago

What do you mean by "state"?

I thought of using an overlay (https://github.com/bpmn-io/bpmn-js-examples/tree/master/overlays) for displaying the links.

jdehaan commented 8 years ago

I meant putting the link directly over the model's rectangle for one "task", I mistakenly talked about "state" as I mostly use UML and looks similar. I like also the overlay solution.

But how would you make the link between the model containing the items to link and the overlay specification?

Syntactically this becomes a challenge for the user. Or do I miss something. The overlay seems a bit more intrusive. But still worth investigating if a technical solution is easier to be done this way. Sometimes you maybe not want to change models to add things to it, this is for sure useful - if not for this - then for other use cases.