Felder zur Beschreibung einer Struktur

Eine Struktur beschreibt, wie ein Datenangebot aufgebaut ist: Welche Klassen (Tabellen/ Entitätstypen), Attribute (Felder/ Spalten) und Assoziationen (Beziehungen zwischen Klassen) enthält es? Auf I14Y werden Strukturen mit der Shapes Constraint Language (SHACL) definiert und als Turtle (TTL)-, RDF- oder JSON-LD-Datei hinterlegt.

Eine Einführung in das praktische Vorgehen findet sich unter Struktur beschreiben. Nachfolgend werden alle Felder für die drei Hauptobjekte – Klasse, Attribut und Assoziation – dokumentiert.

Klasse

Eine Klasse beschreibt eine Gruppe von Objekten, die ähnliche Merkmale haben – zum Beispiel Einträge desselben Typs.

FeldBeschreibungURIWertebereichKardinalitätAnmerkung
TitleLesbarer Name der Klasse, nützlich für Dokumentation und Benutzeroberflächen.rdfs:labelrdfs:Literal0..nerwünscht
TypGibt den Typ des Objekts an. Klassen in SHACL sind vom Typ sh:NodeShape.rdf:typesh:NodeShape (IRI)1..nsh:NodeShape ist obligatorisch; weitere Typen sind möglich
Hat EigenschaftenListe der PropertyShape-Instanzen, die Attribute dieser Klasse beschreiben.sh:propertyListe von sh:PropertyShape (IRIs)0..nerwünscht; erforderlich, wenn die Klasse Eigenschaften hat.
BeschreibungBeschreibung der Klasse.dcterms:descriptionrdfs:Literal0..nerwünscht
ModifiziertDatum der letzten Änderung der Klasse.dcterms:modifiedxsd:dateTime0..1erwünscht
ErstelltErstellungsdatum der Klasse.dcterms:createdxsd:dateTime0..1erwünscht

Attribut

Ein Attribut ist eine Eigenschaft oder ein Datenfeld, das einer Klasse zugeordnet ist (über sh:property).

