JSON-LD parsing, N-Quads serialization, and RDFC-1.0 canonicalization for Elm.
Only inline contexts are supported (no remote HTTP fetching of @context URLs).
import Json.Decode exposing (Value)
import JsonLd
import JsonLd.Rdf exposing (Dataset)
-- Full pipeline: JSON-LD to canonical N-Quads (RDFC-1.0, SHA-256)
JsonLd.toCanonicalNQuads : Value -> Result String String
-- Individual steps
JsonLd.expand : Value -> Result String Value
JsonLd.toRdf : Value -> Result String Datasetimport JsonLd.NQuads
import JsonLd.Rdf exposing (Dataset)
JsonLd.NQuads.serialize : Dataset -> String
JsonLd.NQuads.parse : String -> Result String Datasetimport JsonLd.Canonicalize
import JsonLd.Rdf exposing (Dataset)
JsonLd.Canonicalize.canonicalize : Dataset -> Result String String
JsonLd.Canonicalize.canonicalizeWith : Options -> Dataset -> Result String StringSee the module docs for the full API.
elm install elm-cardano/json-ldSee bench/ for the benchmarking setup and bench/REPORT.md for the history of optimizations.
pnpm install
pnpm test # run tests
pnpm review # elm-review
pnpm format:check # check formatting