Przejdź do treści

JSON-LD do formy kompaktowej — Numio

Kompaktuje dokument JSON-LD względem podanego kontekstu, używając pliku jsonld.compact. Pełne IRI stają się terminami lub nazwami prefiksów i sufiksów, a tablice jednoelementowe zwijają się do zwykłych wartości.

Przekształcanie szczegółowego, rozszerzonego JSON-LD z narzędzia RDF w krótkie, czytelne klawisze zdefiniowane przez Twój własny kontekst.

JSON-LD

Context

Compacted

Kiedy go używać

  • Przekształcanie szczegółowego, rozszerzonego JSON-LD z narzędzia RDF w krótkie, czytelne klawisze zdefiniowane przez Twój własny kontekst.
  • Sprawdzenie, czy kontekst odwzorowuje oczekiwane IRI przed opublikowaniem.

Jak używać

  1. Wklej dokument (rozwinięty lub z dowolnym kontekstem) do edytora JSON-LD.
  2. Umieść kontekst docelowy w edytorze kontekstu jako obiekt z kluczem @context.
  3. Przeczytaj wynik: kontekst jest umieszczony na górze, a właściwości używają jego terminów.

JSON-LD + kontekst

// JSON-LD editor
{
  "@id": "http://example.org/book/1",
  "@type": "http://schema.org/Book",
  "http://schema.org/name": "Dune",
  "http://schema.org/author": {"@id": "http://example.org/frank-herbert"},
  "http://schema.org/datePublished": {"@value": "1965", "@type": "http://www.w3.org/2001/XMLSchema#gYear"}
}

// Context editor
{"@context": {"schema": "http://schema.org/", "title": "schema:name",
  "author": {"@id": "schema:author", "@type": "@id"}}}

Kompaktowy JSON-LD

{
  "@context": {
    "schema": "http://schema.org/",
    "title": "schema:name",
    "author": {
      "@id": "schema:author",
      "@type": "@id"
    }
  },
  "@id": "http://example.org/book/1",
  "@type": "schema:Book",
  "author": "http://example.org/frank-herbert",
  "schema:datePublished": {
    "@type": "http://www.w3.org/2001/XMLSchema#gYear",
    "@value": "1965"
  },
  "title": "Dune"
}

Szczegóły i ograniczenia

Właściwości bez pasującego terminu używają przedrostka, jeśli taki jest zdefiniowany (schemat: datePublished); w przeciwnym razie zachowują pełne IRI.

Termin z „@typem”: „@id” umożliwia zwięzłe odniesienia do zwykłych ciągów znaków, tak jak w przypadku autora powyżej.

Działa w przeglądarce z jsonld.js. Oba edytory muszą zawierać prawidłowe JSON; Adresy URL zdalnego kontekstu są pobierane przez Twoją przeglądarkę. Jeśli pobieranie nie powiedzie się, na stronie zostanie wyświetlony błąd dotyczący nazwy kontekstu URL.

FAQ

Dlaczego wpisana wartość nadal jest obiektem?

Wartość z @typem (jak data xsd:gYear) pozostaje {"@type", "@value"}, chyba że kontekst definiuje termin z tym samym @typem dla właściwości.

Czy edytor kontekstu może zawierać URL?

Tak, jako {"@context": "https://..."}. Przeglądarka pobiera to, więc serwer musi zezwalać na żądania pochodzące z różnych źródeł; konteksty wbudowane tego unikają.

Czy zagęszczanie zmienia dane?

Nie. Kompaktowanie zmienia jedynie sposób zapisywania IRI i wartości; rozwinięcie wyniku daje ten sam wykres.

Specyfikacje i referencje