4.1 · The model: behavior is files
From the Role-Based Access chapter of Build Your Ontology, End to End: the ontology is files, and the behavioral context is also files — abehaviors/ folder where each persona is a directory with an org_context.md:
| Section | Answers |
|---|---|
| 1 · Allowed data surfaces | Which query surfaces and tables may this role use? |
| 2 · Clarification behavior | When the question is ambiguous, what does Ana do? |
| 3 · Response style | SQL visibility, tone, level of detail |
| 4 · Hard limits | What must Ana decline — and how? |
4.2 · Persona one: the restricted business persona
A [program manager in care management / clinical operations] — domain-scoped, non-technical, in a setting where seeing the wrong data is a compliance event, not an inconvenience:4.3 · Persona two: the analyst
Same organization, same ontology — opposite contract:4.4 · Author them for real
Create the two folders and files in your context/ontology repo (in-app editor or git, per your setup — Methods in the Build Your Ontology workshop), adapting the brackets to your domains. Then submit both as patches for review — persona files are role-layer context; they take the governed path, always.Prompt
You’ll see: Two pending patches in Reviews — the personas exist only after approval, like any role-layer change.
- Write limits as behavior, not policy. “Decline and redirect to [channel]” is executable; “users should not access restricted data” is a poster.- The persona file is the contract, not the enforcement — data-level enforcement (RLS, connector scope) lives below it (Module 6.3). Author the file assuming both layers exist.

A persona is a readable, reviewable file.
4.4 · Give every persona file a routing header
Beyond the four behavior sections, open each persona file with a short routing header so future chats (and new admins) can find and use it:Prompt
✅ Checkpoint
- Both persona files exist with all four sections, submitted as reviewed patches
- The restricted persona’s clarification menu draws only from its allowlist
- Its hard-limits section declines with a redirect and without enumerating what’s hidden
- The analyst persona flags ad-hoc work and never treats breadth as an access bypass
- Each persona file opens with a routing header (search terms · audience · start-with links · what it does NOT do)