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 clients 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.1.2.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: cmem_plugin_pyshacl-5.1.2.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.1 CPython/3.11.11 Linux/6.8.0-1021-azure

File hashes

Hashes for cmem_plugin_pyshacl-5.1.2.tar.gz
Algorithm Hash digest
SHA256 3d1001ebe5d8b2ddf2bfd8d6a38ac085e69ec3d6cd9548aff2561a4a2dc0da99
MD5 0c567b81223413ebf80cf3eda7935eda
BLAKE2b-256 012b65d315acfd4195ff406f15fb285223fc5e38193dfa1a02a43f697e72df57

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cmem_plugin_pyshacl-5.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 edb1faa0e95afc4536501837bf4398583f499dda347bcd83156558c688d7c4b8
MD5 d4c2f4a06b1ae798add8810e410303ae
BLAKE2b-256 7ee4d6320933f6a6c39e1c2da895f02818bd66e8f61361e9fd0d5285a0ebaae0

See more details on using hashes here.

Supported by

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