Overview
The Bulk Data Transformation node is a transformation node in a Weave workflow that applies Data Transformation actions to multiple tables in a source Datasource at once, writing the transformed tables directly to a destination Datasource. The eleven actions and twenty Deidentification generator sub-types are identical to the Data Transformation node; the difference is scope (many tables vs. one) and operating model (built-in destination output vs. downstream-streaming output). The node supports these configuration paths: Auto, Excel Template (download, fill, upload) and Manual (configure in the popup UI.
Bulk Data Transformation is added from the Transformation category of the node panel. The node sits on the canvas without requiring upstream or downstream connections — the source and destination Datasources are configured on the node itself.
Note: “Weave” is the current name for what earlier interface versions called “Workflow.” This reference uses “Weave.”
When to use it
- Bulk deidentification of multi-table source databases — patient databases, customer master databases, finance datasets — where dozens or hundreds of tables need consistent masking rules.
- Data migration with transformations — moving tables from a source database to a destination with naming conventions (Prefix/Suffix), type conversions, and value modifications applied during the move.
- Healthcare data deidentification for XML or JSON structured documents, where field paths reference nested elements rather than flat columns.
- Repetitive transformation patterns across many tables — same Replace, same Deidentification rules, same Datatype Conversions — authored once in an Excel template and applied uniformly.
Configuration paths
Four paths to author and apply configurations. All four converge on the same underlying configuration model — eleven actions applied per (table, column) — they differ in authoring medium.
| Path | How to enter | Field path support |
| Excel Template | Download template via Template link → fill rows → upload .xlsx | No (uses Dataset Name + Field Name columns directly) |
| Manual | Click Skip in the upload popup → configure datasets and columns in the popup UI | No (UI-driven; columns are picked from the dataset’s actual column list) |
| Auto | Select the radio button to automatically apply standard deidentification settings to the data | No (Automatic) |
Excel template columns
The downloaded Excel template (sheet “Sheet1”) has the following columns. Fill one row per (dataset, field, action) combination.
| Column | Purpose |
| Dataset Name | Name of the source table in the source Datasource. Case-sensitive matching may apply. |
| Field Name | Name of the column within the dataset. |
| Action | One of the eleven action strings (Replace, Prepend, Pattern, Deidentification, Rename, Tag, Create New, Change Format, Datatype Conversion, Expression, Append). |
| DEType | Generator sub-type for Deidentification (e.g., First Name Generator, Date Generator Past — see the Data Transformation article for the full list). |
| DEMethod | random / consistent / pass through. |
| Tag | Tag name to assign to the column. |
| Data Type | Target type for Datatype Conversion (Int, Float, Timestamp, etc.). |
| Precision | strftime format string when Data Type = Timestamp (e.g., %b %d, %Y; %Y%m%d). |
| ActionValue | Value parameter for actions that take a single value: Prepend, Append, Rename, Tag, Create New, Static Generator. |
| ActionOldValue | Old value for Replace and Pattern. |
| ActionNewValue | New value for Replace and Pattern. |
XML and JSON variants of the template add two columns: Type (XML or JSON) and Field Path (the structured field path replacing simple Field Name).
Output destination configuration
Unlike most Weave nodes, Bulk Data Transformation has a built-in Output configuration on the node itself — no downstream Output node is required.
| Setting | Description |
| Output Datasource (dropdown) | Destination Datasource where transformed tables will be written. Must be configured separately before this node uses it. |
| Prefix | Text prepended to each destination table’s name. Optional. Example: “New_” produces destination tables like New_CLEAN_ROWCOL. |
| Suffix | Text appended to each destination table’s name. Optional. Example: “_Test” produces destination tables like CLEAN_ROWCOL_Test. |
| Destination table name composition | [Prefix] + [source table name] + [Suffix]. With Prefix = “New_” and Suffix = “_Test”, source CLEAN_ROWCOL becomes New_CLEAN_ROWCOL_Test in the destination. |
Key behaviors
Multi-table scope. Bulk Data Transformation operates on many tables simultaneously. Where Data Transformation requires a separate node per table (or a single node operating on a single upstream stream), Bulk reads multiple tables from the source Datasource and applies configurations to each in one run. This is the node’s defining structural feature.
Built-in source and destination — no upstream or downstream needed. Bulk Data Transformation is the only Weave node that doesn’t fit the standard source → transformation → terminal architecture documented in the Weave canvas overview. It reads from a source Datasource configured on the node itself, writes to a destination Datasource configured on the same node, and doesn’t require Data Import or Output nodes. The node functions as a self-contained transform-and-write unit.
Same eleven actions as Data Transformation. The action set is identical: Replace, Prepend, Pattern, Deidentification (with 20 generator sub-types and 3 methods), Rename, Tag, Create New, Change Format, Datatype Conversion, Expression, Append. The action semantics are also identical — what each action does to column values is the same. The Data Transformation article is the canonical action reference; this article cross-references rather than re-documenting per-action behavior.
Dataset selection is opt-in. Datasets in the source Datasource appear in the popup’s left list but must be explicitly checked to participate in the run. Unchecked datasets are visible but excluded — useful for staging configurations across many tables and then activating subsets selectively. Combined with the All / Configured / Not Configured filter radios, this enables targeted runs across large source databases.