Vault Conventions

Decisions and conventions that govern how the vault is structured and why. Add an entry here when a non-obvious choice is made so future contributors (human or AI) understand the reasoning.


Property model

Why isIn and partOf are used directly instead of Breadcrumbs’ down

Breadcrumbs computes up/down relationships in memory from isIn/partOf front matter, but does not write them back to front matter (writeBCsInline: false). Obsidian Bases reads only front matter, so down was silently always empty in any Bases formula that referenced it.

Convention: always use the source properties (isIn, partOf) directly in Bases formulas and queries. Never rely on Breadcrumbs’ computed up/down.

ofA is deprecated — use partOf

ofA has been replaced by partOf for functional membership. Do not reintroduce ofA in any note or template.


Front matter inheritance conventions

labelType

Label type for physical printing is resolved via inheritance:

  1. Note’s own labelType: front matter
  2. Nearest ancestor index.md with labelType:
  3. No global default — notes with no resolvable type are skipped

index.md files set the default for their subtree but are never printed themselves. See [QR Label Printing](QR Label Printing.md) for full details.

isA

The isA property identifies note type (device, area, system, term, service). Convention: set isA in a folder’s index.md to establish the default for the subtree; individual notes only need it when they differ from the folder default.


Body text: standard Markdown links, path from vault root:

[Page](20-Services/Docker.md)
![](path/to/image.jpg)

Never ![[wikilink]] for images.

Front matter (isIn, partOf, dependsOn): absolute wikilinks, quoted:

isIn: "[[30-Areas/Duplex/Unit B/index]]"
partOf: "[[40-Systems/Home Network/index]]"
dependsOn: ["[[50-Devices/Power/AC Power/UPS/Lab UPS]]"]

Rules:

  • Always [[double brackets]] — this is what Obsidian Properties panel drag-and-drop creates
  • Always the full vault-relative path (no leading slash, no .md extension)
  • Always quoted with "..." (YAML requires quotes around [[)
  • Folder notes: include index explicitly: [[30-Areas/Duplex/index]]

Breadcrumbs v3 only resolves wikilink format from front matter — markdown links in front matter are invisible to it. This is why front matter uses wikilinks even though body text uses markdown links.

Obsidian app.json is set to newLinkFormat: "absolute" so drag-and-drop from the Files panel into a property always generates the correct absolute wikilink format.


Folder naming

Top-level folders use {prefix}-{name} (e.g. 10-Overview, A10-Glossary). The numeric/alpha prefix controls sort order in the Explorer. Quartz strips the prefix for display names via mapFn in quartz.layout.ts.