PlantUML活动图新(测试版)语法,带有参考早期活动的短代码?

PlantUML活动图新(测试版)语法,带有参考早期活动的短代码?,uml,plantuml,Uml,Plantuml,我使用传统的PlantUML活动语法()创建了一个活动图: 看起来是这样的: 我现在正试图使用新的(beta)语法()重新创建这个图,但是我很难复制短代码的功能来引用和返回到前面的活动步骤 @startuml start :Request created; :Review request; if (is Accepted?) then (Yes) :Assign; if (is Urgent) then (Yes) :In Develop

我使用传统的PlantUML活动语法()创建了一个活动图:

看起来是这样的:

我现在正试图使用新的(beta)语法()重新创建这个图,但是我很难复制短代码的功能来引用和返回到前面的活动步骤

@startuml

start
:Request created;
:Review request;

if (is Accepted?) then (Yes)
    :Assign;

    if (is Urgent) then (Yes)
        
        :In Development;
        :Engineer Assigned;
        stop
    else (No)
        :Backlog;
        ' HERE I WOULD LIKE BACKLOG TO HAVE 
        ' A BACKWARD ARROW POINTING UP TO 
        ' "REVIEW REQUEST"
    endif
else (No)
    :Won’t Do;
    stop
endif
@enduml

是否可以使用新语法实现与我使用旧语法创建的相同的图表?

您可以这样做:

@startuml
start

:Request created;

while (Review request?) is (accepted)
     :Assign;
     if (is Urgent ?) then (Yes)
        :In Development;
        :Engineer Assigned;
        stop
    else (No)
        :Backlog;
    endif
endwhile (not accepted)
:Won't Do;
stop
@enduml
制作:

。。。这与您的第一个图表一样是非法的,因为有两个输入流要审查请求,我们不在一个是decisionInputFlow,另一个是主要传入边缘的情况下(参见§15.3.3.6)
决策节点(第390页,共页),必须在决策节点之前使用合并节点。

我仍然不明白,当目标只是制作一张图片时,为什么人们会浪费时间使用PlantUML,当然,当结果在UML中无效时,这是最糟糕的。对我来说,使用任何标准的绘图工具都能更好地节省时间,也能使图片符合预期和有效,而不受PlantUML选择/容量的限制。实现PlantUML毫无疑问是一个有趣且不容易的问题,但使用它对我来说毫无意义。当然,对于那些想要使用UML的人来说,包括制作图表,而不仅仅是画图,UML建模师们在这里就是为了这个。你有Word的时候为什么要用Latex?@SomeWittyUsername我过去用过Latex,但是对于人来说,使用WYSIWYG编辑器更快更实用。。。包括文本编辑器生成Latex时;-)这是关于平衡的。我怀疑你们会不会用Word写一篇数学论文,即使技术上可行。PlantUML等工具也是如此——图片本质上是一次性产品,不需要修改、维护等。如果你计划更改、扩展、嵌入图表,我不认为使用图片会让你的生活更轻松。@SomeWittyUsername我不是数学家,但我知道Latex有能力生成漂亮的公式,不仅如此。但是关于最初的主题,我坚持认为使用PlantUML是一种不太实用的方法。。。最差的生成图与UML标准不兼容
@startuml
start

:Request created;

while (Review request?) is (accepted)
     :Assign;
     if (is Urgent ?) then (Yes)
        :In Development;
        :Engineer Assigned;
        stop
    else (No)
        :Backlog;
    endif
endwhile (not accepted)
:Won't Do;
stop
@enduml