Skip to main content

Validate your Knowledge Graphs based on tests generated from SHACL shapes.

Project description

cmem-plugin-pyshacl

Validate your Knowledge Graphs based on tests generated from SHACL shapes.

eccenca Corporate Memory

This is a plugin for eccenca Corporate Memory. You can install it with the cmemc command line client like this:

cmemc admin workspace python install cmem-plugin-pyshacl

Parameters

Data graph URI

The URI of the data graph to be validated. The graph URI is selected from a list of graphs of types:

  • di:Dataset
  • dsm:ThesaurusProject
  • owl:Ontology
  • shui:ShapeCatalog
  • void:Dataset

SHACL graph URI

The URI of the graph containing the SHACL shapes to be validated against. The graph URI is selected from a list of graphs of type shui:ShapeCatalog

Generate validation graph

If enabled, the validation graph is posted to the CMEM instance with the graph URI specified with the validation graph URI option. Default value: false

Validation graph URI

If the generate validation graph option is enabled the validation graph is posted to the CMEM instance with this graph URI

Output entities

If enabled, the plugin outputs the validation results and can be connected to, for instance, a CSV dataset to produce a results table. Default value: false

Clear validation graph

If enabled, the validation graph is cleared before workflow execution. Default value: true.

Advanced Options

Resolve owl:imports

If enabled, the graph tree defined with owl:imports in the data graph is resolved. Default value: true

Blank node skolemization

If enabled, blank nodes in the validation graph are skolemized into URIs. Default value: true

Add labels

If enabled, rdfs:label triples are added to the validation graph for instances of sh:ValidationReport and sh:ValidationResult. Default value: true

Add labels from data and SHACL graphs

If enabled along with the add labels option, rdfs:label triples are added for the focus nodes, values and SHACL shapes in the validation graph. The labels are taken from the specified data and SHACL graphs. Default value: false

Add shui:conforms flag to focus node resources

If enabled, shui:conforms false triples are added to the focus nodes in the validation graph. Default value: false

Meta-SHACL

If enabled, the SHACL shapes graph is validated against the SHACL-SHACL shapes graph before validating the data graph. Default value: false

Ontology graph URI

The URI of a graph containing extra ontological information. RDFS and OWL definitions from this are used to inoculate the data graph. The graph URI is selected from a list of graphs of type owl:Ontology

Inference

If enabled, OWL inferencing expansion of the data graph is performed before validation. Options are RDFS, OWLRL, Both, None. Default value: None

SHACL advanced features

Enable SHACL Advanced Features. Default value: false.

SHACL-JS features

Enable SHACL-JS features. Default value: false.

Remove graph type http://rdfs.org/ns/void#Dataset from data graph

Before validating, remove the triple <data_graph_uri> a <http://rdfs.org/ns/void#Dataset> from the in-memory data graph.

Remove graph type https://vocab.eccenca.com/dsm/ThesaurusProject from data graph

Before validating, remove the triple <data_graph_uri> a <https://vocab.eccenca.com/dsm/ThesaurusProject> from the in-memory data graph.

Remove graph type https://vocab.eccenca.com/shui/ShapeCatalog from data graph

Before validating, remove the triple <data_graph_uri> a <https://vocab.eccenca.com/shui/ShapeCatalog> from the in-memory data graph.

Maximum evaluation depth

The maximum number of SHACL shapes "deep" that the validator can go before reaching an "endpoint" constraint (1-999). Default value: 15

Parameter Input

In order to set options via the input the following parameter names can be used:

Option Name
Data graph URI data_graph_uri
SHACL graph URI shacl_graph_uri
Generate validation graph generate_graph
Validation graph URI validation_graph_uri
Output entities output_entities
Clear validation graph clear_validation_graph
Resolve owl:imports owl_imports
Blank node skolemization skolemize
Add labels add_labels
Add labels from data and SHACL graphs include_graphs_labels
Add shui:conforms flag to focus node resources add_shui_conforms
Meta-SHACL meta_shacl
Ontology graph URI ontology_graph_uri
Inference inference
SHACL advanced features advanced
SHACl-JS features js
Remove graph type http://rdfs.org/ns/void#Dataset from data graph remove_dataset_graph_type
Remove graph type https://vocab.eccenca.com/dsm/ThesaurusProject from data graph remove_thesaurus_graph_type
Remove graph type https://vocab.eccenca.com/shui/ShapeCatalog from data graph remove_shape_catalog_graph_type
Maximum evaluation depth max_evaluation_depth

workflow pypi version license poetry ruff mypy copier

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cmem_plugin_pyshacl-5.3.1.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cmem_plugin_pyshacl-5.3.1-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file cmem_plugin_pyshacl-5.3.1.tar.gz.

File metadata

  • Download URL: cmem_plugin_pyshacl-5.3.1.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.1 CPython/3.13.11 Linux/6.11.0-1018-azure

File hashes

Hashes for cmem_plugin_pyshacl-5.3.1.tar.gz
Algorithm Hash digest
SHA256 fad99de9b507eb961871754317a116f20661e4bcc30bf867ca658134cbccf527
MD5 7ad55ec0b73f165fc6b3533aec6b6a37
BLAKE2b-256 1350bec837531fbce15a248c79b5fb7beca1d545a5878ccf9d9200e10a0d36cf

See more details on using hashes here.

File details

Details for the file cmem_plugin_pyshacl-5.3.1-py3-none-any.whl.

File metadata

  • Download URL: cmem_plugin_pyshacl-5.3.1-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.1 CPython/3.13.11 Linux/6.11.0-1018-azure

File hashes

Hashes for cmem_plugin_pyshacl-5.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f795a2dd33aecc69d7a0002912fe0433ef0cba5f4962807fca03438056a27c11
MD5 2a5cf5fc8b9af3c1df60f87e19251b0f
BLAKE2b-256 1121417893ae6d606b64392d28d73b80d590c91f4d89f836bfcc17ecc5aa8fd1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page