A hands-on session in which we show how to produce a XML schema, generate code, use JSON and Open API and implement DATEX II using different coding languages like Java, Python and C#.
The program will contain the following subjects:
- Toolchain demo – XML Schema and JSON generation
- Python code generation
- C# Open API/ JSON (server side)
- Java implementation + Client
Moderator: Martin van Ekelenburg (Netherlands)
Presenters
-
- Jan Vlčinský (Czechia)
-
- Victoria Steiner (Germany)
-
- Jonas Jäderberg (Sweden)
-
- Bob van Leeuwen (Netherlands)
Session 15th of November 2024: Using the DATEX II Toolchain to generate your code
Set of presentation on generating code using the DATEX II toolchain. Starting with explaining DATEX II toolchain concepts, over generating XML schema, generating Python code from it, using OpenAPI specification to generate client and server code in C# and concluding by generating Java code from OpenAPI specification to interact with the C# server developed in previous step. Links:
- YouTube DATEX II Playlist
- GitHub repo: DATEX II-Webinar2
Toolchain demo: XML Schema and JSON generation
Youtube (23:41) by Jan Vlčinský. How to use online schema generator to profile rich DATEX II class model into simpler one and then generate schema for XML and JSON message format.
Python code generation
Youtube (17:46) by Victoria Steiner.
Practical example how to use Python code in Jupyter Notebook. It uses python library xsdata to generate code for Python class which can be used to load real XML file or to create a new instance.
The presentation also shows how to visalize messages on a map using python library ipyleaflet
C# Open API/JSON server and client side code generation
Youtube (51:20) by Jonas Jäderberg.
Practical example showing how to use JSON Schema, generated for selected DATEX II publication and pre-generated OpenAPI specification to develop in C# relevant server and client side code serving and consuming given content.
Java: client implementation
Youtube (24:39) by Bob van Leeuwen.
Practical example of how to use JSON Schema and OpenAPI specification file to create in Java a client, which is able to interact with server code implemented in previous presentation.