O2o
O2OManager ¶
Bases: BaseManager
Manages object-to-object (O2O) relations within an OCEL instance.
Provides
- Access to the raw O2O relation table
- A normalized O2O table using canonical constant column names
- Type-enriched O2O relations (joining object types)
- Aggregated summaries of O2O relation multiplicities
This manager acts as a typed and normalized facade over the PM4PY O2O relation table.
Source code in src/ocelescope/src/ocelescope/ocel/managers/o2o.py
df property ¶
Return the O2O relation table with normalized column names.
PM4PY uses mixed naming conventions for O2O relations (e.g., "ocel:oid" and "ocel:oid_2"). This property maps these raw names to canonical constants:
1 2 | |
Returns:
| Name | Type | Description |
|---|---|---|
DataFrame | DataFrame | A normalized O2O relation table. |
typed_df property ¶
Return the O2O relation table enriched with object types.
Adds two additional columns to the normalized O2O table:
1 2 | |
These are obtained by joining against the object manager’s type_by_id Series.
Returns:
| Name | Type | Description |
|---|---|---|
DataFrame | DataFrame | A type-enriched O2O relation table. |
summary ¶
Compute summary statistics for O2O relationships.
Summaries include min/max/total numbers of target objects per source object, grouped by qualifier and type.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
direction | SUMMARY_DIRECTION | Whether the summary should be computed from the perspective of the source object ( | 'source' |
Returns:
| Type | Description |
|---|---|
list[RelationCountSummary] | list[RelationCountSummary]: A list of structured relation count summaries. |