abcoates / archi-xml-excel-converter

XML <--> Excel conversion scripts for 'Archi' Archimate models.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

archi-xml-excel-converter

XML <--> Excel conversion scripts for 'Archi' Archimate models.

Note

The Archi tool has a facility to export a model to a set of 3 CSV files, and to create a new model based on a similar set of 3 CSV files. For many people, that will be more convenient than the scripts described below. However, if you would prefer to use a single Excel file rather than 3 CSV files, then you might find some value in the scripts described below.

Description

Archi (https://archimatetool.com/) is an open-source Archimate modelling tool. It has its own file format, but it can also import/export models using XML.

This project provides three convenience scripts written in Python 3 - one transforms the XML into Excel, another converts Excel into XML. These two scripts do not round trip - only some of the information in the XML is converted to Excel, and you cannot create arbitrary Archi XML files from Excel. Rather:

  • XML to Excel conversion is focussed on getting the information out of an Archi model into Excel, e.g. so that you can get all names and descriptions from the model.
  • Excel to XML conversion is focussed on being able to create an Archi model (without diagrams) based on model information created elsewhere.

The third script converts Archi XML into Markdown. That is to say, in converts the Archi model into a non-visual document with tables of 'facts' that can be used as a checklist for checking all of the information in the model. Sometimes it can be hard to know if you've reviewed all of the information when looking at a visual model spread over multiple diagrams.

Note that the scripts use the 'pandas' library, which comes bundled if you use the 'Anaconda' Python distribution.

Scripts

  • archi-xml-to-excel.py:
    • Usage: python archi-xml-to-excel.py \<xml-input-path\> \<excel-output-path\>
  • archi-excel-to-xml.py
    • Usage: python archi-excel-to-xml.py \<excel-input-path\> \<xml-output-path\>
  • archi-xml-to-markdown.py
    • Usage: python archi-xml-to-markdown.py \<xml-input-path\> \<markdown-output-path\>

Other files

  • application-business-functions.archimate:
    • Small sample Archi model
  • application-business-functions.xml
    • XML export of 'application-business-functions.archimate'
  • application-business-functions.xlsx:
    • Archi model data in Excel, converted from 'application-business-functions.xml'
    • This spreadsheet was manually formatted after generation to make it easier to read.
  • application-business-functions-generated.xml
    • XML generated from 'application-business-functions.xlsx'
    • This XML file was manually formatted after generation to make it easier to read.
  • application-business-functions-generated.archimate:
    • Archi model, without diagrams, generated by importing 'application-business-functions-generated.xml' into Archi
  • application-business-functions.md:
    • Markdown 'facts', generated from 'application-business-functions.xml'.
  • application-business-functions.html:
    • HTML equivalent of 'application-business-functions.md', generated using the oXygen XML Editor 19.0.
  • archimate3*.xsd (3 files):
    • Standard Archimate 3 XML Schemas for XML import/export format.

About

XML <--> Excel conversion scripts for 'Archi' Archimate models.

License:Apache License 2.0


Languages

Language:Python 63.6%Language:HTML 36.4%