Inferenz verstehen
RDFS domain und range ohne Nebenwirkungen
rdfs:domain und rdfs:range sind Inferenzregeln, keine Eingabevalidierung.
domain leitet den Subjekttyp ab
`rdfs:domain` bedeutet: Für jedes Tripel mit dieser Eigenschaft gehört das Subjekt zur angegebenen Klasse. Es ist keine Liste erlaubter Eingabetypen.
Wird `ex:wartetProdukt` mit einer Organisation als Subjekt verwendet, kann daraus folgen, dass die Organisation zugleich Techniker ist.
range leitet den Objekttyp ab
`rdfs:range` typisiert Ressourcenobjekte oder schränkt bei Datatype Properties den Wertebereich semantisch ein. Auch hier ist die Wirkung Inferenz, nicht Fehlermeldung.
Mehrere domain- oder range-Aussagen wirken typischerweise als Schnittmenge, nicht als Alternative.
SHACL übernimmt die Prüfung
Wenn nur Techniker die Eigenschaft nutzen dürfen, beschreibt ein SHACL-Shape die erwartete Klasse und erzeugt bei Abweichung ein Validation Result.
RDFS und SHACL können dieselben Klassen nennen, erfüllen aber verschiedene Aufgaben.
Inferenz und Validierung nebeneinander
RDFS beschreibt die Bedeutung der Eigenschaft. SHACL prüft eingehende Daten gegen die gewünschte Form.
ex:wartetProdukt rdfs:domain ex:Techniker ;
rdfs:range ex:Produkt .
ex:WartungsShape a sh:NodeShape ;
sh:targetSubjectsOf ex:wartetProdukt ;
sh:class ex:Techniker ;
sh:message "Subjekt muss Techniker sein"@de .Eigenständiges Modellierungsbeispiel. Präfixe werden im umgebenden Beispielkontext vorausgesetzt.
Prüffrage für die Praxis
Nutze SHACL für Prüfungen und RDFS für ableitbare Bedeutung.
Quellen zu diesem Beitrag
Auswahl auf Artikelebene, geprüft am 18.09.2026.
- W3C RDF Schema 1.1
Normative Semantik von rdfs:domain und rdfs:range. - W3C SHACL Recommendation
Definiert sh:class und Validation Results.