Information Server File Formats

Unlike traditional programming languages the source code of DataStage assets is expressed using a set of proprietary export formats. DataStage assets can currently be exported in three possible formats:

  1. DSX – The older Information Server export format that supports only a subset of all current Information Server asset types. NOTE: This format is also available in a ‘7-bit encoding’; variant in which any ASCII character above DEL (127) is encoded as \nnn where nnn is the relevant character’s ASCII number. This is useful when transmitting the resulting DSX via constrained communications channels.

  2. XML (referred to in the DataStage documentation as ‘Legacy XML')

  3. ISX – A compressed XML (binary) based format which supports all Information Server asset types. To add further complexity to this picture the ISX format exists in multiple variations:

    1. The ‘default’ format, useable by all IBM tools to represent individual DataStage jobs,

    2. An Information Server Manager-­specific ISX format, and

    3. An istool-specific version, use when creating ‘releases’ and which supports multiple assets.

Taking a look at MettleCI’s requirements we see that MettleCI provides the mechanisms for…

Many of these operations relay on the unique capabilities provided by the ISX format which is the principal reason MettleCI uses the 'default' ISX format (3a., above) with each file containing a single asset.

For DataStage Jobs, both the DSX and ISX formats allow you to choose whether you want your export to include Job design information only, encoded-binary executable information, or both. When you choose to create an export incorporating only Job design information then that file will need to be re-compiled in any target project into which it is subsequently imported.

When submitting assets to Git MettleCI commits and pushes files containing only design information. Executable information is deliberately excluded but can be reconstituted further down the delivery pipeline for organisations who have a mandate which prevents the compilation of code in Production environments. See Deploying DataStage Binaries for more details.

Why does MettleCI use ISX files?

There are a number of good reasons to select ISX as the management format for Information Server artefacts:

Files formats are Opaque

The proprietary formats in which Microsoft Word or Excel, for example, stores their assets is not questioned by customers because those tools provide all the file-management facilities necessary to achieve the desired business outcome. Customers have no need to resort to external tools to inspect or manipulate those files and so the files can be considered an opaque storage layer, and their respective formats a private implementation detail.

Similarly, the format in which DataStage artefacts are exported and stored in Git only matters to customers when they perceive a need to do something with those artefacts beyond the capabilities of DataStage or MettleCI. Many users have an historical attachment to DSX files because they believe DSX’s are…