SimpleAttribute String {}
SimpleAttribute Natural {}
SimpleAttribute PythonCode {}

Class ProcessNode {
    name : String
}

Class Initial : ProcessNode {}

Class Finish : ProcessNode {}

Class Activity : ProcessNode {
    distribution : PythonCode
}

Class ParallelSplit : ProcessNode {}

Class Synchronization : ProcessNode {}

Class ExclusiveChoice : ProcessNode {
    distribution : PythonCode
}

Class MultiInstance : ProcessNode {
    nr_instances : Natural
    distribution : PythonCode
}

Class SimpleMerge : ProcessNode {}

Association Next (ProcessNode, ProcessNode) {}
Association DecisionTrue (ExclusiveChoice, ProcessNode) {}
Association DecisionFalse (ExclusiveChoice, ProcessNode) {}
