forked from Qortal/q-blog
24 lines
1.0 KiB
Markdown
24 lines
1.0 KiB
Markdown
# Q-Blog — Glossary & Domain Canon
|
||
|
||
_Generated 2025-08-16 23:27Z_
|
||
|
||
**Name** — The account identity under which blogs are created.
|
||
**Blog** — A container for posts; owned by a Name; has **handle**, **title**, **visibility**.
|
||
**Handle** — Human-friendly unique identifier per Name (slug rules).
|
||
**Post** — Content item; belongs to exactly one Blog (immutable link).
|
||
**Role** — `owner | editor | author`; defines allowed operations.
|
||
**Membership** — Name ↔ Blog relationship with role.
|
||
**Revision** — Monotonically increasing number used for concurrency control.
|
||
**Invite** — Time-limited token that assigns a role on acceptance.
|
||
|
||
### Invariants
|
||
|
||
- A Post’s `blogId` does not change after creation.
|
||
- (`nameId`, `blogHandle`) is unique.
|
||
- All write operations require a role check (server-enforced).
|
||
|
||
### Identifier & URL Guidance
|
||
|
||
- Canonical blog URL: `/{nameHandle}/{blogHandle}/…` (conceptual).
|
||
- Slugs are normalized to lowercase, ASCII, hyphen-separated; collisions rejected with a helpful message.
|