Bindings Documentation
This documentation covers all functionality of Rust4PM exposed through the dynamic binding system.
Language Bindings
Rust4PM provides bindings for multiple programming languages. Install the package for your language to get started.
Python
r4pm
pip install r4pm[polars]Two APIs are available for working with Rust4PM in Python:
Basic DataFrame API
Easy import/export of event data (XES, OCEL 2.0) as DataFrames. Use this API for quick data manipulation and analysis, or for integration with PM4Py.
Requires the optional polars dependency.
import r4pm
# df is a polars DataFrame
# use df.to_pandas() for usage with PM4Py
df, attrs = r4pm.df.import_xes('log.xes')
r4pm.df.export_xes(df, 'output.xes.gz')
# For OCEL with PM4Py support:
ocel = r4pm.df.import_ocel_pm4py('ocel.xml')
Full Bindings API
Full access to all Rust4PM functions documented here. Large data (e.g., event logs) are stored in item registry for efficient handling.
import r4pm
# Import an event log into the item registry
log = r4pm.import_item('EventLog', 'log.xes')
# Export an item from the registry
r4pm.export_item(log, 'output.xes.gz')
# Use any binding function
res = r4pm.bindings.discover_dfg(event_log)
propel is a process mining studio powered by Rust4PM. Besides dedicated analysis views and panels, it provides a visual pipeline editor for building process mining workflows based on Rust4PM function bindings.
Propel is available as a in-browser web application and as a desktop application for Windows, macOS, and Linux.
For the source code and installation instructions, visit propel on GitHub.

Command Line Interface
r4pm
cargo install r4pmThe install command above builds the CLI from source and thus requires a Rust toolchain to be available. See also rust-lang.org/tools/install/.
Use the CLI to run process mining functions directly from your terminal.
r4pm discover_dfg --event_log log.xes dfg.jsonModules
Popular Functions
get_dfg_of_object_type
process_mining::discovery::object_centric::dfg
get_variants_of_object_type
process_mining::discovery::object_centric::variants
discover_oc_declare
process_mining::discovery::object_centric::oc_declare
discover_dfg
process_mining::discovery::case_centric::dfg
discover_alpha+++
process_mining::discovery::case_centric::alphappp::full
index_link_ocel
process_mining::bindings
