Tags + Properties
Classification on the block, not in the table next door.
- 1Review the existing status table (Excel or Notion DB) and note its columns as the future properties.☐Checkpoint: Column list = future property keys.
- 2Set the allowed keys and values per domain (e.g. status:: offen|review|final) and version the convention on a single page.☐Checkpoint: A convention page with keys and allowed values exists.
- 3In the source document, set the property on the block for each statement (status::, quelle::, frist::); add tags for cross-cutting views (#wettbewerber).☐Checkpoint: Every relevant block carries its property.
- 4Rebuild the status table as a query — every block with status:: review, sorted by frist::.☐Checkpoint: The query result matches the old table.
- 5Archive the old Excel table as read-only — do not keep maintaining it. From now on the query is the view.☐Checkpoint: tracker.xlsx in `archiv/`, query bookmarked.
- 6Spot check: review five blocks to see whether the property value and the source text agree.☐Checkpoint: Consistency source ↔ view confirmed.
#wettbewerber, status:: review, quelle:: bloomberg — classification on the block that needs it. No table alongside.
- Classification time per report: −65%
- Table upkeep effort: −80%
- Data consistency source ↔ view: 100%
Why the Excel table becomes a second truth
In day-to-day due diligence, content and classification run apart — memos in Word, an Excel register with status, source and competitor sitting next to them. The moment a memo is updated, the register drifts. After 12 weeks you find 18 entries marked “review” whose source text has long since moved to “final”.
5 rules
- Tag = cross-cutting classification. `#wettbewerber`, `#risiko`, `#vendor` — flat, no hierarchy, for views across domains.
- Property = structured metadata. `status:: review`, `quelle:: bloomberg`, `frist:: 2026-06-30` — key–value, queryable, typed (quelle:: is the literal DSL key for “source”).
- Query = living view. One query over every block with `status:: review` replaces the hand-kept table. The result updates the moment a block changes.
- Properties on the page or on the block. A page property holds for the whole document (client, contract type). A block property holds for the statement (the source of a figure, the deadline on a paragraph).
- A convention per domain. Which keys and values are allowed is set and versioned per domain — not improvised per person.
## Competitor memo Acme
status:: review
quelle:: bloomberg
frist:: 2026-06-30
Q4 revenue came in at £142m #wettbewerberBefore and after — Excel list vs block with status:: review
| Before (Excel alongside) | After (property on the block) |
|---|---|
| Memo in Word, entry in tracker.xlsx row 47 | The block in the memo carries `status:: review` |
| Status change: open two files, save both | Status change: edit one value, the view updates |
| Audit question “state on 2026-04-12?” → reconcile the file history of two files | Audit question “state on 2026-04-12?” → one version trail, one block |
| Consistency source ↔ view: checkable only by sampling | Consistency source ↔ view: 100% by definition |
The table does not disappear — it becomes a query. Anyone who wants to see “every block with status:: review and frist:: < 2026-07-01” writes the query once and reads it fresh each day.
An honest question
How often do you keep content and its table separately? Count, over this week, the cases where you changed the same information in two places — once in the document, once in the register.
Classification that keeps itself.
Attach the meaning to the block, not to the table next door. Your second brain holds status and source where the statement sits — a companion, not a second set of books.
Reserve your slot··free →