Hello Holger,
I have a Location class with Site, Facility, Level, and Room sub-classes.
The Location class defines the Location relation properties 'has_part' and the inverse 'part_of'; however the constraints on these relations are different for each sub-class. For example:
A Facility can have a Facility or a Level as a part, but not a Room
A Level can have a Room as a part, but not a Site or Facility
Can I define and bind a property shape to each sub-class that permits me to specify the constraints for each one discretely or do I need to define the properties redundantly for each sub-class ?
Thanks, Andrew
dpr:Location
a owl:Class ;
a sh:NodeShape ;
rdfs:label "Location" ;
rdfs:subClassOf dpr:AECO ;
sh:property dpr:Location-hasPart ;
sh:property dpr:Location-hasPart-inverse ;
.