Dataset documentation
Exam-prep toolkit: schema 1.0.0
How to read the files under /data/exam-prep-toolkit. The JSON Schema is the contract the build enforces; the CSV tables are projections of the same approved records.
Not legal advice. The toolkit supports preparation; it is not an examination, an official request list or a guarantee of results. Nothing a user types into the tracker is part of this dataset.
Human page: /resources/exam-prep-toolkit. Not yet released.
Files
Conventions
- Dates
- ISO YYYY-MM-DD. A checked date is the day a person opened the source; it is never a fetch or build time. Legal dates keep their stated meaning.
- Amounts
- Decimal text in the source currency, never floating point, never converted. An absent amount is null (empty in CSV), never 0.
- Unknowns
- Every fee, timeline, amount and fact carries a status. "Unknown: not verified" means nobody has checked; "Not published" means an official check found nothing published; "Not applicable" needs affirmative official evidence.
- Ids
- Lowercase slugs that never change once published. Display names may change; ids do not. Withdrawn records keep their id and address.
- Sources
- Exact official HTTPS URLs on an allowlisted host, with a locator and the supporting passage. A URL alone is not verification.
- Review
- Public files carry review status, date and a content hash; the reviewer is recorded privately, never published.
- CSV
- RFC 4180, UTF-8, CRLF, header row. Multi-valued fields are joined with " | " and bracket their source ids. A cell that a spreadsheet could read as a formula (leading =, +, -, @, |, %, tab) is prefixed with an apostrophe on export; pure numbers are not. The apostrophe is an export guard, not part of the value.
- Caching
- v1 files are mutable and served with a short public cache (five minutes) and revalidation; a correction replaces page, JSON and CSV in one build.
- Reuse
- Undecided while draft; no licence is implied. Underlying official documents keep their own rights.
- Note
- Practice questions are Taft-authored and carry the label "Taft practice question: not an official regulator question." in every record.
- Note
- Deadline entries quote the published period or date with conditions; no due date is computed. Proposals are never active deadlines.
Blank tracker template (v1-tracker-template.csv)
| Column | Meaning |
|---|---|
requestId | Request ID. Text, up to 40 characters. Your own reference for the request item, for example the item number from the request letter. |
requestDescription | Request description. Text, up to 400 characters. What was asked for, in your own words. |
topic | Topic. Text, up to 80 characters. A short label such as compliance program, marketing, custody or books and records. |
owner | Owner. Text, up to 80 characters. Who gathers the item. |
requestedDate | Requested date. Date, YYYY-MM-DD. The date the request reached you. |
requestedByDate | Requested-by date (from your actual request). Date, YYYY-MM-DD. The date stated in the request you received. The tool does not compute due dates. |
status | Status. One of the template statuses. A workflow label for your own tracking, never a regulatory outcome. |
internalReference | Internal reference. Text, up to 80 characters. Where the item lives in your own systems. |
reviewOwner | Response review owner. Text, up to 80 characters. Who checks the item before it goes out. |
submittedDate | Submission date. Date, YYYY-MM-DD. The date you sent the item. |
notes | Notes. Text, up to 1000 characters. Open questions, partial productions or follow-ups. |
Practice questions table (v1-questions.csv)
| Column | Meaning |
|---|---|
id | Stable question id. Detail page: /resources/exam-prep-toolkit/questions/<id>. |
topic | As named. |
audiences | Joined with " | ". |
regulator | As named. |
jurisdiction | As named. |
evidence_category | As named. |
prompt | The original Taft-authored practice prompt. |
non_official_label | Always present: Taft practice question: not an official regulator question. |
relevance | Why the topic is relevant, with the official sources in brackets. |
evidence_cues | Suggested, not mandatory. Joined with " | ", sources in brackets. |
follow_ups | Joined with " | ". |
applicability | As named. |
exclusions | As named. |
source_ids | Joined with " | ". |
source_urls | Same order. |
last_checked | YYYY-MM-DD, the date a person last checked the sources. |
review_status | unreviewed, in-review or approved. |
review_approved_at | As named. |
revision_hash | As named. |
Deadline references table (v1-deadlines.csv)
| Column | Meaning |
|---|---|
id | Stable id. Detail page: /resources/exam-prep-toolkit/deadlines/<id>. |
obligation_title | As named. |
regulator | As named. |
jurisdiction | As named. |
audiences | Joined with " | ". |
obligation_category | As named. |
legal_status | binding-rule, staff-guidance or proposal. |
instrument_citation | As named. |
applicability | Sourced; sources in brackets. |
exclusions | Joined with " | ". |
deadline_type | fixed, recurring or event-relative. |
official_text | The published period or date, quoted. |
fixed_date | Only for fixed deadlines. |
recurrence_text | Only for recurring deadlines. |
trigger_text | Only for event-relative deadlines. |
period_value | Integer, only if officially stated. |
period_unit | As named. |
business_or_calendar | As named. |
effective_from | As named. |
effective_to | As named. |
conditions | Joined with " | ". |
status | active, unknown, superseded or withdrawn. Only active entries sort by date. |
source_ids | As named. |
source_urls | As named. |
locators | Section or page per source, same order. |
last_checked | As named. |
review_status | As named. |
review_approved_at | As named. |
revision_hash | As named. |