Tags + Properties
Classification on the block, not in the table next door.
- You tell a tag (cross-cutting classification) from a property (structured metadata) and pick the right one each time. ·· Success criterion: You sort 10 classification cases as tag or property with no errors.
- You replace a hand-kept status table with a query over block properties. ·· Success criterion: You deliver a query that fully reproduces an existing Excel list.
- You set a domain convention for keys and values. ·· Success criterion: You document, per domain, the allowed properties with their value ranges on a single page.
#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.
- Take an existing status table from your day-to-day — say a tracker.xlsx with columns for status, source and deadline. Move the classification onto the block in the source document: set status, source and deadline as a property on each statement, and add one cross-cutting tag for the view across domains. Then rebuild the table as a single query over every block with the same status.⏱ 5 min
💡 Take the column headers of the old table straight as your property keys — one column becomes one key, and the convention stands before you tag the first block.
Model answer: The status column becomes the property status, the source column becomes the source key, the deadline column becomes the deadline key — each on the block that carries the statement. The competitor reference becomes a flat cross-cutting tag such as competitor. The old table becomes a query over every block with status review, sorted by deadline; the result covers the old list and keeps itself the moment a block changes.
How do a tag and a property differ?
What replaces the hand-kept status table?
Why do you need a domain convention?
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 →