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 separateTopic/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
- Flat over nested - Avoid deep nesting like
Topic/Dev/Lang/R/Framework/Shiny - Combinable - Use multiple flat tags:
#Topic/R+#Topic/Shiny - Consistent - Every note gets Status + Type + Topic tags
- 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/MetaNotice 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:
| Order | Tag | Description | Use When |
|---|---|---|---|
| 0 | Status/Ongoing | Continuously updated | READMEs, MOCs, living documents |
| 1 | Status/WIP | Work in progress | Notes in progress or needing further development or processing |
| 2 | Status/Draft | Initial state | First pass, needs refinement |
| 3 | Status/Complete | Finished, polished | Note is reviewed and done |
Type Tags
Classification of the note. Should match the file prefix.
| Tag | File Prefix | Description |
|---|---|---|
Type/MOC | MOC - | Map of Content, navigation index |
Type/Code | Code - | Code snippet or example |
Type/Definition | Definition - | Term definition |
Type/Acronym | (with Definition) | Acronym definition |
Type/List | List - | Curated list with links |
Type/Guide | Guide - | Step-by-step how-to |
Type/Checklist | Checklist - | Actionable checklist |
Type/Quote | Quote - | Quotation |
Type/Readme | index | Folder index |
Type/Note | (none) | Generic slipbox note |
Type/Daily | YYYY-MM-DD | Daily 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
| Tag | Description |
|---|---|
Topic/R | R programming language |
Topic/Python | Python programming |
Topic/PowerShell | PowerShell scripting |
Topic/SQL | SQL and databases |
Topic/JavaScript | JavaScript |
Topic/TypeScript | TypeScript |
Topic/Bash | Bash/shell scripting |
Topic/CSS | CSS styling |
Topic/HTML | HTML markup |
Topic/Go | Golang |
Topic/Rust | Rust programming |
Frameworks and Libraries
| Tag | Description |
|---|---|
Topic/Shiny | R Shiny framework |
Topic/React | React framework |
Topic/Node | Node.js ecosystem |
Topic/Plumber | R Plumber API framework |
Topic/FastAPI | Python FastAPI |
Topic/Django | Python Django |
Platforms and Tools
| Tag | Description |
|---|---|
Topic/Docker | Docker containerization |
Topic/Git | Git version control |
Topic/GitHub | GitHub platform |
Topic/AWS | Amazon Web Services |
Topic/Azure | Microsoft Azure |
Topic/GCP | Google Cloud Platform |
Topic/Vercel | Vercel platform |
Topic/Netlify | Netlify platform |
Domains
| Tag | Description |
|---|---|
Topic/GIS | Geographic Information Systems |
Topic/Database | Database design and management |
Topic/Cloud | Cloud computing general |
Topic/DevOps | DevOps practices |
Topic/AI | Artificial Intelligence/ML |
Topic/Web | Web development general |
Topic/API | API design and integration |
Topic/Security | Security practices |
Topic/Testing | Testing and QA |
Business
| Tag | Description |
|---|---|
Topic/Business | Business operations |
Topic/Finance | Finance and accounting |
Topic/Legal | Legal matters |
Topic/Marketing | Marketing and outreach |
Topic/Strategy | Business strategy |
Meta
| Tag | Description |
|---|---|
Topic/PKM | Personal Knowledge Management |
Topic/Obsidian | Obsidian-specific |
Topic/Meta | About the vault itself |
Topic/Productivity | Productivity methods |
Usage Examples
Code Snippet
tags:
- Status/Complete
- Type/Code
- Topic/R
- Topic/ShinyDefinition with Acronym
tags:
- Status/Complete
- Type/Definition
- Type/Acronym
- Topic/GISMOC
tags:
- Status/Ongoing
- Type/MOC
- Topic/RDaily Note
tags:
- Status/Complete
- Type/DailyDataview Queries
Find all R code snippets
Find all WIP notes
Find notes by combined topics
Adding New Tags
When adding new tags:
- Add to the appropriate category in this document
- Use singular form (
Topic/DatabasenotTopic/Databases) - Use PascalCase for multi-word tags (
Topic/DevOps) - Prefer existing tags over creating new ones
- Keep Topic tags flat - don’t nest
Related Notes
Appendix
Created: 2024-12-20 | Modified: 2024-12-20