Ein textbasiertes Dateiformat zum strukturierten Speichern und Übertragen von Daten. Trotz des Namens ist JSON heute sprachunabhängig und wird in praktisch allen Programmiersprachen und Plattformen verwendet.

Die Grundstruktur besteht aus Schlüssel-Wert-Paaren in geschweiften Klammern:

{
  "name": "Helmut Müller",
  "alter": 42,
  "aktiv": true,
  "tags": ["pkm", "obsidian", "linux"],
  "adresse": {
    "stadt": "Bonn",
    "land": "Deutschland"
  }
}

Erlaubte Datentypen sind Strings (in doppelten Anführungszeichen), Zahlen, Boolesche Werte (true/false), null, Arrays (eckige Klammern) und verschachtelte Objekte. Kommentare sind im Format nicht vorgesehen, was gelegentlich als Einschränkung empfunden wird. Alternativen wie JSONC oder JSON5 lösen das, sind aber keine offiziellen Standards.

JSON hat XML als dominantes Austauschformat im Web weitgehend abgelöst, weil es kompakter und für Menschen besser lesbar ist. Es begegnet einem heute überall: in REST-APIs, Konfigurationsdateien, Datenbanken wie MongoDB, und als Ausgabeformat von Kommandozeilenwerkzeugen.

Eng verwandt ist YAML , das Obsidian für den Frontmatter-Block am Anfang jeder Notiz verwendet. YAML ist ebenfalls ein textbasiertes Format für strukturierte Daten, aber auf Lesbarkeit für Menschen optimiert: ohne Anführungszeichen, ohne geschweifte Klammern, mit Einrückung statt Satzzeichen. Intern konvertiert Obsidian diesen YAML-Block beim Laden der Notiz in eine JSON-ähnliche Datenstruktur, auf die Plugins wie Dataview dann zugreifen. Wer also Dataview-Abfragen schreibt, arbeitet im Grunde mit den JSON-Repräsentationen seiner YAML-Felder.