Obsidian Bases
- title
- Obsidian Bases
- type
- concept
- summary
- Встроенные представления Obsidian по frontmatter: фильтры в YAML, формулы и таблицы. В этом vault'е работают как дашборд обслуживания
- parent
- obsidian
- tags
- obsidian, pkm, tooling
- created
- 2026-07-22
- updated
- 2026-07-22
- lang
- ru
- translation_of
- obsidian-bases
- source_updated
- 2026-07-22
- translated
- 2026-09-01
- translator
- lllm/antigravity/gemini-3.7-flash-medium
Bases - это штатный ответ Obsidian плагину Dataview: файл .base объявляет фильтры, вычисляемые формулы и именованные представления поверх frontmatter каждой заметки в vault'е, а Obsidian отрисовывает каждое представление как сортируемую таблицу. В отличие от Dataview, механизм встроен в приложение и не требует плагина, а язык запросов - это YAML, а не DSL. Поэтому файл .base может прочитать любой инструмент, умеющий разбирать YAML, включая то, что в итоге раздаёт vault как сайт.
Представление встраивается в заметку как любой другой блок: ![[wiki.base#Orphans (no inbound links)]].
Для чего это используется в этом vault'е
Файл wiki.base в корне vault'а ограничивается markdown-файлами в wiki/ или toolbox/ и задаёт для каждой заметки четыре формулы:
formulas:
age_days: (today() - file.ctime).days.round(0)
stale_days: (today() - file.mtime).days.round(0)
backlink_count: file.backlinks.length
link_count: file.links.length
На их основе построены пять представлений: All Pages, Orphans (no inbound links), Stale Pages, By Type и Recent. Корневой index.md встраивает четыре из них, благодаря чему главная страница становится дашбордом, а не просто оглавлением.
Набор используемых фильтров невелик: file.ext, file.inFolder(), file.name !=, file.backlinks.length == 0, а также groupBy, order, limit и агрегации Average. Из-за этой компактности спецификация сайта vault'а в meta/ считает интерпретатор Bases вполне подъёмной задачей: всё необходимое для этих пяти представлений уже вычисляется при обходе vault'а, так что подмножество можно реализовать заново, не воссоздавая весь Bases целиком.
Представление с сиротами никогда не работало
Представление Orphans (no inbound links) фильтрует по file.backlinks.length == 0 и ещё ни разу не вернуло ни одной строки. wiki/index.md ссылается на каждую wiki-страницу, кроме себя и журнала, поэтому у каждой страницы по построению есть как минимум одна обратная ссылка. Представление не сломано; просто сама метрика бессмысленна, пока учитываются страницы-каталоги.
Obsidian не позволяет исключить страницу из подсчёта обратных ссылок, поэтому в vault'е это наполовину исправили вручную: представление Stale Pages отфильтровывает file.name != "index" и file.name != "log", тогда как представление сирот этого не делает. В CLAUDE.md эти страницы теперь помечены как type: catalog и type: log, чтобы у потребителей с возможностью фильтрации (сайта или скрипта) был явный признак для отсева. Внутри самого Obsidian представление остаётся пустым.
Связанные заметки: obsidian, files-as-graph-database, llm-wiki-pattern.