Overview
The Copy Attribute enrichment creates a duplicate of an existing attribute with a new name, enabling you to preserve original data while performing transformations, create backup copies before modifications, or establish multiple versions of the same data for different analytical purposes. This fundamental data manipulation operator works seamlessly with both case and event attributes, automatically detecting the attribute level and creating the copy at the appropriate location in your dataset structure.
In process mining, the ability to copy attributes is essential for data preservation, attribute versioning, and creating working copies for subsequent transformations. The Copy Attribute enrichment performs a complete replication of the source attribute, including its data type, display format, and all values. When combined with filters, you can selectively copy attribute values only for specific cases, leaving the new attribute blank for cases that don't match the filter criteria. This selective copying capability makes the enrichment particularly valuable for data segmentation, conditional data preparation, and creating attribute variants for different analytical scenarios.
The enrichment intelligently handles all attribute types - text, numeric, boolean, and datetime - preserving the exact data type and formatting of the source attribute. This type preservation ensures that downstream calculations, filters, and visualizations can work with the copied attribute exactly as they would with the original, maintaining data integrity throughout your analytical workflows.
Common Uses
- Create backup copies of attributes before applying transformations or enrichments
- Preserve original values while creating modified versions for comparison analysis
- Duplicate attributes for different analytical contexts (weekly vs. monthly reporting)
- Create working copies of attributes for iterative data quality improvements
- Establish baseline versions of attributes before applying conditional updates
- Copy attributes selectively based on filter criteria for segmented analysis
- Generate attribute variants with different display names for business vs. technical audiences
Settings
Column Name: Select the source attribute that you want to copy. This can be any existing case or event attribute in your dataset. The enrichment will automatically detect whether the attribute is at the case or event level and create the copy at the same level. All data types are supported, including text, numeric, boolean, and datetime attributes. The display format and data type of the source attribute will be preserved in the copy.
New Attribute Name: Specify the name for the new copied attribute. Choose a descriptive name that clearly indicates the purpose of the copy or its relationship to the original. For example, use "Original_Amount" when creating a backup before transformations, or "Baseline_Status" when preserving initial values. The name must be unique and cannot conflict with existing attributes in your dataset.
Filter (Optional): Apply filters to control which cases receive the copied values. When filters are specified, only cases matching the filter criteria will have values copied to the new attribute. Cases that don't match the filter will have the new attribute created but left blank (null). This selective copying is useful for creating attribute variants that apply only to specific process segments, time periods, or case categories. The filter operates at the case level, even when copying event attributes.
Examples
Example 1: Creating a Baseline Status for Comparison
Scenario: In an order fulfillment process, you need to preserve the initial order status at the time of creation to compare against the current status and track status changes throughout the process lifecycle.
Settings:
- Column Name: Order_Status
- New Attribute Name: Initial_Order_Status
- Filter: None (copy for all cases)
Output: Creates a new case attribute "Initial_Order_Status" that contains an exact copy of the Order_Status values. For cases with:
- Order_Status: "Pending Approval"
The Initial_Order_Status will also be: "Pending Approval"
Later in your analysis, you can compare Initial_Order_Status with the current Order_Status to identify which orders have changed status, enabling analysis of status progression patterns and identifying cases stuck in specific states.
Insights: This baseline copy enables change tracking analysis, helps identify process bottlenecks where statuses don't progress as expected, and provides a reference point for measuring process evolution over time.
Example 2: Preserving Original Cost Before Currency Conversion
Scenario: In a global procurement process, you need to convert all costs to a base currency (USD) for consolidated reporting, but you want to preserve the original cost values in their native currencies for audit and reconciliation purposes.
Settings:
- Column Name: Invoice_Amount
- New Attribute Name: Original_Invoice_Amount
- Filter: None
Output: Creates a new case attribute "Original_Invoice_Amount" containing the exact copy of Invoice_Amount values. For cases with:
- Invoice_Amount: 45000.00 (in various currencies)
- Currency: "EUR"
The Original_Invoice_Amount will be: 45000.00
After copying, you can apply currency conversion enrichments to Invoice_Amount while Original_Invoice_Amount remains unchanged, preserving the source data for audit trails and variance analysis.
Insights: This preservation approach maintains data lineage, enables audit reconciliation between original and converted amounts, and provides transparency in multi-currency reporting scenarios.
Example 3: Creating Regional Variants for Different Analysis Contexts
Scenario: In a sales process spanning multiple regions, you want to create separate copies of the sales amount attribute for different regional teams, each containing values only for their respective region to simplify region-specific analysis.
Settings:
- Column Name: Sales_Amount
- New Attribute Name: North_America_Sales
- Filter: Region = "North America"
Output: Creates a new case attribute "North_America_Sales" that contains sales amounts only for North American cases. For a North American case with:
- Sales_Amount: 125000.00
- Region: "North America"
The North_America_Sales will be: 125000.00
For cases from other regions:
- Sales_Amount: 85000.00
- Region: "Europe"
The North_America_Sales will be: blank (null)
Insights: This selective copying enables region-specific dashboards and reports without requiring constant filter application, simplifies variance analysis between regions, and allows different teams to focus on their relevant data subset.
Example 4: Establishing a Working Copy for Iterative Data Quality
Scenario: In a customer service process, you need to clean and standardize product category names, but you want to preserve the original raw values for quality assurance and to track the extent of data cleaning required.
Settings:
- Column Name: Product_Category
- New Attribute Name: Product_Category_Original
- Filter: None
Output: Creates a new case attribute "Product_Category_Original" with exact copies of all Product_Category values. For cases with:
- Product_Category: "Laptop Computer - 15in"
The Product_Category_Original will be: "Laptop Computer - 15in"
After copying, you can apply text replacement, grouping, and standardization enrichments to Product_Category while Product_Category_Original remains unchanged, allowing you to:
- Compare cleaned vs. original values to measure data quality improvements
- Identify the most common raw variations that required standardization
- Maintain an audit trail of all data transformations
Insights: This working copy approach enables transparent data quality processes, provides before-and-after comparison capabilities, and maintains traceability of all transformations applied to your data.
Example 5: Creating Time-Based Snapshots for Trend Analysis
Scenario: In a project management process, you want to capture the project completion percentage at specific milestones to analyze how estimates change over time and identify patterns in project forecast accuracy.
Settings:
- Column Name: Completion_Percentage
- New Attribute Name: Completion_At_Midpoint
- Filter: Milestone = "Project Midpoint Review"
Output: Creates a new case attribute "Completion_At_Midpoint" that captures the completion percentage only for cases that have reached the midpoint review. For a case at midpoint with:
- Completion_Percentage: 45
- Milestone: "Project Midpoint Review"
The Completion_At_Midpoint will be: 45
For cases not yet at midpoint:
- Completion_Percentage: 25
- Milestone: "Initial Planning"
The Completion_At_Midpoint will be: blank (null)
Later, as Completion_Percentage continues to update, you can compare the midpoint snapshot with the final completion to analyze estimate accuracy and identify projects that significantly deviated from midpoint projections.
Insights: These temporal snapshots enable trend analysis over project lifecycles, help identify systematic estimation biases at different project phases, and provide baseline metrics for improving future project planning accuracy.
Output
The Copy Attribute enrichment creates a single new attribute at the same level (case or event) as the source attribute. The new attribute is an exact replica of the source attribute, preserving:
- Data Type: The copied attribute maintains the same data type as the source (text, integer, decimal, boolean, or datetime)
- Display Format: Any formatting applied to the source attribute (currency symbols, decimal places, date formats) is preserved in the copy
- Values: All non-null values from the source attribute are copied exactly to the new attribute
The new attribute appears in your dataset alongside the original attribute and can be used in all mindzieStudio features including filters, calculators, visualizations, and subsequent enrichments. When no filter is applied, the new attribute will have values for all cases or events (matching the source attribute's completeness). When a filter is applied, only cases or events matching the filter criteria will have values populated in the new attribute; non-matching cases will have the attribute present but set to null.
The copied attribute is marked as a derived attribute in the dataset metadata, indicating it was created through enrichment processing rather than being part of the source data. The attribute's dependencies reference the original source attribute, maintaining data lineage for auditing and understanding data transformations.
For event attributes, the copying operation is performed at the event level, meaning each individual event receives a copy of its attribute value. For case attributes, the copying occurs at the case level, with the single case-level value being duplicated to the new attribute.
This documentation is part of the mindzie Studio process mining platform.