Oakland Data Transformer - Designer


The designer is built on the Eclipse technology and can be installed into an existing Eclipse installation where you can access it using the Data Transformer perspective. It is also packaged as a separate standalone executable which can be installed using the normal mechanisms on Windows and Linux (and does not require Eclipse).


The designer uses projects to store all of the structure and mapping definitions. Projects are typically in the local file system (Eclipse workspace), but they may also be installed which is used for things like definitions of standards, like GS1, EDI, or HIPAA.

A project contains the following types of objects:

  • Structures - The definition of a collection of data elements (fields), which is the basis for a map. Each structure may have representations that specify database, XML, flat or EDI. Structures can be composed of other structures using structure inheritance. Structure element definitions may include validation rules and descriptive text for data elements.
  • Maps - A mapping of one structure to another using expressions.
  • Namespace Containers - A collection of XML namespaces and their preferred prefixes. A namespace container can be shared by structures using XML.
  • Databases - The definition of a database instance.
  • Sample Data - Sample document definitions which can be associated with structures and maps.


When actually doing data mapping, a user needs to have the specifications of the input and output document, example data, and the specification of the transformation between the document. Our product is the only product that facilitates having all of this information in one place, and quickly allows you to navigate and search to find what you need.

overviewEditorsOnly: overviewEditorsOnly

Maps, structures, user functions and namespace containers have editors. Any number of editors can be opened at any time and there is lots of navigation support for bouncing back and forth between editors to quickly find out something. In addition, dependency management provides automatic re-validation as things change between editors. For example, if an element is added to an open structure, when switching to an open map editor that uses the structure, the element will appear in the map.


Expressions are sets of invocations of functions that perform the work of the transformer. They consist of calls to functions and references to map elements. Each expression returns exactly one scalar or string result. Expressions are represented in a convenient tree view for easy manipulation and editing. Expressions may also be shown and manipulated as text. Expressions are categorized by type and associated with elements of a structure of map. The expression types are:
  • Value - Defines the value of an output map element.
  • Loop - Determines how a looping element will loop.
  • Optional - Defines the conditions for an optional element to appear.
  • IO/Database - Specifies points of I/O (allowing a single map to have multiple inputs and/or outputs)  or database operations.
  • Validation - Specifies validation conditions on a per-element basis.


An extensive search capability is provided.

searchFind: searchFind

Undo/Redo and Back/Forward

The designer has full undo/redo capabilities. There is no limit to the depth of the undo stack. The designer also has back/forward buttons that work just as in a browser.