Using the Mapping Table

On this Page

As part of the Mapper Snap, the mapping table makes it easier to do the following:

  • Determine which fields in a schema are mapped or unmapped.
  • Create and manage a large mapping table through drag-and-drop.
  • Search for specific fields.

When you use the Mapper, ensure the following:

  • When an XML schema is exposed in the Target schema column of the Mapper Snap, map the attribute fields first, before the element fields of the enclosing element field. This ensures that the JSON produced from the Mapper Snap is valid for converting to XML.
  • If a Copy Snap is placed directly after a Mapper Snap, schema information  is not visible in the target schema of the Mapping Table.

Automatically Mapping Fields

To let the SnapLogic Platform make the best effort at mapping, click AutoLink. See AutoLink for more information.

To manually map fields:

  1. Click  to add a row, then drag a field into the empty field. Doing so changes the input to an expression.
  2. Drag the appropriate output schema field into the target path for the corresponding input schema field. If a value already exists, the new value replaces it.

To merge two input fields into one output, you can select and drag one field out, then drag another input field into the same Expression field and they are combined.

 To insert a new line between entries, use the unicode value of \u000A, as in:
 $element + "\u000A" + $element 

To directly map a field from one schema to the other, click and drag the field from either schema over to the other schema and the mapping is automatically created. You can also drag fields from the input schema to the target path.

Target Mapping Schema

The schema generated by a downstream Snap populates a list of suggestions for the Expression column. Available when the New Form UI is enabled through the User Settings dialog in SnapLogic Designer, this functionality is useful when the Mapper Snap is followed by Snaps with custom fields, such as the JSON Formatter or NetSuite Snaps.

For example, the following schema contains an enum field with multiple keys: "active" and "inactive".

Toggle off the Expression button in the Expression Builder, then select the field with multiple keys, and a dropdown list of the multiple keys in that field.

Selecting Multiple Fields in a Schema

You can any of the following features to select multiple fields in an Input or Target schema:  

  • Select All: Click this button to select all fields in a schema, including the collapsed children.
  • Deselect All: Click this button to deselect all currently-selected fields in a schema, including the collapsed children.
    To select (or deselect) a subset of the schema, you can search for a key name first, then click Select All or Deselect All. In this case, select and deselect only apply to fields that match the search terms.
  • Shift-click: You can also use a keyboard shortcut to select a range of fields. Select the first field in the range, hold down the Shift key, then select the last field in the range. You can also hold down the Shift key and click a plus symbol + in the schema hierarchy to fully expand that part of the hierarchy.

Using the Mapping Table (Data Preview)

By clicking the arrow under the mapping table, you can get a preview of what your input and target schemas look like.

The Expression builder preview is driven by the Dynamic Validation option in SnapLogic Designer User Settings.

Non-expression targets  (= toggle off) are treated as literal values and do not impact the mapped/unmapped field list.

Searching a Schema within Mapper

To search for a specific field in either schema, enter the term in the appropriate search field. You can use the file path wildcards * and ? in a search. 

 Because searches are based on full key names, not just the node title, searches may also select a node's ancestry. For example, if you have a tree such as:

+ Parent
     +Child
        - Grandchild

Searching for "Parent" returns all three items since the key names are $Parent, $Parent.Child, and $Parent.Child.Grandchild.

Selecting Multiple Fields in a Schema

As of the Winter 2018 release, you can use these features to select multiple fields in an Input or Target schema:  

  • Select All: Click this button to select all fields in a schema, including the collapsed children.
  • Deselect All: Click this button to deselect all currently-selected fields in a schema, including the collapsed children.
    To select (or deselect) a subset of the schema, you can search for a key name first, then click Select All or Deselect All. In this case, select and deselect only apply to fields that match the search terms.
  • Shift-click: You can also use a keyboard shortcut to select a range of fields. Select the first field in the range, hold down the Shift key, then select the last field in the range. You can also hold down the Shift key and click a plus symbol + in the schema hierarchy to fully expand that part of the hierarchy.

Watch the videos: 
SelectAll.mp4
ShiftClick.mp4

Viewing Mapped and Unmapped Fields

To filter whether to see all, mapped, or unmapped fields, use the drop-down next to the search field. 


 Additionally, once a field is mapped, it is bolded and the color is changed if you are viewing All.

If you click the mapped field in the schema, the row in the mapping table and the target are highlighted.

If an array of data is coming into the Mapper (Data) Snap, when you drag them into the table, a JSONPath expression is created to handle it.

Data Preview

By clicking the arrow under the mapping table, you can get a preview of what input and target schemas look like.

Other Usability Functions

  • You can collapse the schema views using the gray arrows in the header row to give you larger Expression and Target path columns.
  • Click the down arrow within an expression field to access the expression editor, functions and properties, and the upstream schema. Click the bubble in the Target path field to access the downstream schema suggestions.
  • You can rearrange the rows within the mapping table by:
    • Highlighting the left side, clicking, and dragging.
    • Mousing over a row until a selection arrow appears, then dragging it to a new location.
      Watch the video: Move.mp4