SHACL Validation

This algorithm performs constraint validation using the shapes and constraints declared in the asset collections’ ontologies.

For example, if a property is declared to have maximum count of 1 then a violation will be reported when 2 values are present, with suggestions to delete one or the other value.

Hint

Messages of validation results may contain hyperlinks in markdown format. Use “[Label](URI)” to display hyperlinks, for example in the Problems and Suggestions Panel.

Incomplete data (SHACL 1.2)

An asset can be declared incomplete with sh:incomplete true, meaning that some of its data is intentionally missing, for example because the asset is described elsewhere or has not been fully entered yet. A value of true for sh:incompleteURIStart on a namespace resource declares every asset whose URI starts with that namespace as incomplete, unless the asset itself states sh:incomplete false. Incompleteness can also be declared in the shapes, using sh:values or sh:defaultValue on a property shape for sh:incomplete.

Validation results are not changed by incompleteness, but results that are only caused by missing data are marked as uncritical: missing values (sh:minCount, sh:qualifiedMinCount, sh:someValue) of an incomplete asset, and missing data (sh:class, sh:node, sh:rootClass) of an incomplete value. Uncritical results are shown in grey, and the Problems and Suggestions Panel and the Form Panel can hide them. Whether uncritical results block saving changes and workflow transitions is decided per asset collection, see Manage > Incomplete Data Does Not Block Changes. Assets can be marked as incomplete when they are created (Create Asset Dialog) or later (Modify > Mark as incomplete). The SPARQL function tbs:isIncomplete(?node) returns whether a given node is incomplete.

Further Reading on SHACL

Further Reading on Ontologies

Further Reading on TQ Data Foundation