Appendix C. JSON Pointer (JSON-Zeiger)
Appendix C. JSON Pointer (JSON-Zeiger)
Dieser Anhang ist informativ.
Im Verhältnis zu JSON Pointer [RFC6901] ist JSONPath nicht als Ersatz, sondern als mächtigerer Begleiter gedacht. Die Zwecke der beiden Standards sind verschieden.
JSON Pointer dient dazu, einen einzelnen Wert innerhalb eines JSON-Werts zu identifizieren, dessen Struktur bekannt ist.
JSONPath kann einen einzelnen Wert innerhalb eines JSON-Werts identifizieren, z. B. mit einem Normalized Path. JSONPath ist aber auch eine Abfragesyntax, mit der mehrere Werte aus JSON-Werten gesucht und extrahiert werden können, deren Struktur nur allgemein bekannt ist.
Ein normalisierter JSONPath kann ohne Kenntnis eines JSON-Werts durch Syntaxkonvertierung in einen JSON Pointer umgewandelt werden. Die Umkehrung gilt im Allgemeinen nicht, d. h. ein numerischer Referenz-Token (Pfadkomponente) in einem JSON Pointer kann einen Mitgliedswert eines Objekts oder ein Element eines Arrays bezeichnen. Für die Umwandlung in eine JSONPath-Abfrage ist Kenntnis der Struktur des JSON-Werts nötig, um diese Fälle zu unterscheiden.