pm4py.streaming.algo.conformance.footprints.variants 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.streaming.algo.conformance.footprints.variants.classic 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

class pm4py.streaming.algo.conformance.footprints.variants.classic.Parameters[source]#

Bases: object

DICT_VARIANT = 'dict_variant'#
DICT_ID = 'dict_id'#
CASE_DICT_ID = 'case_dict_id'#
DEV_DICT_ID = 'dev_dict_id'#
CASE_ID_KEY = 'pm4py:param:case_id_key'#
ACTIVITY_KEY = 'pm4py:param:activity_key'#
class pm4py.streaming.algo.conformance.footprints.variants.classic.FootprintsStreamingConformance(footprints, parameters=None)[source]#

Bases: StreamingAlgorithm

build_dictionaries(parameters)[source]#

Builds the dictionaries needed to store the information during the replay

Parameters#

parameters
Parameters:
  • Parameters.DICT_VARIANT: type of dictionary to use

  • Parameters.CASE_DICT_ID: identifier of the dictionary hosting the last activity of a case (1)

  • Parameters.DEV_DICT_ID: identifier of the dictionary hosting the deviations (2)

encode_str(stru)[source]#

Encodes a string for storage in generic dictionaries

verify_footprints(case, activity)[source]#

Verify the event according to the footprints (assuming it has a case and an activity)

Parameters#

case

Case ID

activity

Activity

verify_intra_case(case, activity)[source]#

Verify the footprints of the current event

Parameters#

case

Case

activity

Activity

verify_start_case(case, activity)[source]#

Verify the start activity of a case

Parameters#

case

Case

activity

Activity

get_status(case)[source]#

Gets the current status of a case

Parameters#

case

Case

Returns#

boolean

Boolean value (True if there are no deviations)

terminate(case)[source]#

Terminate a case (checking its end activity)

Parameters#

case

Case

Returns#

boolean

Boolean value (True if there are no deviations)

terminate_all()[source]#

Terminate all cases

message_case_or_activity_not_in_event(event)[source]#

Sends a message if the case or the activity are not there in the event

message_activity_not_possible(activity, case)[source]#

Sends a message if the activity is not contained in the footprints

Parameters#

activity

Activity

case

Case

message_footprints_not_possible(df, case)[source]#

Sends a message if the directly-follows between two activities is not possible

Parameters#

df

Directly-follows relations

case

Case

message_start_activity_not_possible(activity, case)[source]#

Sends a message if the activity is not a possible start activity

Parameters#

activity

Activity

case

Case

message_end_activity_not_possible(activity, case)[source]#

Sends a message if the activity is not a possible end activity

Parameters#

activity

Activity

case

Case

message_case_not_in_dictionary(case)[source]#

Sends a message if the case is not in the current dictionary

Parameters#

case

Case

pm4py.streaming.algo.conformance.footprints.variants.classic.apply(footprints, parameters=None)[source]#

Gets a footprints conformance checking object

Parameters#

footprints

Footprints object

parameters

Parameters of the algorithm

Returns#

fp_check_obj

Footprints conformance checking object