FeldBeschreibungURIWertebereichKardinalitätAnmerkung
Link zu den DatenLegt fest, auf welche RDF-Daten die Einschränkung zutrifft. Dieses Attribut ist für eine gültige Struktur obligatorisch. Wenn die Daten nicht im RDF-Format vorliegen, Sie die Struktur jedoch in SHACL beschreiben möchten, können Sie einen Platzhalter-Link zur Ressource erstellen (z. B. mit einem Platzhalter-Präfix: http://example.com/). Dieser kann geändert werden, sobald die Daten im RDF-Format vorliegen.sh:pathIRI1obligatorisch
TitleEin lesbarer Name für das Attribut, nützlich für Dokumentation und Benutzeroberflächen.sh:namerdfs:Literal0..nerwünscht
TypDer Typ des Objekts. Ein Attribut in SHACL kann explizit (mit einem Objekt, das über die URI vom Typ sh:PropertyShape gefunden werden kann) oder implizit (ohne Erstellung eines separaten Objekts, durch direkte Angabe der Einschränkungen innerhalb der sh:property im Klassenobjekt) definiert werden. Es wird empfohlen, aber nicht vorgeschrieben, eine Eigenschaftsform als SHACL-Instanz von sh:PropertyShape zu deklarieren.rdf:typesh:PropertyShape (IRI)1..nobligatorisch (wird jedoch nicht verwendet, wenn das Attribut direkt in der Klasse über sh:property definiert ist)
Data TypeGibt den Datentyp der Eigenschaft an (z. B. “xsd:string”, “xsd:dateTime” usw.). Diese Eigenschaft stellt sicher, dass die der Eigenschaft zugewiesenen Werte dem erwarteten Datentyp entsprechen.sh:datatypeIRIs (xsd:integer, xsd:decimal, xsd:boolean, xsd:date, … Eine Liste der RDF-kompatiblen XSD-Typen finden Sie in der folgenden Dokumentation: RDF 1.1 Concepts and Abstract Syntax)0..1optional
Regex PatternIn diesem Feld können Sie ein reguläres Ausdrücke definieren, die zum Abgleichen von Zeichenkombinationen in einer Zeichenfolge verwendet werden. Die Werte von sh:pattern sind gültige Musterargumente für die SPARQL-Funktion REGEX.sh:patternrdfs:Literal (with datatype xsd:string)0..1optional
Minimale AnzahlKardinalitätsbeschränkung. Gibt die Mindestanzahl an, wie oft die Eigenschaft vorkommen darf.sh:minCountrdfs:Literal (typed as xsd:integer)0..1optional
Maximale AnzahlKardinalitätsbeschränkung. Gibt an, wie oft die Eigenschaft maximal vorkommen darf.sh:maxCountrdfs:Literal (typed as xsd:integer)0..1optional
MindestlängeMindestlänge eines String-Wertes.sh:minLengthrdfs:Literal (typed as xsd:integer)0..1optional
Maximale LängeMaximale Länge eines String-Werts.sh:maxLengthrdfs:Literal (typed as xsd:integer)0..1optional
PositionGibt die relative Reihenfolge des Elements an.sh:orderrdfs:Literal (typed as xsd:integer)0..1optional
BeschreibungEine Textbeschreibung, die weitere Details zur Eigenschaft liefert.sh:descriptionrdfs\:Literal0..noptional
Conforms ToEin Standard, dem die Ressource entspricht. In diesem Feld können die mit diesem Attribut verbundenen I14Y-Konzepte verlinkt werden.dcterms:confromsTodct:Standard0..1optional

Assoziation

Eine Assoziation ist eine bestimmte Beziehung zwischen verschiedenen Entitäten oder Klassen (über sh:class).

FeldBeschreibungURIWertebereichKardinalitätAnmerkung
Link zu den DatenLegt fest, auf welche RDF-Daten die Einschränkung zutrifft. Dieses Attribut ist für eine gültige Struktur obligatorisch. Wenn die Daten nicht im RDF-Format vorliegen, Sie die Struktur jedoch in SHACL beschreiben möchten, können Sie einen Platzhalter-Link zur Ressource erstellen (z. B. mit einem Platzhalter-Präfix: http://example.com/), der geändert werden kann, sobald die Daten im RDF-Format vorliegen.sh:pathIRI1obligatorisch
TitleEin Name für die Attribut, den man lesen kann. Das ist wichtig, um die Klasse in der Dokumentation oder in Benutzeroberflächen zu erkennen.sh:namerdfs:Literal0..nerwünscht
TypDer Typ des Objekts. Ein Attribut in SHACL kann explizit (mit einem Objekt, das über die URI vom Typ sh:PropertyShape gefunden werden kann) oder implizit (ohne Erstellung eines separaten Objekts, durch direkte Angabe der Einschränkungen innerhalb der sh:property im Klassenobjekt) definiert werden. Es wird empfohlen, aber nicht vorgeschrieben, eine Eigenschaftsform als SHACL-Instanz von sh:PropertyShapezu deklarieren.rdf:typesh:PropertyShape (IRI)0..noptional (die implizite Syntax kann verwendet werden)
Assoziation zur KlasseDies ist die Eigenschaft, die eine Assoziation mit einer Klasse verknüpft (z. B. ist hasAddress mit der Klasse Address verknüpft). Sie können entweder sh:class oder sh:node verwenden. sh:class überprüft, ob ein Wert eine Instanz einer bestimmten RDF-Klasse ist, während sh:node überprüft, ob der Wert einer anderen Struktur (sh:NodeShape) entspricht.sh:class/sh:nodeIRIs0..1erwünscht
Minimale AnzahlKardinalitätsbeschränkung. Gibt die Mindestanzahl an, wie oft die Eigenschaft vorkommen darf.sh:minCountrdfs:Literal (typed as xsd:integer)0..1optional
Maximale AnzahlKardinalitätsbeschränkung. Gibt an, wie oft die Eigenschaft maximal vorkommen darf.sh:maxCountrdfs:Literal (typed as xsd:integer)0..1optional
BeschreibungEine Textbeschreibung, die weitere Details zur Eigenschaft liefert.sh:descriptionrdfs:Literal0..noptional
Conforms ToEin Standard, dem die Ressource entspricht. In diesem Feld können die mit diesem Attribut verbundenen I14Y-Konzepte verlinkt werden.dcterms:confromsTodct:Standard0..1optional

Weiterführende Spezifikationen