| .idea | ||
| .settings | ||
| docs | ||
| src | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| LICENSE | ||
| NOTICE | ||
| pom.xml | ||
| README.md | ||
Validator
The validator is an XML validation-engine. It validates XML documents against XML Schema and Schematrons depending on self defined scenarios which are used to fully configure the validation process. The validator always outputs a validation report in XML including all validation errors and data about the validation.
Releases
Two kind of releases are available:
Das Prüftool steht in zwei Varianten zur Verfügung:
- als standalone/cli, die von der Kommandozeile aus aufgerufen werden kann
- als Bibliothek/api, die in eigene Anwendungen integriert werden kann
- die Standalone-Distribution enthält das Uber-Jar mit allen Klassen zur Verarbeitung von Eingaben aus der Kommandozeile, sowie für Ausgabeoptionen für Ergebnisse. Sämtliche Abhängigkeiten sind im Jar gebundlet und das Jar-File ist 'ausführbar'.
- die Full-Distribution enthält darüber sämtlichen weiteren Varianten des
validationtoolssowie die benötigten Abhängigkeiten.
Build
Requirements
- Maven > 3.0.0
- Java > 8 update 111
Procedure
mvn install generates two different packages in the dist directory:
Validation Configurations
The validator is just an engine and does not know anything about XML Documents and has no own validation rules.
Validation rules and details are defined in validation scenarios which are used to fully configure the validation process.
All configurations are self-contained modules and deployed on their own.
Third Party Validation Configurations
Currently, there are two public third party validation configurations available.
- Validation Configuration for XRechnung is available on
- Validation Configuration for XGewerbeanzeige
Usage
Standalone Command-Line Interface
The general way using the CLI is:
java -jar validationtool-<version>-standalone.jar -s <scenario-config-file> [OPTIONS] [FILE] [FILE] [FILE] ...
You can more CLI options by
java -jar validationtool-<version>-standalone.jar --help
A concrete exmaple with a specific validator configuration can be found on [GitHub](https://github.com/itplr-kosit/validator-configuration-xrechnung
Daemon-Mode
You can also start the validator as an HTTP-Server. Just start it in Daemon-Mode with the -D option.
java -jar validationtool-<version>-standalone.jar -s <scenario-config-file> -D
Per default the HTTP-Server listens on localhost at Port 8080.
You can configure it with -H for IP Adress and -P for port number:
java -jar validationtool-<version>-standalone.jar -s <scenario-config-file> -D -H 192.168.1.x -P 8081
You can HTTP-POST to / and the response will return the report document as defined in your validator configuration.
Additionally there is the GET /health endpoint which can be used by monitoring systems.
Application User Interface
The validator can also be used in own Java Applications via the API. Details can be found here.