Tag Taxonomy

Overview

About:

This document defines the complete tag taxonomy for this Obsidian Vault. Tags are organized into three root-level categories: Status, Type, and Topic.

The tagging system for this vault relies on the following foundational tag “types”:

  • Status/{Status}: Define the note’s current state from a set of pre-defined possible statuses.
  • Type/{Type}: Define the note’s “Type” from a pre-defined, managed set of possible note types.
  • Topic/{Topic}: Define the note’s associated topic(s). Can be multiple topics as separate Topic/ tags as well as nested, layered topics as needed (i.e. Topic/Science/Physics). It becomes increasingly important to manage and groom the nested tag taxonomy over time consistently.

Design Principles

  1. Flat over nested - Avoid deep nesting like Topic/Dev/Lang/R/Framework/Shiny
  2. Combinable - Use multiple flat tags: #Topic/R + #Topic/Shiny
  3. Consistent - Every note gets Status + Type + Topic tags
  4. Purposeful - Tags enable filtering and discovery

Implementation

Tags in Obsidian are defined in the note’s YAML Frontmatter (Metadata) like so:

tags:
  - Status/{Status}
  - Type/{Type}
  - Topic/{Topic}  

or alternatively,

tags: [Status/{Status}, Type/{Type}, Topic/{Topic}]

For example, this note’s frontmatter declares the following tags:

tags:
  - Status/Ongoing
  - Type/Meta
  - Topic/Obsidian
  - Topic/PKM
  - Topic/Meta

Notice how multiple Topic/ tags are implemented as this note relates to the Obsidian, PKM, and Meta topics.

Status Tags

Rule:

Every note gets exactly one Status tag.

The note status tag is an essential piece of metadata describing the current state of the note or its active phase in the generalized note lifecycle.

It should be applied to every note in the vault, and by default new notes should typically use a status tag of WIP for notes in progress.

Currently, the defined possible note status tags are as follows:

OrderTagDescriptionUse When
0Status/OngoingContinuously updatedREADMEs, MOCs, living documents
1Status/WIPWork in progressNotes in progress or needing further development or processing
2Status/DraftInitial stateFirst pass, needs refinement
3Status/CompleteFinished, polishedNote is reviewed and done

Type Tags

Classification of the note. Should match the file prefix.

TagFile PrefixDescription
Type/MOCMOC - Map of Content, navigation index
Type/CodeCode - Code snippet or example
Type/DefinitionDefinition - Term definition
Type/Acronym(with Definition)Acronym definition
Type/ListList - Curated list with links
Type/GuideGuide - Step-by-step how-to
Type/ChecklistChecklist - Actionable checklist
Type/QuoteQuote - Quotation
Type/ReadmeindexFolder index
Type/Note(none)Generic slipbox note
Type/DailyYYYY-MM-DDDaily journal
Type/Weekly(varies)Weekly review
Type/Monthly(varies)Monthly review
Type/Project(varies)Project-specific note

Rule: Every note gets at least one Type tag.

Topic Tags

Subject domain. Flat structure, combinable.

Programming Languages

TagDescription
Topic/RR programming language
Topic/PythonPython programming
Topic/PowerShellPowerShell scripting
Topic/SQLSQL and databases
Topic/JavaScriptJavaScript
Topic/TypeScriptTypeScript
Topic/BashBash/shell scripting
Topic/CSSCSS styling
Topic/HTMLHTML markup
Topic/GoGolang
Topic/RustRust programming

Frameworks and Libraries

TagDescription
Topic/ShinyR Shiny framework
Topic/ReactReact framework
Topic/NodeNode.js ecosystem
Topic/PlumberR Plumber API framework
Topic/FastAPIPython FastAPI
Topic/DjangoPython Django

Platforms and Tools

TagDescription
Topic/DockerDocker containerization
Topic/GitGit version control
Topic/GitHubGitHub platform
Topic/AWSAmazon Web Services
Topic/AzureMicrosoft Azure
Topic/GCPGoogle Cloud Platform
Topic/VercelVercel platform
Topic/NetlifyNetlify platform

Domains

TagDescription
Topic/GISGeographic Information Systems
Topic/DatabaseDatabase design and management
Topic/CloudCloud computing general
Topic/DevOpsDevOps practices
Topic/AIArtificial Intelligence/ML
Topic/WebWeb development general
Topic/APIAPI design and integration
Topic/SecuritySecurity practices
Topic/TestingTesting and QA

Business

TagDescription
Topic/BusinessBusiness operations
Topic/FinanceFinance and accounting
Topic/LegalLegal matters
Topic/MarketingMarketing and outreach
Topic/StrategyBusiness strategy

Meta

TagDescription
Topic/PKMPersonal Knowledge Management
Topic/ObsidianObsidian-specific
Topic/MetaAbout the vault itself
Topic/ProductivityProductivity methods

Usage Examples

Code Snippet

tags:
  - Status/Complete
  - Type/Code
  - Topic/R
  - Topic/Shiny

Definition with Acronym

tags:
  - Status/Complete
  - Type/Definition
  - Type/Acronym
  - Topic/GIS

MOC

tags:
  - Status/Ongoing
  - Type/MOC
  - Topic/R

Daily Note

tags:
  - Status/Complete
  - Type/Daily

Dataview Queries

Find all R code snippets

Find all WIP notes

Find notes by combined topics

Adding New Tags

When adding new tags:

  1. Add to the appropriate category in this document
  2. Use singular form (Topic/Database not Topic/Databases)
  3. Use PascalCase for multi-word tags (Topic/DevOps)
  4. Prefer existing tags over creating new ones
  5. Keep Topic tags flat - don’t nest

Appendix

Created: 2024-12-20 | Modified: 2024-12-20