WorkSpec Schema Registry

Canonical JSON Schemas (draft 2020-12) for the WorkSpec artifact family. Bind an artifact to its schema with a yaml-language-server directive:

# yaml-language-server: $schema=https://schema.workspec.io/v1alpha1/decision.schema.json

v1alpha1

ArtifactFile suffixSchema
Decision record .workspec/decisions/<slug>.yaml v1alpha1/decision.schema.json
Catalog *.catalog.yaml v1alpha1/catalog.schema.json

v1alpha1/c4

The C4 artifact family (elements, diagrams, layouts, and the project spec). Element schemas bind by directory convention (.workspec/<type-dir>/<slug>.yaml) rather than a filename suffix.

ArtifactFile suffixSchema
Actor .workspec/actors/<slug>.yaml v1alpha1/c4/actor.schema.json
System .workspec/system/<slug>.yaml v1alpha1/c4/system.schema.json
External system .workspec/external-systems/<slug>.yaml v1alpha1/c4/external-system.schema.json
Container .workspec/containers/<slug>.yaml v1alpha1/c4/container.schema.json
Component .workspec/components/<slug>.yaml v1alpha1/c4/component.schema.json
Database .workspec/databases/<slug>.yaml v1alpha1/c4/database.schema.json
Queue .workspec/queues/<slug>.yaml v1alpha1/c4/queue.schema.json
Domain .workspec/domains/<slug>.yaml v1alpha1/c4/domain.schema.json
Feature .workspec/features/<slug>.yaml v1alpha1/c4/feature.schema.json
Diagram .workspec/diagrams/*.yaml v1alpha1/c4/diagram.schema.json
Layout .workspec/diagrams/.layout/*.yaml v1alpha1/c4/layout.schema.json
Spec .workspec/spec.yaml v1alpha1/c4/spec.schema.json