Reverse Engineering XML Schemas of Banking Industry’s New ISO 20022 Standard

“Data Is Data” once said Neville Haggerty, a veteran IT solution expert and System Architect guru in the 1990’s. What Neville was getting at is that Data is the most essential thing that you are analyzing in your organization — and that holds as true as ever today, in an era of Big Data and Artificial Intelligence.

Data is Data — it is all over your enterprise architecture. Business processes use it (Create, Read, Update, Delete it from databases); Software Applications use it and transform it; people (and AI programs) gather it and interpret it. Data Architect’s design databases to capture, understand, and use it.

System Architect has always had strong data modeling capabilities that separates it from other enterprise architecture tools. It has support for Physical Data Modeling separate from Logical Data Modeling — with ability to automatically map from one to the other. It supports Conceptual Data Modeling. System Architect also provides ability to automatically reverse engineer several database types — Microsoft SQL Server and Oracle, and ability to generate schema files for the same.

System Architect also supports reverse engineering of XML Schemas into a Class diagram. This is useful for interpreting the structures of data standards, which are often provided as XML structures.

For example, the new ISO 20022 Standard for the Banking industry is presented as a catalog of Message Sets. You can download a set, and reverse engineer it into a System Architect class diagram, then map that into a logical ER diagram, and then map that to a physical data model.

For demonstration, we download the Bank Services Billing message set. We are provided with a camt.086.001.05.xsd file. In System Architect, we select Tools, XSD, Reverse XSD Schema — which results in the following UML Class diagram:

We can examine the structure of the packages and the classes of the XSD message set in System Architect’s Explorer tree:

We can also examine the structure of the XSD message set in the UML 2 tab of System Architect’s Explorer Tree:

Further, we can zoom in on the diagram to see particular classes, and open their definition to see each class’s attributes:

Now that we have reverse-engineered this information — we can:

  • Utilize it within the overall enterprise architecture — understanding what processes and people use it, etc.
  • Map it to a logical ER diagram, and utilize that form of it (data entities) within the context of the enterprise architecture.
  • Map the ER diagram to a Physical Data Model of a particular DBMS, such as Oracle or Microsoft SQL Server, and then generate Schema from that diagram type.
  • Make design changes to it and generate out a new XSD file (select Tools, XSD, Generate XSD File).

This is all part of core System Architect — no add-ins needed. If you have questions, let us know in the Feedback form.

Be the first to comment

Leave a Reply

Your email address will not be published.