JSON-LD (JavaScript Object Notation for Linked Data) to sposób kodowania danych połączonych za pomocą formatu JSON oraz serializacji danych w postaci zbliżonej do tradycyjnego JSON. Został zaprojektowany tak, aby można go było łatwo tworzyć poprzez modyfikację istniejących dokumentów JSON. Jest rekomendacją World Wide Web Consortium, opracowaną najpierw przez grupę społecznościową JSON for Linking Data, a następnie przejrzaną i zestandaryzowaną przez grupę roboczą RDF, obecnie utrzymywaną przez grupę roboczą JSON-LD.
Projekt i kontekst
JSON-LD opiera się na koncepcji kontekstu, który odwzorowuje właściwości obiektów JSON na pojęcia w ontologii, wykorzystując model RDF. Aby przetłumaczyć składnię JSON-LD na RDF, wartości mogą zostać sprowadzone do określonego typu lub oznaczone językiem. Kontekst może być osadzony bezpośrednio w dokumencie JSON-LD albo przechowywany w osobnym pliku i przywoływany w zwykłych dokumentach JSON za pomocą nagłówka HTTP Link.
Przykład i łączenie
Typowy przykład opisuje osobę z wykorzystaniem ontologii FOAF (friend of a friend). Właściwości takie jak imię, strona domowa oraz typ Person są odwzorowane na pojęcia FOAF, a wartość strony domowej zadeklarowana jest jako IRI. Dzięki temu osoba może zostać jednoznacznie zidentyfikowana, a rozwiązywalne IRI pozwalają dokumentom łączyć się z dalszymi danymi, co jest zasadą znaną jako Follow Your Nose. Procesor RDF rozumiejący FOAF może wówczas rozpoznać osobę oraz to, które właściwości zawierają jej imię i stronę domową.
Zastosowania
Schema.org oraz Google Knowledge Graph wykorzystują to kodowanie, które stosowane jest głównie w optymalizacji pod kątem wyszukiwarek. Używano go także w informatyce biomedycznej oraz do reprezentowania informacji o pochodzeniu danych. Stanowi podstawę Activity Streams, formatu wymiany informacji o aktywnościach, oraz ActivityPub, sieciowego protokołu serwisów społecznościowych o strukturze federacyjnej. W Internecie Rzeczy opis Thing Description zapisany w JSON-LD opisuje interfejsy urządzeń udostępniane w sieci.