sdgco:hasRule
sdgco:hasRule links a type to a coherence rule it declares. It is the edge the engine follows to discover which rules apply to a document: the subject is the class a TypeDefinition defines, the object is a sdgco:Rule minted <TypeIRI>#<slug> from a @rule block.
The rules a document must satisfy are the union of sdgco:hasRule across its full type closure — every asserted rdf:type, plus each of their rdfs:subClassOf ancestors. So a base type can carry universal rules that every subtype inherits, and resolving the applicable rules is a graph walk keyed on the type IRI (?type sdgco:hasRule ?rule).
Usage
- Domain: a type IRI (an
rdfs:Classdefined by a Type Definition). - Range: a
sdgco:Rule. - Emitted automatically by each
@ruleblock; authors do not write it by hand. - Repeatable — a type commonly declares several rules.