Tags Architecture


Purpose

Tags are lightweight semantic markers that classify notes along orthogonal dimensions to (a) accelerate retrieval, (b) enable higher‑order composition (indexes, MOCs, frameworks), and (c) drive automation (queries, publishing pipelines). Each tag belongs to a curated family (a namespace) signaled by a prefix (e.g. type/, source/). A tag SHOULD express a stable attribute of the note, not transient context; transient states go into properties (frontmatter) or a status/ tag family.

Tagging Principles

  1. Single Responsibility: Each tag family answers exactly one question (What kind? Origin? Topic? Intended use?).
  2. Controlled Vocabulary: Prefer existing values; add new only if it won't collapse into an existing synonym within 30 days.
  3. Sparse & Meaningful: Only tag if it changes queries or decisions; avoid decorative duplicates.
  4. Hierarchical Prefixing: Use only one depth: family/value. Avoid deeper trees (theme/software/backend)—capture nuance via multiple tags (theme/backend, theme/distributed-systems).
  5. Consistent Form: Lowercase, kebab-case if multiword (theme/cloud-architecture). Singular nouns unless inherently plural (e.g. theme/algorithms).

Core Tag Families

Family Question Answered Typical Cardinality per Note Mandatory For Notes
type/ What content form is this? 1–2 Permanent, Reference, sometimes Structure Drives templates/rendering.
structure/ What kind of structure note? 0–1 (only structure notes) Structure Distinguishes navigational artifacts.
source/ Where did the information originate? 1 (Permanent, Reference) Permanent, Reference Reference inherits or refines.
theme/ What domain/topic does it cover? 1–5 Permanent, Reference, Structure Use multiple for intersectional topics.
target/ Where will this be used/published? 0–N Permanent (optional) Feeds publishing pipeline.
role/ what role does the person fullfil 1-N Permanent For type/person

Creation Workflow

  1. Capture Reference: Annotate with source/*, minimal theme/*, type/annotation.
  2. Synthesize Permanent: Distill references → assign type/note or specific form; enrich theme/*;
  3. Integrate Structure: When ≥ ~5 related permanents exist, create structure note: choose structure/index or structure/moc; add linking section.
  4. Target Planning: As content matures, add target/* tags to queue for publishing queries.

Back Matter

Source

  • based_on::

References

  • see::

Terms

Target

  • used_in::

Tasks

Implementation TODOs (Meta about this architecture)

  • Populate dataview query library note.
  • Add CSS snippet for tag family colorization.
  • Script to export all target/* ready notes.

Questions

  • question::