ebInterface Web allows to validate ebInterface instances according to ebInterface XML Schema version 3.0, 3.02, 4.0, 4.1, 4.2, and 4.3. Furthermore, XML instances may be converted to human-readable HTML representations as well as PDF files.
The validation includes XML Schema conformance, conformance to predefined Schematron rules and the validation of digital signatures. For the validation of digital signatures the Web Service of Rundfunk & Telekom Regulierungs-GmbH https://pruefung.signatur.rtr.at/ is used.
The visualization service allows to generate HTML output based on XSLT stylesheets. In addition PDF files may be generated, using the components from ebinterface-rendering.
Furthermore, ebInterface Web allows to transform a given ebInterface XML instance to other document formats, using the document mappings provided in ebinterface-mappings
The validation contains two main artifacts
- ebinterface-core. This module contains the validation logic for ebInterface instances, the logic for applying stylesheets to ebInterface instances, as well as the Web Service client for the RTR Web Service
- ebinterface-web. This module contains a Web frontend for the ebinterface-core module. Currently, this module is being extended to support PDF generation and ebInterface mappings as well.
ebinterface-web is based on several projects.
- ebinterface-mappings: PDF rendering
- ebinterface-rendering: mappings in general (e. g. ebInterface -> ZUGFeRD mapping)
- ebinterface-ubl-mapping: UBL <-> ebInterface mapping
Please note, these projects have to be checked out, to be able to build ebinterface-web.
For this project the Google code style is used. Please download the code style file and set it in your IDE, before you commit to the repository.
Please note, that the RTR Web Service is not open to the public, but requires credentials for its HTTP basic authentication in order to be accessed. Username and password must be provided in a properties file named
rtr.properties, which must contain the following values:
Place the file under
Username and password may be requested from RTR directly, and are not provided in this GitHub repository.
To build a docker image and push it to the docker hub, run the following commands (requires write access to https://hub.docker.com/r/ebinterface/validator-web/):
docker build -t ebinterface/validator-web .
docker push ebinterface/validator-web:latest