pm4py.objects.bpmn.util package#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

Submodules#

pm4py.objects.bpmn.util.bpmn_utils module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

pm4py.objects.bpmn.util.bpmn_utils.get_node_by_id(id, bpmn_graph)[source]#

Returns the node with specified id

Parameters#

id

id string

bpmn_graph

BPMN graph

Returns#

node that matches the id

pm4py.objects.bpmn.util.bpmn_utils.get_global_start_events(bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_initial_marking(bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_boundary_events_of_activity(activity_id, bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_external_boundary_events_of_activity(activity_id, bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_all_nodes_inside_process(process_id, bpmn_graph, deep=True)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_all_direct_child_subprocesses(process_id, bpmn_graph, include_normal=False)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_all_child_subprocesses(process_id, bpmn_graph, include_normal=False)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_processes_deep(node, bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_subprocesses_sorted_by_depth(bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_termination_events_of_subprocess(activity_id, bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_termination_events_of_subprocess_for_pnet(activity_id, bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_start_events_of_subprocess(activity_id, bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.get_end_events_of_subprocess(activity_id, bpmn_graph)[source]#
pm4py.objects.bpmn.util.bpmn_utils.bpmn_graph_end_events_as_throw_events(bpmn_graph)[source]#

pm4py.objects.bpmn.util.reduction module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

pm4py.objects.bpmn.util.reduction.reduce_xor_gateways(bpmn_graph, parameters=None)[source]#

Reduces the number of XOR gateways in the diagram

Parameters#

bpmn_graph

BPMN graph

parameters

Parameters

Returns#

bpmn_graph

(possibly reduced) BPMN graph

pm4py.objects.bpmn.util.reduction.apply(bpmn_graph, parameters=None)[source]#

Reduce the complexity of a BPMN graph by removing useless elements

Parameters#

bpmn_graph

BPMN graph

parameters

Parameters

Returns#

bpmn_graph

(possibly reduced) BPMN graph

pm4py.objects.bpmn.util.sorting module#

PM4Py – A Process Mining Library for Python

Copyright (C) 2024 Process Intelligence Solutions UG (haftungsbeschränkt)

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see this software project’s root or visit <https://www.gnu.org/licenses/>.

Website: https://processintelligence.solutions Contact: info@processintelligence.solutions

pm4py.objects.bpmn.util.sorting.bfs_bpmn(nodes: Iterable[Event], edges: Iterable[Tuple[Event, Event]])[source]#
pm4py.objects.bpmn.util.sorting.get_sorted_nodes_edges(bpmn_graph: BPMN) Tuple[List[Event], List[Tuple[Event, Event]]][source]#

Assure an ordering as-constant-as-possible

Parameters#

bpmn_graph

BPMN graph

Returns#

nodes

List of nodes of the BPMN graph

edges

List of edges of the BPMN graph