isaitb/shacl-validator
Web application for the validation of RDF data based on SHACL shapes.
1M+
A web application to validate RDF content against SHACL shapes. Validation is possible via several channels:
This image acts as a generic foundation for specific validator instances which are provided with the configuration to apply. This configuration includes:
Alternatively you can also use this image to create a generic validator with minimal default settings that expects SHACL shapes to be provided alongside the input to validate.
This image is maintained by the European Commission's DIGIT and specifically the Interoperability Test Bed, a conformance testing service for projects involved in the delivery of cross-border public services. Find out more here.
This image provides the basis upon which you can build a specific validator for your own configuration, or used as-is to create a generic validator that expects validation artefacts to be provided alongside the content to validate (such as this existing service).
Creating a specific validator can be done either by building a custom image that includes your configuration or by passing the configuration to a container built from the base image. In any case the validator's application is internally exposed to port 8080.
In terms of the image version to use you can use either the latest tag to receive rapid updates, or a specific tagged release milestone if ensuring stability is most important.
Assuming you are building this from a folder that includes all configuration resources in subfolder resources
, a sample Dockerfile would be as follows:
FROM isaitb/shacl-validator:latest
COPY resources /validator/resources/
ENV validator.resourceRoot /validator/resources/
Using this approach you would need to make use of a volume (named or unnamed). Using an unnamed volume your container can be created as follows:
docker run -d --name my-validator -p 8080:8080 \
-v /validator/resources:/validator/resources/ \
-e validator.resourceRoot=/validator/resources/ \
isaitb/shacl-validator
A generic validator instance is one that has no predefined configuration. Such a validator comes with a default minimal configuration and expects SHACL shapes to be provided alongside the input to validate. To create a generic validator instance simply use the current image without providing any configuration:
docker run -d --name my-validator -p 8080:8080 isaitb/shacl-validator
For full details on how to setup, configure and manage a validator built using this image please refer to the Test Bed's RDF validation guide.
The RDF validator is published as open-source software on GitHub.
The list of changes in the latest snapshot and individual milestone releases is available in the documentation's changelog.
This tool is shared using the European Union Public Licence (EUPL) version 1.2.
Licences and attributions for the third party libraries included in this software can be found here.
The authors of this tool waive any and all liability linked to its usage or the interpretation of its results. In terms of data, the tool does not harvest, collect or process in any way data that could be linked to the tool's user or workstation, nor does it maintain any state or statistics resulting from its usage.
To get in touch for feedback or questions please use one of the following channels:
If you find this image interesting you may also be interested by our similar validators for other syntaxes. Specifically:
docker pull isaitb/shacl-validator