Meta-data

One of the challenges most customers face is to make good use of their own meta-data, meaning data describing the formats in which data is held.

Correct use of meta-data guarantees that the program will run correctly. It also saves the user from having to re-discover data patterns already present in their systems, or, which is even worse, from having to hand code those same patterns manually with the consequent risk that it will be a mismatch between the hand coded version and the existing meta-data.

In practice not only do most computer systems contain a large amount of meta-data, but almost all modern computer systems make this available to suitable programs. However, there are two difficulties.

In the first place the mechanics of querying the meta-data are often complex:

  • RDMBS systems require that obtuse and complex system tables are queried, and then the results combined;
  • Java systems require that class files are 'introspected';
  • XML systems require special experts trained in the constantly evolving mysteries of XML schema.

In the second place building any sensible link between two distinct systems requires that the meta-data is presented in some easily readable and consistent format.

It is not surprising that faced with such difficulties many organizations have simply given up trying to make economical use of the meta-data. It is simply easier to write programs from scratch in PERL, SQL, XSLT or .net than to attempt to use the existing meta-data. However, such a misuse of existing resource is a criminal waste of human effort - yes the information exists, but it might as well be in Manx or Esperanto!

TM's value to such organizations is immense. In the first place, TM contains code that automates the mechanics of reading the meta-data - our software engineers have laboured for years writing code to obtain this model data - so that you do not have to do this. Secondly, TM presents all meta-data, from whatever source, in a systematic and uniform fashion. Our presentation is simplicity itself. No complex training is required to understand a model presented in TM - most users understand almost all that is necessary after half an hour of use. TM's tree-like view of the model is unique in its simplicity.

But TMs presentation of the meta-data is only the beginning. TM is based around its own special semantic mapping language (SML), which allows the user very rapidly to indicate how the data is to be transformed. On code generation the statements automatically combine with the meta-data to create a Java code that will always correctly represent execution of the transform. Not only does this enforce a consistent approach to the production of data bridges, but by skipping hand-generated code construction a whole world of errors is avoided.