Valider avec SHACL for SHACL

  RDF à valider

Annuler Sélectionner un fichier Modifier
Vous pouvez sélectionnez plusieurs fichiers. Extensions supportées : .rdf, .ttl, .n3, .trig ou .zip. Excel est également supporté en respectant la structure xls2rdf.
URL d'un fichier RDF valide - supporte les mêmes extensions que l'upload ci-dessus.
Syntaxes supportées : Turtle, RDF/XML, JSON-LD, TriG, TriX, N-Quads. Privilégiez Turtle.

  Options

Cette option vérifie que chaque Shape porte seulement les propriétés déclarées explicitement dans le fichier de Shapes. En d'autres termes, cela vérifie que les propriétés sont "bien placées" sur leur domaine, et qu'aucune autre propriété que celles explicitement listées n'est présente dans les données. La validation opère en "monde fermé". Techniquement, cette option ajoute sh:closed true; sh:ignoreProperties (rdf:type); sur toutes les NodeShape qui ne sont pas déjà fermées.
Activer cette option pour inclure dans le rapport de validation les causes des violations génèrées par les sh:or, sh:and, sh:node or sh:qualifiedValueShape
Si les données à valider contiennent l'ontologie, vous pouvez activer une inférence OWL-Micro sur les données avant d'exécuter la validation. /!\ l'inférence peut être très longue
Par défaut, SHACL Play! calcule les cibles ("targets") de chaque NodeShape. Cela permet de vérifier que chaque ressources dans les données a été ciblée par au moins une NodeShape, et que chaque NodeShape avec une target a ciblé au moins une cible. Ces résultats sont ajoutés dans le rapport de validation comme des résultats supplémentaires. Ce process peut prendre du temps. Si vous voulez désactiver cette étape, activez cette opion.

Documentation

If the RDF dataset to be validated is online, and if and only if the SHACL shapes are registered in SHACL Play shapes catalog, you can provide direct links to a validation report with the following URL : https://shacl-play.sparna.fr/play/{shapes-catalog-entry-id}/report?url={URL of the RDF data file to validate}

For example : https://shacl-play.sparna.fr/play/shaclplay-catalog/report?url=https://raw.githubusercontent.com/sparna-git/SHACL-Catalog/master/shacl-catalog.ttl

Generate shields.io validation badges

This validation utility is available as an API to generate shields validation badges for dataset. The API URL will return a JSON data that can be tunneled to https://img.shields.io/endpoint?url=.

This works if and only if the SHACL shapes are registered in SHACL Play shapes catalog.

The API general synopsis is https://shacl-play.sparna.fr/play/{shapes-catalog-entry-id}/badge?url={URL of the RDF data file to validate}

For example : https://shacl-play.sparna.fr/play/shaclplay-catalog/badge?url=https://raw.githubusercontent.com/sparna-git/SHACL-Catalog/master/shacl-catalog.ttl

The full badge URL is then https://img.shields.io/endpoint?url=https%3a%2f%2fshacl-play.sparna.fr%2fplay%2fshaclplay-catalog%2fbadge%3furl%3dhttps%3a%2f%2fraw.githubusercontent.com%2fsparna-git%2fSHACL-Catalog%2fmaster%2fshacl-catalog.ttl

When you insert the badge on your Github repository, you can use it to link to the "/report" URL (see above). See the Shapes catalog repository README for an example

Extra target resolutions

By default, SHACL Play! will resolve the targets of the shapes in the SHACL file. This means that all targets specifications found in the shapes graph are explicitely resolved, and an extra triple is generated for each target found : https://shacl-play.sparna.fr/ontology#hasFocusNode, with the node shape as subject and the target resource as object. Based on this extra target resolution triple, 2 extra checks are applied:

  • "Data coverage": SHACL Play! will check that every resource in the input data graph has been targeted by at least one shape. Resources not targeted by any shape will be returned as Warnings in the validation report. This is useful to check that the input data graph does not contain resources that should not be present. It is similar to "unit tests coverage" in software testing, where you want to make sure that all your code is covered by tests.
  • "Shapes coverage": SHACL Play! will check that every shape in the shapes graph has at least one target. Shapes without any target will be returned as Warnings in the validation report. This is useful to make sure that the target specifications of each shape resolved correctly, and to avoid situations where no violations are returned, not because the data is valid, but because the initial target specification was wrong (like a typo in a sh:targetClass URI).
    In particular if no shapes at all matched a target, the validation report will contain a specific title and status : "Shapes did not match anything !"

You can disable this extra target resolution by checking the "Avoid resolving targets" checkbox in the options above. When this option is checked, SHACL Play! will not resolve the targets of the shapes in the SHACL file, will not generate the extra triples, and will not apply the extra checks.