JSON-LD

JSON-LD (" Java Script  O bject N otation for  Linked  Data "  ) er en af ​​metoderne til at overføre sammenkædede data ved hjælp af JSON - tekstformatet . Formatet er beregnet til at gøre det nemmere for udviklere at konvertere eksisterende JSON-data til JSON-LD. [1] JSON-LD er en W3C -anbefaling og blev udviklet af Linking Data Community Group og senere af RDF Working Group [2] .

JSON-LD bruger konceptet kontekst til at understøtte RDF -datamodellen . Konteksten forbinder egenskaberne for objekterne i JSON-dokumentet med ontologielementer . For at etablere en mapping mellem JSON-LD og RDF-syntaks, skal JSON-LD-værdier konverteres til en bestemt type eller markeres med en sprogmarkør. Konteksten kan være placeret direkte i JSON-LD-dokumentet eller placeret på den URL, der er angivet for konteksten. For eksempel, for normale JSON-dokumenter, kan konteksten angives i HTTP Link-headeren [3] .

Eksempel

Følgende eksempel [3] beskriver en person (Person) i form af ontologi fra FOAF- ordbogen .

{ "@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" , "navn" : "Markus Lanthaler" , "hjemmeside" : "http://www.tugraz.at/" }

Først er JSON-egenskaberne nameog homepageog objekttypen Personknyttet til FOAF-ordbogsbegreberne, derefter homepagetildeles egenskabsværdien typen @id: det betyder, at egenskabsværdien er @id (i dette eksempel "http://xmlns.com/ foaf/0.1/workplaceHomepage") fungerer som en homepageunik identifikator ( IRI ) for feltet og definerer den kontekst, som feltdataene skal behandles i homepage. Dette giver dig mulighed for entydigt at beskrive et objekt i et JSON-dokument Person, baseret på RDF- modellen , ved at definere alle felterne i objektet ved hjælp af IRI. Brug af opløselige datatypereferencer i IRI-format gør det muligt at indlejre sådanne objekter i andre RDF-dokumenter, der indeholder mere information, såvel som at give klienter mulighed for at få nye data blot ved at følge sådanne links. Dette princip er også kendt som Følg din næse (bogstaveligt talt "følg din næse") [4] [5] .

Da alle data har semantiske annotationer, vil RDF-parseren være i stand til at bestemme, at dette dokument indeholder information om en person (ved egenskaben "@type" indeholdende værdien "Person"). Derudover forstår RDF-parseren FOAF-ordbogen og kan ved hjælp af denne ordbog bestemme, hvilken egenskab af JSON-objektet der indeholder navnet på personen ( name), og hvilken gemmer adressen på hans hjemmeside ( homepage).

Til sammenligning ville de samme oplysninger i RDF/N3 -format se sådan ud:

@prefix foaf: < http://xmlns.com/foaf/0.1/ > . @præfiks rdf: < http://www.w3.org/1999/02/22-rdf-syntax-ns# > . @præfiks rdfs: < http://www.w3.org/2000/01/rdf-schema# > . @prefix xml: < http://www.w3.org/XML/1998/namespace > . @præfiks xsd: < http://www.w3.org/2001/XMLSchema# > . < http://me.markus-lanthaler.com/ > a foaf:Person ; foaf:navn "Markus Lanthaler" ; foaf:workplaceHjemmeside < http://www.tugraz.at/ > .

I eksemplet ovenfor kan skumpræfikset beskrives separat i sammenhængen. I dette tilfælde kan ejendomsbeskrivelsen forkortes:

{ "@context" : { "foaf" : "http://xmlns.com/foaf/0.1/" , "name" : "foaf:name" , "homepage" : { "@id" : "foaf:workplaceHomepage " , "@type" : "@id" }, ... } }

Den mest brugte ordbog kan gøres til standardordbog (søgeord @vocab). I dette tilfælde vil navne uden navnerumspræfikser blive behandlet som tilhørende denne ordbog [6] :

{ "@context" : { "@vocab" : "http://xmlns.com/foaf/0.1/" }, ... }

Disse forskelle er naturligvis rent syntaktiske og påvirker ikke RDF-grafen repræsenteret af dokumentet (består af tre tripletter, se nedenfor) og derfor 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/workplaceHjemmeside > < http://www.tugraz.at/ > . < http://me.markus-lanthaler.com/ > < http://xmlns.com/foaf/0.1/name > "Markus Lanthaler" .

Noter

  1. JSON-LD Syntax 1.0 (27. december 2011). Dato for adgang: 30. december 2011. Arkiveret fra originalen 12. januar 2012.
  2. RDF Arbejdsgruppe . Hentet 6. juni 2015. Arkiveret fra originalen 12. juni 2015.
  3. 1 2 Lanthaler, Gütl, 2012 .
  4. Følg din næse . patterns.dataincubator.org. Hentet 19. september 2015. Arkiveret fra originalen 19. september 2015.
  5. António G. et al. "Følg din næse" princip // Semantic Web. - DMK Press, 2015. - 240 s. - ISBN 978-5-97060-333-8 .
  6. JSON-LD 1.0 Arkiveret 1. juni 2013 på Wayback Machine , standardordforråd

Litteratur

  • Cesare Pautasso, Erik Wilde, Rosa Alarcon. REST: Avancerede forskningsemner og praktiske applikationer. - Springer Science & Business Media, 2013. - ISBN 978-1-4614-9299-3 .
  • Lanthaler, Markus og Gütl, Christian (2012). "Om at bruge JSON-LD til at skabe udviklende RESTful Services" (PDF) . Proceedings of the Third International Workshop on RESTful Design . WS-REST '12. Lyon, Frankrig: ACM. pp. 25-32. DOI : 10.1145/2307819.2307827 . Hentet 2015-09-19 .

Links