JSON-Schemas haben a required
property, die die erforderlichen Felder in einem JSON-Objekt auflistet. Zum Beispiel validiert die folgende (vereinfachte) Schema einen Anruf, eine SMS-Nachricht an einen Benutzer sendet:JSON-Schema: XOR auf erforderlichen Feldern
{
"type": "object",
"properties": {
"userId": { "type": "string" },
"text": { "type": "string" },
},
"required": ["userId", "text"]
}
Nehmen wir an, ich die Nachricht zu senden, um mehrere Benutzer aktivieren möchten, dh entweder einen userId
Feld oder ein Array von userIds
(aber nicht beides oder keines). Gibt es eine Möglichkeit, eine solche Bedingung in einem JSON-Schema auszudrücken?
Natürlich gibt es Möglichkeiten, das Problem in diesem Fall zu überwinden - zum Beispiel ein userId
Array mit einem einzelnen Element - aber der allgemeine Fall ist interessant und nützlich.