JSON-LD (" Java Script O bject N otation for Linked Data " ) är en av metoderna för att överföra länkad data med hjälp av JSON - textformatet . Formatet är tänkt att göra det lättare för utvecklare att konvertera befintlig JSON-data till JSON-LD. [1] JSON-LD är en W3C -rekommendation och utvecklades av Linking Data Community Group och senare av RDF Working Group [2] .
JSON-LD använder konceptet kontext för att stödja RDF -datamodellen . Kontexten associerar egenskaperna för objekten i JSON-dokumentet med ontologielement . För att upprätta en mappning mellan JSON-LD och RDF-syntax måste JSON-LD-värden konverteras till en specifik typ eller markeras med en språkmarkör. Kontexten kan placeras direkt i JSON-LD-dokumentet eller placeras på den URL som anges för sammanhanget. Till exempel, för vanliga JSON-dokument, kan sammanhanget anges i HTTP -länkhuvudet [3] .
Följande exempel [3] beskriver en person (Person) i termer av ontologi från FOAF- ordboken .
{ "@context" : { "name" : "http://xmlns.com/foaf/0.1/name" , "homepage" : { "@id" : "http://xmlns.com/foaf/0.1/ workplaceHomepage" , "@type" : "@id" }, "Person" : "http://xmlns.com/foaf/0.1/Person" }, "@id" : "http://me.markus-lanthaler .com" , "@type" : "Person" , "name" : "Markus Lanthaler" , "hemsida" : "http://www.tugraz.at/" }Först associeras JSON-egenskaperna nameoch homepageoch objekttypen Personmed FOAF-ordbokstermerna, sedan homepagetilldelas egenskapsvärdet typen @id: detta betyder att egenskapsvärdet är @id (i det här exemplet "http://xmlns.com/ foaf/0.1/workplaceHomepage") fungerar som en homepageunik identifierare ( IRI ) för fältet och definierar det sammanhang i vilket fältdata ska behandlas homepage. Detta låter dig unikt beskriva ett objekt i ett JSON-dokument Person, baserat på RDF- modellen , genom att definiera alla fält i objektet med IRI. Genom att använda lösbara datatypreferenser i IRI-format kan sådana objekt bäddas in i andra RDF-dokument som innehåller mer information, samt tillåter klienter att få ny data helt enkelt genom att följa sådana länkar. Denna princip är också känd som Follow Your Nose (bokstavligen "följ din näsa") [4] [5] .
Eftersom all data har semantiska anteckningar kommer RDF-parsern att kunna fastställa att detta dokument innehåller information om en person (genom egenskapen "@type" som innehåller värdet "Person"). Dessutom förstår RDF-tolkaren FOAF-ordboken och kan, med hjälp av denna ordbok, bestämma vilken egenskap hos JSON-objektet som innehåller namnet på personen ( name) och vilken som lagrar adressen till hans hemsida ( homepage).
Som jämförelse skulle samma information i RDF/N3 -format se ut så här:
@prefix foaf: < http://xmlns.com/foaf/0.1/ > . @prefix rdf: < http://www.w3.org/1999/02/22-rdf-syntax-ns# > . @prefix rdfs: < http://www.w3.org/2000/01/rdf-schema# > . @prefix xml: < http://www.w3.org/XML/1998/namespace > . @prefix xsd: < http://www.w3.org/2001/XMLSchema# > . < http://me.markus-lanthaler.com/ > a foaf:Person ; foaf:namn "Markus Lanthaler" ; foaf:workplaceHemsida < http://www.tugraz.at/ > .I exemplet ovan kan skumprefixet beskrivas separat i sammanhanget. I det här fallet kan egenskapsbeskrivningen förkortas:
{ "@context" : { "foaf" : "http://xmlns.com/foaf/0.1/" , "name" : "foaf:name" , "homepage" : { "@id" : "foaf:workplaceHemsida " , "@type" : "@id" }, ... } }Den mest använda ordboken kan göras till standardordbok (sökord @vocab). I det här fallet kommer namn utan namnområdesprefix att behandlas som tillhörande denna ordbok [6] :
{ "@context" : { "@vocab" : "http://xmlns.com/foaf/0.1/" }, ... }Naturligtvis är dessa skillnader rent syntaktiska och påverkar inte RDF-grafen som representeras av dokumentet (består av tre tripletter, se nedan) och därför dokumentets semantik.
< http://me.markus-lanthaler.com/ > < http://www.w3.org/1999/02/22-rdf-syntax-ns#type > < http://xmlns.com/foaf/ 0.1/Person > . < http://me.markus-lanthaler.com/ > < http://xmlns.com/foaf/0.1/workplaceHemsida > < http://www.tugraz.at/ > . < http://me.markus-lanthaler.com/ > < http://xmlns.com/foaf/0.1/name > "Markus Lanthaler" .World Wide Web Consortium (W3C) | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Produkter och standarder |
| ||||||||||||||
Organisationer |
| ||||||||||||||
PÅ |
| ||||||||||||||
Konferenser |
|
semantisk webb | |
---|---|
Grunderna | |
Underavsnitt |
|
Ansökningar |
|
Relaterade ämnen | |
Standarder |
|