Transforms are template-based data processors that convert from one format to another. Use them to prepare data entering a module or format data leaving a module for export, display, or downstream systems. Transforms are scoped to the module — workflows have their own separate set of transforms managed in the Workflow Builder.
Access Transforms by clicking the ellipsis menu in the Module Builder header and selecting Transforms.
Transform Types
Each transform uses a template language to process data. Unqork supports the following types:
| Type | Output Format |
|---|---|
| XSL | XML |
| NJK (JSON) | JSON |
| NJK (PDF) | |
| NJK (XML) | XML |
| NJK (TXT) | Plain text |
Transforms List
The Transforms list displays all transforms configured for the module.
| Column | Description |
|---|---|
| Name | The transform name. |
| Type | The template type. |
| Created By | The Creator who created the transform. |
| Last Modified By | The Creator who last modified the transform. |
| Created Date | The date the transform was created. |
| Modified Date | The date the transform was last modified. |
| Actions | A drop-down with actions for the transform. |
Page Actions
| Action | Description |
|---|---|
| Add Transform | Opens the Create Transform modal. |
Row Actions
| Action | Description |
|---|---|
| View and Edit | Opens the transform to view or edit its settings. |
| Download | Downloads the transform template as a file. |
| Delete | Permanently removes the transform. |
Creating a Transform
Click Add Transform to open the Create Transform modal.
| Field | Description |
|---|---|
| Transform Name | A unique name for the transform. Must contain only letters, numbers, and hyphens, and must not begin or end with a hyphen. The name cannot be changed after the transform is saved. |
| Type of Transform | The template language and output format. See Transform Types. |
| Direction of Transform | The direction of the transform. Transforms currently run as output only. |
| Template | The template code that defines how data is transformed. |
Note: XSD (XML schema Definition) input validation is not yet available.
Click Save to create the transform, or Back to discard. When editing an existing transform, the button label changes to Save Changes.
Unit Testing
The Create, Edit, and View modals each include a collapsible Unit Testing section for validating a transform against sample data.
| Field | Description |
|---|---|
| ID | An optional submission ID to use as the data source for the test. |
| Input format | The format of the test input data. Select JSON, XML, or XSD. |
| Input | The sample data to run through the transform. |
| Output | The result of the transform after clicking Run Test. |
Click Run Test to execute the transform against the input data. Review the Output to confirm the transform produces the expected result.
Writing Templates
NJK Templates
NJK templates use {{ }} syntax to reference submission data and metadata. The template structure is the same for all NJK types—the selected type determines the output format (JSON, PDF, XML, or plain text).
{
"fullName": "{{ data.firstName }} {{ data.lastName }}",
"submissionDate": "{{ data.created | date('MM/DD/YYYY') }}"
}
Available variables:
| Variable | Description |
|---|---|
data |
The submission's field values, referenced by Property ID. |
metadata |
Submission metadata, including suffix and other system values. |
XSL
XSL transforms use standard XSL Stylesheet syntax to process and output XML from submission data.
Changelog
| Date | Change |
|---|---|
| — | Initial publication. |