25 lines
2.1 KiB
Markdown
25 lines
2.1 KiB
Markdown
# Canonical data model — draft contract v0.1
|
|
|
|
The JSON Schema in `contracts/snapshot.schema.json` is a **first executable draft**. It intentionally models a compact display projection; Claim/Evidence and policy semantics in this document are richer than the initial schema and must be implemented in WP-03.
|
|
|
|
## Records
|
|
|
|
- `Dataspace`: namespace, version, title, description, schemaVersion, language, source policy, kind registry, navigation, view registry.
|
|
- `Entity`: ID, kindId, title, aliases, tldr, summary, tags, properties, effective time, sourceRefs, claimRefs, state.
|
|
- `Relation`: id, predicate, from/to, evidenceRefs, asOf, sourceRef; direction preserved.
|
|
- `Claim`: id, subject, key or predicate, value/target, assertedBy, evidenceRefs, status, valid interval, observedAt; no mandatory scalar probability.
|
|
- `Source`: id, canonical URI, title, author/publisher, retrievedAt, publishedAt, license, attribution, contentHash.
|
|
- `Collection`: ordered set of entity IDs + editorial purpose, optionally computed from a view.
|
|
- `View`: declarative facets, columns, sorts, summary cards, panels and graph traversal policy.
|
|
|
|
## Projection semantics
|
|
|
|
A `view` never changes truth; it chooses presentation. Projected `Entity.summary` is a **display decision** (may be curated), and `Claim`s retain competing assertions. Edges without provenance can be shown as `unverified` but must not be presented as sourced fact. All counts derive from the snapshot and query state.
|
|
|
|
## Mappings versus ontology
|
|
|
|
Types such as `concept`, `person`, `organization`, `document`, `pattern`, `decision`, `problem` are example `kindId`s, not privileged ontological primitives. The core representation is open-world and domain-specific names live in the manifest. A future vocabulary layer can connect manifests to SKOS/schema.org/RDF terms when useful.
|
|
|
|
## Future-proofs
|
|
|
|
Versioned migrators (`schemaVersion`), stable source-scoped IDs, lifecycle tombstones, localizations, role/perspective-aware visibility, hierarchical collection membership, temporal relations, claim-level review state, conflict handling, event stream, and computation provenance.
|