This repository contains the source code for a command line application of the CESSDA Metadata Validator.
Java 11 or greater is required to build and run this application.
- Check prerequisites and install any required software.
- Clone the repository to your local workspace.
- Build the application using
.\mvnw clean verify
. - Run the application using the following command:
.\mvnw exec:java
.
This project uses the standard Maven project structure.
<ROOT>
├── .mvn # Maven wrapper.
├── src # Contains all source code and assets for the application.
| ├── main
| | ├── java # Contains release source code of the application.
| | └── resources # Contains release resources assets.
| └── test
| ├── java # Contains test source code.
| └── resources # Contains test resource assets.
└── target # The output directory for the build.
Several frameworks are used in this application.
Framework/Technology | Description |
---|---|
CESSDA Metadata Validator | Validates XMLs according to the CMM |
Jib | Java Docker/OCI image builder |
Jackson | JSON/YAML Serializer/Deserializer |
logstash-logback-encoder | JSON Encoder for Logback |
Apache Commons IO | Library of utilities for IO functionality |
The validator is configured using configuration.yaml
.
rootDirectory:
repositories:
- code: UKDS # Friendly name of the repository.
directory: UKDS/ # Base directory to search for metadata.
profile: file://validation-profile.xml # URL to the validation profile.
validationGate: BASIC # The validation gate to use. Acceptable values are BASIC, BASICPLUS, STANDARD, EXTENDED and STRICT.