Ich glaube, dass dieses Problem nichts mit JSON Schema zu tun hat, wie es ein reines JavaScript Problem.
JSON-Schema validiert JSON-Dokumente nicht JavaScript-Objekte. Und mit JSON selbst können Sie keine zusätzlichen Eigenschaften in Arrays einfügen.
Lassen Sie mich Ihnen ein einfaches Beispiel für JavaScript-Code in der Konsole Chrome ausgeführt wird:
let d = ['a', 'b', 'c'];
d.e = 'test';
JSON.stringify(d);
Wird die Ausgabe geben:
"["a","b","c"]"
Also auch wenn JavaScript können Sie zusätzliche Eigenschaften setzen in ein Array wird das resultierende JSON-Objekt nicht enthalten. Daher wird es nicht zu dem Punkt kommen, wenn der JSON gegen das Schema validiert wird.
So ist die Antwort auf Ihre Frage ist:
Sie nicht, dass in JSON Schema tun können, weil sie von JSON selbst verboten ist.
Warum erstellen Sie keine 'Klasse'? –
Weil ich Array brauche? – Hedin
Sie können additionalItems auf false setzen - aber ich denke, es ist wichtig, was das $ Schema der Karte ist. –