Vai al contenuto

JSON-LD in forma normalizzata — Numio

Canonicalizza JSON-LD in N-Quad ordinati utilizzando jsonld.normalize con il suo algoritmo URDNA2015 predefinito. I nodi vuoti ricevono etichette deterministiche (_:c14n0, _:c14n1), quindi grafici uguali producono testo identico.

Produzione del modulo canonico con hash o firma per credenziali verificabili e prove di dati collegati.

JSON-LD

Normalized

Quando usarlo

  • Produzione del modulo canonico con hash o firma per credenziali verificabili e prove di dati collegati.
  • Verificare se due documenti JSON-LD con layout o contesti diversi descrivono lo stesso grafico.

Come si usa

  1. Incolla il documento JSON-LD nell'editor JSON-LD.
  2. Leggi i canonici N-Quad: una tripla per riga, ordinata, con i nodi vuoti rinominati in _:c14nN.
  3. Diff o hash del testo di output per confrontare i grafici.

JSON-LD

{
  "@context": {"@vocab": "http://schema.org/"},
  "@type": "Person",
  "name": "Jane Doe",
  "address": {
    "@type": "PostalAddress",
    "addressLocality": "Seattle"
  }
}

N-Quad canonici

_:c14n0 <http://schema.org/addressLocality> "Seattle" .
_:c14n0 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/PostalAddress> .
_:c14n1 <http://schema.org/address> _:c14n0 .
_:c14n1 <http://schema.org/name> "Jane Doe" .
_:c14n1 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/Person> .

Dettagli e limiti

La pagina chiama la normalizzazione senza opzioni, quindi jsonld.js utilizza l'output URDNA2015 e N-Quads.

Le etichette dei nodi vuoti dipendono dal contenuto del grafico, non dall'ordine delle chiavi nel tuo JSON.

Funziona nel tuo browser; gli URL @context remoti vengono recuperati dal tuo browser. Se il download fallisce, la pagina mostra un errore nominando il contesto URL.

FAQ

In cosa differisce dalla pagina da JSON-LD a N-Quad?

Entrambi emettono N-Quad. Questa pagina rietichetta canonicamente i nodi vuoti (_:c14n0) e ordina le linee; la pagina N-Quad mantiene le etichette assegnate al processore come _:b0.

Quale algoritmo di canonicalizzazione viene utilizzato?

URDNA2015, il valore predefinito in jsonld.js, che è stato standardizzato da W3C come RDF Canonicalizzazione del set di dati (RDFC-1.0).

Perché manca una proprietà nell'output?

Le chiavi non definite in @context non vengono espanse in IRI e sono scartate prima della conversione in quad.

Specifiche e riferimenti