[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [henshin-dev] Multiplicity Contraint for Edges
|
Hi Andreas,
take a look at the attached screenshot. This rule matches an
ExclusiveGateway that has exactly one incoming SequenceFlow. Note
that the two forbid actions have different indizes (1 and 2). This
is necessary to distinguish between two forbid patterns which
should be checked individually. If you omit these indices, the
match finder will try to find a match for all forbid-elements in
the rule together.
If you use indizes, then it is basically like an AND: there should
be no extra SequenceFlow AND there should be no NodeType with the
same id.
If you omit the indizes it is basically like an OR: there should
be either no SequenceFlow OR no NodeType with the same id.
In your case, you want an AND I think.
Hope that helps.
Cheers,
Christian
On 07/19/2012 12:29 PM, Andreas Drobisch wrote:
I
want to match the gateways which have only one "incoming"
SequenceFlow reference. I did an intermediate step and wanted to
forbid the match of exclusive gateways with a incoming sequence
flow, but thats not working (see attached image), the node will
always be created.
I am I missing something here? My other "forbid" works as
expected.
On Wed 18 Jul 2012 03:43:08 PM CEST, Christian Krause wrote:
Hi Andreas,
On 07/18/2012 03:21 PM, wp1101223-androbit wrote:
Hi Henshin Devs,
first of all: Henshin is great :) . Currently I am trying to
use it
to transform BPMN models to a graph exchange format.
Thanks.
I have managed the basic parts and now I
am little bit stuck on
checking the multiplicity of edges. Is it possible to have an
contraint on the number of matching edges / nodes (see
attached image)?
I am not 100% sure whether this is what you want to do, but if
you
want to make sure that there exists only one SequenceFlow object
with
a reference to the ExclusiveGate node, you can change the
SequenceFlow
action to <<preserve>> (for the reference as well),
and then add a
second SequenceFlow node and reference with the action
<<forbid>>.
You can find a similar example here:
http://wiki.eclipse.org/Henshin_Trace_Model -- the difference is
though that in this case Trace objects are created only if they
do not
exist yet. In your case you want to forbid the application if
there is
at least one such object already.
I hope this helps. Let us know if this is not what you are
trying to
achieve.
Cheers,
Christian
Best Regards,
Andreas
_______________________________________________
henshin-dev mailing list
henshin-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/henshin-dev
_______________________________________________
henshin-dev mailing list
henshin-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/henshin-dev
_______________________________________________
henshin-dev mailing list
henshin-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/henshin-dev
|
Attachment:
test.png
Description: PNG image