You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Don't use SHACL Advanced because it's more expensive. You can use a single SHACL standard shape for all "abstract class. Please use one of the subclasses". But if you want to target by these abstract classes (aas:AbstractLangString, aas:HasDataSpecificationShape etc), you need to mandate RDFS subclass reasoning, and complicate the shape to look for some rdf:type outside of the list:
aas:NoAbstractClassShape a sh:NodeShape ;
sh:targetClass aas:DataElement, aas:DataSpecificationContent, aas:EventElement, ...;
sh:not [sh:path rdf:type; sh:in (aas:DataElement aas:DataSpecificationContent aas:EventElement ...)];
sh:message "This is an abstract class. Please use one of the subclasses for the generation of instances."@en.
Remove this first pattern wherever possible. It says "only printable Unicode chars" and most of the time is redundant (eg digits are printable chars)
Declaring a shape subClassOf another shape is questionable at best (a Shape is not a Class, so it cannot be a subClass). What is the purpose of this? (shapes are not inherited this way)
https://github.com/admin-shell-io/aas-specs/blob/master/schemas/rdf/shacl-schema.ttl
owl:imports <http://datashapes.org/dash>
since it doesn't use DASH shape constructsowl:imports sh:
since it doesn't use shapes from that URL (see https://book.validatingrdf.com/bookHtml011.html#sec126)^^xs:string
since that's default therefore redundantaas:
to a different one (egaas-sh:
). I personally like the practice to conflate the ontology and shape namespacesh:datatype rdf:langString
in 2 prop shapes). In particular:aas-specs/schemas/rdf/shacl-schema.ttl
Line 39 in 2ab08f9
aas-specs/schemas/rdf/shacl-schema.ttl
Line 29 in 2ab08f9
aas:AbstractLangString, aas:HasDataSpecificationShape
etc), you need to mandate RDFS subclass reasoning, and complicate the shape to look for somerdf:type
outside of the list:aas-specs/schemas/rdf/shacl-schema.ttl
Lines 63 to 64 in 2ab08f9
subClassOf
another shape is questionable at best (a Shape is not a Class, so it cannot be a subClass). What is the purpose of this? (shapes are not inherited this way)aas-specs/schemas/rdf/shacl-schema.ttl
Line 54 in 2ab08f9
The text was updated successfully, but these errors were encountered: