An app to map event logs into ontology-based process knowledge and analyze the data through a library of knowledge patterns
Project description
Process Meaning Patterns - Python Repository
Process Meaning Patterns is a framework designed to enable ontology-aware process mining. Ontology-aware process mining is meant to formalize process knowledge applied throughout the process mining lifecycle to enable transparency and replicability. This is accomplished through process meaning patterns, first-order logic ontology patterns that correspond to common verification and inference steps in the process mining lifecycle. This repository contains an implementation of the process meaning pattern framework implemented in python and supporting exporting of process knowledge to various formats including OWL/RDF, First order logic via CLIF or Prover9 syntax, and prolog/datalog.
The process meaning patterns framework is actively maintaned and developed by Riley Moher of the semantic technologies (stl) laboratory at the University of Toronto.
Example Usage
The central object of the process meaning pattern library is the LogProcessor, which can ingest a business process event log in a variety of formats and output corresponding facts to be validated against or queried with process meaning patterns. Here is a simple example:
import ProMean4Py
# define column names
col_dict = {'case_id': 'caseID', 'activity': 'activityID', 'timestamp': 'timestamp', 'resource': 'resourceID', 'event_id' : 'eventID'}
# create output directory
output_dir= '../output/testing/'
# define namespaces for knowledge graph
namespaces = {'ex' : "http://example.com/", 'on' : "https://stl.mie.utoronto.ca/ontologies/spm/"}
# initialize the log processor on some data
log_processor = LogProcessor('sample_log.csv', process_name='P1', column_dict=col_dict, prefixes=namespaces)
# save the event log facts as a knowledge graph
log_processor.save_knowledge_graph(output_dir, format='xml')
# save the event log facts as first-order-logic facts
log_processor.save_FOL(output_dir)
# save the event log facts as datalog facts
log_processor.save_datalog(output_dir)
More thorough examples, including an example utilizing real-world enterprise data, are available in the notebooks directory of this repository.
Installation
ProMean4Py is published on the python package index (pypi) and can be installed on any python version >= 3.9.X by simply invoking pip:
pip install ProcessMeaningPatternsPython
Release Notes
Release notes are tracked in the CHANGELOG.md file of this repository.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file processmeaningpatternspython-0.11.tar.gz.
File metadata
- Download URL: processmeaningpatternspython-0.11.tar.gz
- Upload date:
- Size: 3.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53d175f66f60e8d1351ea6a1a474f4518d309c3b5eae383eb464843723144dc3
|
|
| MD5 |
bd4452178153b9aa35b43ec5587d594a
|
|
| BLAKE2b-256 |
527192081bc4bcaf0cd57ca503e826077856f370c8a47ccb9b7e76aa5b86e325
|
File details
Details for the file ProcessMeaningPatternsPython-0.11-py3-none-any.whl.
File metadata
- Download URL: ProcessMeaningPatternsPython-0.11-py3-none-any.whl
- Upload date:
- Size: 3.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.9.21
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e3a653d2659792393dae3800640f7229d683fd69d3aa5437a4cc11424fa9bb2a
|
|
| MD5 |
d766893d05b1a2e29a0015f7bf9e2e9a
|
|
| BLAKE2b-256 |
5342def0a23ad71a0e04c3d069c8c24a8705a78e565e60ab67fb2d8f35789a4d
|