The format
The manifest
idop.json — identity, entry point, revisions, features and capabilities.
idop.json is UTF-8 JSON, validated against the manifest schema and then against additional rules.
Members
| Member | Purpose |
|---|---|
format |
https://idoplabs.com/ns/idop/package |
formatVersion |
"1.0" (or "1.1" for the draft) |
runtimeApiVersion |
"1.0" |
entryPoint |
an HTML file under code/ |
application |
id (reverse-domain), version (semver), title, optional icon under resources/ |
document |
id, revisionId, parentRevisionId, createdAt, modifiedAt |
state |
schemaVersion of the document’s own data |
requiredFeatures, optionalFeatures |
e.g. idop.core-storage-v1 |
requiredCapabilities, optionalCapabilities |
network capabilities — see Permissions |
environmentBindings |
non-secret configuration the reader supplies |
credentialBindings |
credentials the reader supplies, never the secret itself |
extensions |
namespaced extension declarations |
Revisions
document.id identifies the document for its whole life. On every save the reader sets parentRevisionId to the previous revisionId, assigns a new revisionId, and updates modifiedAt. createdAt never changes and must not be later than modifiedAt.
Self-declared values
Everything under application is chosen by whoever produced the file. Readers show it, but must not present it as verified.