Behavior/DecisionNodePN [ Rules ]

[ Top ] [ Behavior ] [ Rules ]

SUMMARY

Transfotrm a SysML DecisionNode into its HiLeS Petri Net representation. ($Rev: 443 $)

DESCRIPTION

This rule only creates the initial place-arc-transition. The required FB (and associated PN elements) will be created by the ControlFlow rule, because the number of FBs depends on the output ControlFlows and because the created FB is not a PN element. Also, the PayLoad created to connect each guard FB is given a name and connected to the respective Input pin.

SEE ALSO

DOMAIN

SPECIFICATION

        relation DecisionNode
        {
            checkonly domain SysML node:DecisionNode {
                activity = a:Activity{},
                name = nn,
            }
            enforce domain HiLeS p:Place {
                PetriNet = pn:PetriNet{},
                name = nn + '_P',
            }
            enforce domain HiLeS t:Transition {
                PetriNet = pn:PetriNet{},
                name = nn + '_T',
            }
            enforce domain HiLeS a:Arc {
                PetriNet = pn:PetriNet{},
                from_node = p:Node{},
                to_node = t:Node{},
            }
            when {
                ActivityPetriNet(a, pn, arch);
            }
 *