@prefix brick: <https://brickschema.org/schema/Brick#> .
@prefix bsh: <https://brickschema.org/schema/BrickShape#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
bsh:MeterInferSubstance a sh:NodeShape ;
sh:rule [ a sh:SPARQLRule ;
sh:construct """
CONSTRUCT {
$this brick:hasSubstance ?substance .
} WHERE {
$this rdf:type ?meter .
?meter rdfs:subClassOf* brick:Meter .
?meter brick:hasSubstance ?substance .
}
""" ;
sh:prefixes <https://brickschema.org/schema/1.4/Brick> ] ;
sh:targetClass brick:Meter .