Core SHACL

A scoped Shapes Constraint Language vocabulary. It carries exactly the constraints a code generator and schema-aware tools consume — cardinality, closed value sets, and string/number facets — over a single-predicate path. Logical combinators, shape composition, SPARQL constraints, and multi-step paths are intentionally out of scope. Shapes are read by buildOntologyModel to enrich the resolved type-model and validated by the ShaclShape rule.

ClassThe class that each value of the property must be an instance of.DatatypeThe datatype that each value of the property must carry (e.g. xsd:string).FlagsOptional regular-expression flags applied to pattern (e.g. "i").InThe closed set of permitted values for the property, as an rdf:List. Generated as a literal union type.Max CountMaximum number of values for the property. maxCount = 1 makes the property single-valued; greater than 1 or unspecified means a list.Max InclusiveInclusive upper bound for numeric values.Max LengthMaximum string length of each value.MessageHuman-readable text used as the validation error when a constraint on this shape is violated. Emitted into generated validators.Min CountMinimum number of values for the property. minCount >= 1 makes the property required (generated as non-optional); 0 or unspecified means optional.Min InclusiveInclusive lower bound for numeric values.Min LengthMinimum string length of each value.Node ShapeA shape that targets a class (via targetClass) and groups the PropertyShapes that constrain that class's properties.PathThe property whose values this PropertyShape constrains. Scoped here to a single predicate (no SHACL path expressions).PatternA regular expression every value of the property must match.PropertyA PropertyShape that constrains one of the target class's properties.Property ShapeA shape that constrains the values of a single property (named by path) on the nodes its enclosing NodeShape targets.ShapeThe base class of shapes. A shape carries constraints; concrete shapes are either a NodeShape (constraining a node/class) or a PropertyShape (constraining the…Target ClassThe class that a NodeShape applies to.