hypergraphs.de

SHACL schreiben

NodeShape und PropertyShape mit Beispiel

NodeShapes wählen Fokusressourcen, PropertyShapes prüfen konkrete Pfade und Bedingungen.

Redaktion Hypergraphs.deFachprüfung: 18.09.2026TechArticle

NodeShape wählt Fokusressourcen

Ein NodeShape bündelt Constraints für Fokusressourcen. Targets bestimmen, welche Knoten geprüft werden, etwa alle Instanzen von schema:Product.

Ein Shape ohne Target kann dennoch von anderen Shapes referenziert werden.

PropertyShape prüft einen Pfad

Ein PropertyShape verbindet `sh:path` mit Constraints wie Kardinalität, Datentyp, Klasse oder Pattern. Der Pfad bestimmt, welche Werte vom Fokus aus geprüft werden.

Mehrere PropertyShapes halten Meldungen und Zuständigkeiten klarer als ein monolithischer Block.

Positive und negative Fixtures

Für jedes Constraint sollte ein gültiger und ein gezielt ungültiger Datensatz existieren. Das erwartete Ergebnis umfasst Fokus, Pfad und Constraint-Komponente.

Nur die Anzahl der Fehler zu testen ist zu schwach, weil zwei Fehler einander ersetzen könnten.

Produktname genau einmal auf Deutsch

Das Shape verlangt einen einzigen String mit Sprachkennzeichnung de.

ex:ProductShape a sh:NodeShape ;
  sh:targetClass schema:Product ;
  sh:property [
    sh:path schema:name ;
    sh:minCount 1 ; sh:maxCount 1 ;
    sh:languageIn ( "de" ) ;
    sh:uniqueLang true
  ] .

Eigenständiges Modellierungsbeispiel. Präfixe werden im umgebenden Beispielkontext vorausgesetzt.

Prüffrage für die Praxis

Trenne fachliche Regeln in kleine benannte Shapes.

Quellen zu diesem Beitrag

Auswahl auf Artikelebene, geprüft am 18.09.2026.

Im Ontologie-Pfad weiterlesen