Saltar al contenido

Convertir JSON-LD a N-Quads — Numio

Convierte JSON-LD a RDF en formato N-Quads con jsonld.toRDF. Cada sentencia ocupa una línea con sujeto, predicado, objeto (y nombre de grafo en los grafos con nombre); los nodos sin @id pasan a blank nodes como _:b0.

Cargar datos estructurados JSON-LD en un triple store o una biblioteca RDF que importe N-Quads.

JSON-LD

N-Quads

Cuándo usarla

  • Cargar datos estructurados JSON-LD en un triple store o una biblioteca RDF que importe N-Quads.
  • Ver exactamente qué tripletas RDF extraerán de tu JSON-LD los buscadores o las herramientas RDF.

Cómo usarla

  1. Pega el documento JSON-LD en el editor JSON-LD.
  2. Revisa la salida N-Quads; @type pasa a una tripleta rdf:type y los objetos anidados pasan a blank nodes enlazados.
  3. Copia las líneas en un archivo .nq.

JSON-LD

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

N-Quads

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

Detalles y limitaciones

Las etiquetas de blank node (_:b0, _:b1) se asignan durante la conversión y no son canónicas; usa la página de normalización si necesitas etiquetas estables.

Las tripletas están en el grafo por defecto, así que las líneas no tienen cuarto elemento; los grafos con nombre (@graph con un @id) añaden una IRI de grafo.

Se ejecuta en tu navegador con jsonld.js; un @context remoto como https://schema.org/ lo descarga tu navegador. Si la descarga falla, la página muestra un error con la URL del contexto.

FAQ

¿La salida N-Quads es N-Triples válido?

Cuando todo está en el grafo por defecto, como aquí, cada línea también es N-Triples válido. Los datos en grafos con nombre añaden una columna de grafo que N-Triples no admite.

¿Cómo se escriben los strings y números simples?

Los strings pasan a literales simples como "Jane Doe"; los enteros, decimales y booleanos de JSON pasan a literales tipados: "3"^^xsd:integer, "1.5E0"^^xsd:double y "true"^^xsd:boolean (escritos con IRI completas).

¿Por qué faltan algunas claves?

Solo las claves que se expanden a IRI a través del @context producen tripletas; los términos no definidos se descartan.

Especificaciones y referencias