Tutorials · Lernen, Schritt für Schritt, mit Ergebnis
Ein Manifest in 15 Minuten
Vom leeren Editor zu einem Manifest, das die erste Prüfstufe besteht, und dem Weg, es einzureichen.
Auf dieser Seite
Am Ende dieses Tutorials haben Sie ein Manifest für eine Datenquelle geschrieben, es gegen das datierte JSON-Schema geprüft und wissen, was danach geschieht. Sie brauchen einen Texteditor, Rust (stable über rustup) und Git; alle Befehle laufen aus der Wurzel des Korpus-Checkouts.
1. Was ein Manifest ist
Ein Manifest ist gewöhnliches JSON in genau einer normierten Gestalt: ein Profil auf DCAT-AP-CH mit der AI-Interface-Erweiterung, dank JSON-LD-Kontext zugleich sauberes RDF. Neun Felder sind Pflicht; die Referenz Manifest-Standard nennt sie Feld für Feld.
2. Die Datei anlegen
Legen Sie eine Datei an, deren Name der Slug Ihrer Kennung ist, zum Beispiel meine-quelle.json. Der Inhalt ist das geparkte Manifest des Vereins, gekürzt auf die Pflichtfelder plus tier und probe; ersetzen Sie Kennung, Titel, Herausgeber, Lizenz und Endpunkt durch Ihre Angaben. Der Befehl legt die Datei an, wie sie hier steht:
cat > meine-quelle.json <<'EOF'
{
"$schema": "https://ld.openhelvetia.swiss/ns/manifest/schema/2026-08-15/manifest.schema.json",
"@context": "https://ld.openhelvetia.swiss/ns/manifest/v1",
"@id": "https://ld.openhelvetia.swiss/registry/meine-quelle",
"@type": "Manifest",
"title": {
"de": "Meine Quelle — SPARQL-Zugang",
"en": "My source — SPARQL access"
},
"publisher": "https://ld.openhelvetia.swiss/org/meine-organisation",
"license": "https://dcat-ap.ch/vocabulary/licenses/terms_open",
"interfaces": [
{
"@type": "SparqlInterface",
"endpoint": "https://example.org/sparql",
"auth": {
"authType": "none"
},
"tier": "base",
"probe": {
"kind": "sparql-ask",
"expect": "boolean"
}
}
],
"issued": "2026-09-02"
}
EOF
Die Datei steht in der kanonischen Form des Standards (feste Schlüsselreihenfolge, zwei Leerzeichen, LF); eine andere Formatierung meldet die zweite Prüfstufe als Fehler, und --write stellt sie her. Drei Dinge gehen hier oft schief: @context ist genau ein String, kein Array; title ist eine Sprach-Map, kein String; license ist eine IRI, kein Name.
3. Gegen das Schema prüfen
Die erste der vier Prüfstufen können Sie selbst laufen lassen. Das datierte Schema ist öffentlich; jeder Validator für JSON Schema 2020-12 genügt. Mit dem Prüfwerkzeug des Vereins aus dem Checkout:
cargo run --locked --manifest-path registry/standard/oh-validate/Cargo.toml -- registry/standard/schema/manifest.schema.json meine-quelle.json
Erwartete Ausgabe bei Erfolg:
checked 1 file(s): OK
Ein unbekannter Schlüssel ist ein Fehler, keine Warnung. Die Meldung nennt den Pfad im Dokument.
4. Die weiteren drei Stufen
JSON-LD-Roundtrip, SHACL-Shapes und der Gesamtgraph laufen beim Verein, als Gate vor jeder Änderung am Register. Sie können sie lokal mitlaufen lassen:
cargo run --locked --manifest-path registry/standard/oh-validate/Cargo.toml -- registry/standard/schema/manifest.schema.json meine-quelle.json --stage2 registry/standard/context/v1.jsonld --stage3 registry/standard/shapes/manifest-v1.ttl --stage4
Die Stufen sind in So wird geprüft beschrieben.
5. Einreichen
Ins Verzeichnis führt einer von drei Wegen; die Anleitung Die drei Aufnahmewege beschreibt sie. Heute heisst das: Manifest und Erklärung in Schriftform an die Kontaktadresse des Vereins. Eine Bearbeitungsfrist nennt diese Seite nicht; keine ist beschlossen.
Was Sie jetzt haben
Ein Manifest, das die erste Prüfstufe besteht, und die Befehle für die übrigen drei. Weiter: Das Verzeichnis maschinell lesen, um zu sehen, wie Ihr Eintrag später ausgeliefert wird.