2.1. Naming (Benennung)
2.1. Naming (Benennung)
Clients dieser JSON-Antworten SOLLTEN nicht erkannte JSON-Member in Antworten ignorieren. Server können Member in die JSON-Antworten einfügen, die in diesem Dokument nicht spezifiziert sind, aber das stellt keinen Fehler in der Antwort dar. Server, die solche nicht spezifizierten Member in JSON-Antworten einfügen, SOLLTEN Member-Namen haben, die mit einem kurzen Bezeichner präfixiert sind, gefolgt von einem Unterstrich, gefolgt von einem aussagekräftigen Namen. Es wurde beobachtet, dass diese kurzen Bezeichner Software-Implementierern helfen, die Spezifikation des JSON-Members zu identifizieren, und das Fehlen eines solchen Bezeichners könnte dazu führen, dass ein Implementierer annimmt, dass der Server fälschlicherweise einen Namen aus dieser Spezifikation verwendet. Diese Zulassung gilt nicht für jCard [RFC7095]-Objekte. Der vollständige JSON-Name (das Präfix plus der Unterstrich plus der aussagekräftige Name) SOLLTE den Zeichen- und Namensbeschränkungen des in [RFC7480] beschriebenen Präfix-Registers entsprechen. Die Nichtbeachtung dieser Beschränkungen könnte zu einer langsameren Akzeptanz führen, da beobachtet wurde, dass diese Beschränkungen einigen Client-Programmiermodellen helfen.
Betrachten Sie die folgende JSON-Antwort mit JSON-Membern, die alle in diesem Dokument spezifiziert sind.
{
"handle" : "ABC123",
"remarks" :
[
{
"description" :
[
"She sells sea shells down by the sea shore.",
"Originally written by Terry Sullivan."
]
}
]
}
Abbildung 1
Wenn das Mondregister Informationen ausdrücken möchte, die in dieser Spezifikation nicht zu finden sind, könnte es "lunarNIC" als identifizierendes Präfix wählen und beispielsweise das Member namens "lunarNIC_beforeOneSmallStep" einfügen, um Registrierungen zu kennzeichnen, die vor der ersten Mondlandung erfolgten, und das Member namens "lunarNIC_harshMistressNotes", das anderen beschreibenden Text enthält.
Betrachten Sie die folgende JSON-Antwort mit JSON-Namen, von denen einige von Clients ohne Kenntnis ihrer Bedeutung ignoriert werden sollten.
{
"handle" : "ABC123",
"lunarNIC_beforeOneSmallStep" : "TRUE THAT!",
"remarks" :
[
{
"description" :
[
"She sells sea shells down by the sea shore.",
"Originally written by Terry Sullivan."
]
}
],
"lunarNIC_harshMistressNotes" :
[
"In space,",
"nobody can hear you scream."
]
}
Abbildung 2
Das Einfügen von nicht erkannten Membern, die von Clients ignoriert werden, kann auch für zukünftige Überarbeitungen dieser Spezifikation verwendet werden.
Clients, die JSON-Antworten verarbeiten, müssen darauf vorbereitet sein, dass Member, die in diesem Dokument spezifizierte Registrierungsdaten darstellen, in einer Antwort fehlen können. Mit anderen Worten, Server können basierend auf ihren eigenen Richtlinien nicht erforderliche/optionale JSON-Member, die Registrierungsdaten enthalten, frei weglassen.
Schließlich sind alle in diesem Dokument spezifizierten JSON-Namen case-sensitive. Sowohl Server als auch Clients MÜSSEN sie unter Verwendung der angegebenen Groß-/Kleinschreibung übertragen und verarbeiten.