npm Package Manifest
An npm Package Manifest is a package.json file that has opted into CIDA content projection by declaring its type in the reserved cida key:
"cida": { "type": "https://docs.cida.no/ontology/npm/PackageManifest" }
The declaration is explicit and never inferred — a package.json without it remains a plain JSON Document.
The projected slice
The adapter maps exactly three properties through a JSON-LD context; every other key is left unmapped and stays outside the graph:
- name — the package name (also becomes the document title).
- description — the package description.
- version — the package version string.
The mapping is lossless on its slice: projecting the slice to RDF and compacting it back with the same context yields the original slice (the roundtrip invariant). Sparqdown documents can therefore @claim these facts against the manifest's document IRI and have them verified.
What stays with npm
Dependency tracking, scripts, and everything else in package.json belong to npm's tooling — CIDA cites manifest facts; it does not replace the package manager.