标签系统设计
本文档记录知识库标签系统的设计决策。后续 AI 阅读本文档后可完整了解标签结构、含义及使用方式,无需重复提问。
设计背景
- 设计时间:2026-04-18
- 知识库用途:学习为主(IT技术、英语),个人管理(日记、计划、复盘)为辅
- 标签功能定位:快速检索 + Graph 图谱可视化
- 命名风格:中英混合(领域英文 + 状态中文)
标签结构
一、笔记类型(中文)
用于区分笔记的基本属性和用途。
| 标签 | 含义 | 使用场景 |
|---|---|---|
#日记 | 每日记录、自由书写、感想心情 | next-level-door/每日记录/ 下的笔记 |
#学习 | IT 技术、英语等主动学习的内容 | IT-learning/ 下的技术学习笔记 |
#项目 | 有明确目标、周期性推进的工作 | next-level-door/项目笔记/ |
#灵感 | 突然想到的想法、创意点子 | next-level-door/灵感与想法/ |
#计划 | 目标设定、任务拆分 | next-level-door/计划与复盘/学习计划.md |
#复盘 | 回顾总结、经验沉淀 | 阶段性总结、季度复盘 |
#知识总结 | 系统化整理的知识体系 | next-level-door/知识总结/ |
二、状态(中文)
用于标记笔记或项目的生命周期状态。
| 标签 | 含义 | 使用场景 |
|---|---|---|
#状态/进行中 | 正在进行的项目或学习 | 项目刚启动、学习笔记持续更新 |
#状态/已完结 | 已完成的项目或学习阶段 | 项目交付、某个学习周期结束 |
#状态/已归档 | 长期搁置或历史笔记 | 过期的项目、旧的日记 |
三、技术领域(英文)
用于标记具体的技术栈或学习科目。
| 标签 | 含义 | 使用场景 |
|---|---|---|
#java | Java 语言相关 | 学习 java-grammar、java-advanced 时使用 |
#python | Python 语言相关 | 未来学 Python 时使用 |
#english | 英语学习相关 | 背单词、语法、听力练习 |
#obsidian | Obsidian 使用技巧 | 插件配置、模板优化、工作流 |
#gnumake | GNU Make 构建工具 | IT-learning/GNUMake/ 下使用 |
Frontmatter 格式
每篇笔记应在顶部包含以下 frontmatter:
---
tags: [笔记类型, 技术领域, 状态]
aliases: [别名]
---
# 笔记标题
正文内容...示例
每日日记
---
tags: [日记, 状态/进行中]
aliases: [2026-04-18日志]
---
# 2026-04-18
今天完成了...Java 学习笔记
---
tags: [学习, java, 状态/进行中]
aliases: [Java泛型学习]
---
# 泛型学习笔记
[java-grammar](../../IT-learning/java-grammar.md) 的泛型部分已复习完成。技术学习(英语)
---
tags: [学习, english, 状态/进行中]
---
# English Daily Practice
今日学习内容...使用规则
必填项
- 每篇笔记 至少需要一个
#笔记类型标签 - 技术学习类笔记 必须带技术领域标签(如
#java#english)
选填项
- 状态标签根据笔记当前状态添加
aliases用于定义简短别名,方便快速检索
标签数量建议
- 最小化原则:一个笔记不超过 4 个标签
- 优先使用
#笔记类型 + 技术领域的二元组合
标签扩展规则
- 笔记类型和状态标签为固定分类,不随意新增
- 技术领域标签可扩展:遇到新的技术领域时,按以下规则添加:
- 命名必须为英文小写(如
network、devtools) - 在本文档「技术领域」表格中登记,注明含义和使用场景
- 已登记的领域标签:java, python, english, obsidian, gnumake, network, devtools
- 命名必须为英文小写(如
后续优势
1. 快速筛选
在 Obsidian 搜索栏输入 #java → 瞬间列出所有 Java 相关笔记,无需记住文件名。
2. Graph 图谱清晰
同一标签的笔记自动聚集成簇,能直观看出:
- 你在哪个技术领域投入最多
- 哪些领域的笔记之间缺乏连接(提示需要加强关联)
- 学习路径是否有断点
3. 迁移有据可查
如果未来换工具(Logseq、Notion),标签结构可以完整迁移,不丢失知识分类。
4. 模板自动化
Templater 模板预设 tags,新建笔记时自动填入,养成打标签习惯。
5. Dataview 扩展(可选)
后续可创建「仪表盘」笔记,使用 Dataview 查询:
TABLE tags, file.ctime
FROM ""
WHERE contains(tags, "状态/进行中")
SORT file.ctime DESC自动统计所有正在进行中的笔记。
设计决策记录
| 日期 | 决策内容 | 原因 |
|---|---|---|
| 2026-04-18 | 确定中英混合命名风格 | 领域术语用英文更通用,状态用中文更直观 |
| 2026-04-18 | 状态标签用斜杠分隔 | #状态/进行中 格式便于 Graph 中形成子节点 |
| 2026-04-18 | 每篇笔记至少一个笔记类型标签 | 保证所有笔记都能被分类检索 |
| 2026-04-18 | 技术领域标签全部小写英文 | 便于跨工具迁移,保持一致性 |
| 2026-05-09 | 技术领域标签允许扩展,新增时需登记 | 知识范围会随学习增长,固定列表无法覆盖新领域 |