JSON: Gibt es ein Äquivalent von Schematron für JSON und JSON Schema? (Das heißt, eine JSON-Technologie, um Co-Constraints auszudrücken)

8

Hier ist eine JSON-Instanz, die die Startzeit und die Endzeit für ein Meeting zeigt:

%Vor%

Ich kann die Struktur dieser Instanz mithilfe von JSON-Schema angeben: Die Instanz muss ein Objekt mit einer "Startzeit" -Eigenschaft und einer "Endzeit" -Eigenschaft enthalten, und jede Eigenschaft muss eine Datum / Uhrzeit-formatierte Zeichenfolge sein. Siehe unten für das JSON-Schema. Was ich jedoch nicht spezifizieren kann, ist folgendes: Das Meeting muss beginnen, bevor es endet. Das heißt, der Wert von "Startzeit" muss kleiner als der Wert von "Endzeit" sein. Manche Leute nennen diese Datenabhängigkeit eine Co-Constraint. In der XML-Welt gibt es eine wundervolle, einfache Technologie, um Co-Constraints auszudrücken: Schematron. Ich frage mich, ob es eine gleichwertige Technologie in der JSON-Welt gibt? Was würden Sie verwenden, um deklarativ die Beziehung zwischen dem Wert von "Startzeit" und "Endzeit" zu beschreiben? (Anmerkung: Das Schreiben von Code in einer Programmiersprache ist nicht was ich unter "deklarative Beschreibung der Beziehungen" verstehe. Ich suche ein deklaratives Mittel zur Beschreibung der Datenabhängigkeiten, die in JSON-Dokumenten vorhanden sind, nicht prozeduralen Codes .)

%Vor%     
Roger Costello 20.02.2015, 12:32
quelle

2 Antworten

1

Leider ist die Antwort nein. JSON-Schema ermöglicht Ihnen, die Struktur und die zulässigen Werte zu überprüfen, aber es gibt keine Mechanismen zum Validieren von Wertesätzen, a'la Schematron.

Der einfachste Weg, dies zu lösen, ist ein anderes Skript in der Pipeline, das diese Art von Prüfungen durchführt.

    
jasiek 17.08.2016 12:52
quelle
-1

Die json-schema.org Website listet einige Implementierungen auf.

    
Liosan 29.05.2015 10:40
quelle