Status of this draft
Draft 0.1 describes OAE as its own standard, with a path from EPUB, and proposes two parts, at different stages:
- Part A, Rights and permissions, is a proposal for discussion. The data model is new and has no implementations yet. Its examples are fictional.
- Part B, Versioning and version check, records a model already in use. The A&A AI SafeStep™ guidebooks publish their frozen versions, latest redirect and version-check record this way, and those are the source of every Part B example.
Points not yet settled are collected under Open questions.
Terms
- Rights holder: a person or organization that holds rights in a work, such as an author, an estate or a publisher, or an agent acting for them.
- Use: a specific thing done with a work’s content, such as AI questions and answers, a summary or a translation.
- Grant: one rights holder’s (or several rights holders’) specific permission for one use, with its scope, territory, term and attribution.
- Permissions record: a public JSON document listing an edition’s grants.
- Reading system: any app, device, website or service that presents an edition to a reader.
- Adaptive edition: an edition that publishes a permissions record and is issued in numbered versions, each kept at a permanent address with a version-check record.
- Key: the short, stable identifier for an edition, for example
ollama. - Content version, format version, verification date: see B5.
From EPUB to OAE
OAE is its own standard. It carries forward many features familiar from the latest EPUB 3.x, adds new capabilities for AI-enabled and immersive experiences, and aims to offer a clean path from EPUB to OAE.
EPUB® 3 is a W3C standard, developed and maintained by the W3C Publishing Maintenance Working Group. OAE is an independent organization in formation. It is not affiliated with W3C, and nothing on this site implies W3C endorsement.
Current EPUB 3.x status
As listed on W3C’s publication history pages, checked 8 October 2026.
| Specification | W3C status |
|---|---|
| EPUB 3.3 | W3C Recommendation (latest publication 13 January 2026) |
| EPUB Reading Systems 3.3 | W3C Recommendation (17 October 2024) |
| EPUB Accessibility 1.1 | W3C Recommendation (17 October 2024) |
| EPUB 3.4 | Work in progress: Candidate Recommendation Draft (2 October 2026) |
| EPUB Reading Systems 3.4 | Work in progress: Candidate Recommendation Draft (21 July 2026) |
| EPUB Accessibility 1.2 | Work in progress: Candidate Recommendation Draft (12 September 2026) |
Familiar features OAE carries forward
- Packaging: a single-file container, as in EPUB’s Open Container Format (OCF).
- Metadata: a package document with identifiers, titles, creators, a manifest of resources and a reading order.
- Content: XHTML (and SVG) content styled with CSS.
- Media overlays: text synchronized with prerecorded narration.
- Accessibility metadata, in the spirit of EPUB Accessibility.
- Reflowable and fixed layouts.
A clean migration path Proposed
- An existing EPUB 3 publication maps into an OAE edition: its container, package metadata, content documents, media overlays and accessibility metadata carry across.
- The publisher adds the rights-holder permissions record, listing each use the rights holders have specifically permitted.
- The publisher adds the version record, so the edition has frozen versions, a latest pointer and a version check.
- The publisher adds any new capability layers, each enabled only where a grant allows it.
Exactly which EPUB features map unchanged, and how an OAE edition is identified, are open questions.
New capabilities OAE adds
- Content that adapts to the reader: reading level, language, format and voice, accessibility needs, interactive and immersive layers, and AI help (Adapts to the reader).
- Machine-readable rights-holder permissions for AI and immersive uses (Part A).
- Version and verification records, with a QR version check for printed copies (Part B).
- Provenance and attribution through every version: who created, who authorized, and what changed.
- Permissioned AI interaction layers: questions and answers, summaries, translation and voice, each enabled only when a grant allows it.
- Immersive and interactive experience components, governed by the same permissions.
Adapts to the reader
An adaptive edition is content that truly adapts to the reader. The same work can meet each reader where they are, and rights-holder permissions are what unlock each adaptation: new use models and added value for readers, and new value for rights holders.
Each adaptation is enabled only when the permissions record allows it. A reading system checks for a matching grant (A5) before it adapts anything, and leaves the adaptation off if none is found.
| Adaptation | What changes for the reader | Permission it needs (A3) |
|---|---|---|
| Reading level | The same work, presented at the reading level that suits the reader. | reading_level |
| Language | The work in the reader’s language. | translation |
| Format and voice | Read, listen, or both, in a voice the rights holder has approved. | audio_voice |
| Accessibility needs | Adaptations for differences in vision, hearing, cognition and mobility. | accessibility_adaptation |
| Interactive and immersive layers | Exercises, guided activities, scenes and worlds built from the work. | interactive, immersive |
| Permissioned AI help | Questions and answers, explanations and summaries grounded in the text. | ai_qa, summary |
Proposed, for discussion. How a reader chooses an adaptation, and how a reading system shows which adaptations are permitted for a given edition, are open questions.
Part A
Rights and permissions
Discussion-draft data model. Fictional examples. No implementations yet.
A1. Purpose
Part A gives rights holders one open, machine-readable way to say which uses of their work they have permitted, and gives reading systems one way to check before they act.
- Permission first. Every use requires specific, explicit permission from the rights holders and owners. A use that is not granted is not permitted.
- One use, one grant. Permission for one use never implies permission for another. Summaries do not imply translation; questions and answers do not imply model training.
- Supporting copyright. The record describes permissions that rights holders have given. It never creates a right to use a work.
- Visible to readers. A reader can see who authorized an experience.
A2. The permissions record
Each adaptive edition SHOULD publish a permissions record, proposed at /permissions/<key>.json, served without caching (Cache-Control: no-store) so that a change or withdrawal takes effect at the next check.
A fictional example, for discussion only:
{
"oae_draft": "0.1",
"edition": {
"key": "example-title",
"title": "Example Title",
"content_version": "v2-0"
},
"rights_holders": [
{ "id": "rh-author", "name": "A. N. Author", "role": "author" },
{ "id": "rh-publisher", "name": "Example Press", "role": "publisher" }
],
"default": "deny",
"grants": [
{
"id": "g-001",
"use": "ai_qa",
"granted_by": ["rh-author", "rh-publisher"],
"scope": { "source": "full_text", "answers_must_cite": true,
"max_quote_words": 50 },
"territory": ["US", "CA"],
"term": { "start": "2026-11-01", "end": "2027-10-31" },
"attribution": "Answers drawn from Example Title by A. N. Author (Example Press).",
"status": "active"
},
{
"id": "g-002",
"use": "translation",
"granted_by": ["rh-publisher"],
"scope": { "languages": ["es", "fr"],
"method": "machine_with_human_review" },
"territory": ["WORLD"],
"term": { "start": "2026-11-01", "end": "2028-10-31" },
"attribution": "Translated with the permission of Example Press.",
"status": "active"
}
],
"not_granted": ["ai_training", "audio_voice", "immersive"],
"issued": "2026-10-08",
"contact": "permissions@example.org"
}defaultMUST be"deny". Anything not granted is not permitted.rights_holdersnames every party whose permission the record reflects.grantslists each permitted use separately (see A4).not_grantedis informative: it lets a rights holder state a refusal explicitly. Leaving a use out has the same effect.
A3. Uses
Draft 0.1 proposes this starting vocabulary. Each value in use names exactly one kind of use.
| use | Meaning | Typical scope details |
|---|---|---|
ai_qa | AI questions and answers over the text | Sources (full text or parts), whether answers must cite the passage, longest quotation allowed |
summary | Summaries | Length, level (chapter or whole work), whether summaries may be shown outside the reading system |
reading_level | Reading-level adaptation | Target levels or audiences, whether wording may be simplified or only supported (glossaries, notes) |
accessibility_adaptation | Accessibility adaptations | Which adaptations (e.g. described images, simplified layout, sign-language or easy-read versions) and for whom |
translation | Translation | Languages, method (human, machine, machine with human review), whether the translation may be stored |
audio_voice | Audio and voice | Human narration or synthetic voice, which voice, whether a named person's voice may be imitated |
interactive | Interactive features | Which features (e.g. quizzes, annotations, guided exercises) and on which parts of the work |
immersive | Immersive features | Which experiences (e.g. illustrated scenes, spatial or game-like settings), characters and settings covered |
excerpt | Excerpts | Longest excerpt, how many per reader, where excerpts may appear |
ai_training | Use of the text to train AI models | Listed so it can be granted or refused explicitly; never implied by any other grant |
A4. Grant fields
| Field | What it says |
|---|---|
id | Stable identifier for the grant, so a reading system can log which grant it relied on. |
use | One value from the uses vocabulary (A3). |
granted_by | The rights holder or holders who gave this permission, by id. |
scope | What exactly is allowed within the use: which parts of the work, limits on length or quotation, languages, voices, features. |
territory | Where the use is allowed, as country codes, or WORLD. |
term | When the use is allowed: a start date and an end date. |
attribution | The credit a reading system MUST show to the reader whenever the use is presented. |
status | active or withdrawn. |
A5. Checking before enabling
Before a reading system turns on any feature that uses an edition’s content, it MUST:
- Identify the edition by its key and content version.
- Fetch the edition’s current permissions record.
- Find a grant whose
usematches the feature, whosestatusisactive, whosetermincludes today, whoseterritoryincludes the reader’s location, and whosescopecovers what the feature will do. - If such a grant exists, enable the feature only within that scope, and show the grant’s
attribution. - If no grant matches, leave the feature off.
Fail closed. A missing record, an unreachable record, an unknown use, an expired term or a scope that does not clearly cover the feature all mean the same thing: the feature stays off.
A reading system SHOULD re-check at the start of each reading session and whenever the content version changes, and SHOULD let the reader see which grant an experience relies on.
A6. Change, revocation and provenance
- When a grant ends or is withdrawn, its status changes to
withdrawnor it is removed; reading systems disable the feature at their next check. - Changes to the permissions record SHOULD be dated and logged, in the same spirit as the change logs in B6.
- Readers and reading systems need to know the record was published by, or for, the rights holders it names. How that is verified is an open question.
A7. What this draft is not
A permissions record is a public statement of what rights holders have permitted. It is not a contract, a license or a legal opinion, and it does not replace the agreements between rights holders and the people they work with. Nothing in this draft is legal advice, and how it relates to the law in any particular country is a matter for those parties and their advisers.
Part B
Versioning and version check
Records the model already used by the A&A AI SafeStep™ guidebooks. For a reader-facing example of a living, versioned edition, see the Analects Editions example and the A&A AI SafeStep™ HuggingChat example.
B1. Frozen versions
Every content version of an edition is published at its own address, and a published address is never rewritten.
- Each content version MUST have a distinct address that includes the key and the version slug, e.g.
/ll/ollama/v1-2/. - Once published, the content at that address MUST NOT change. Printed copies, citations and catalog records depend on it.
- A new content version MUST be published at a new address. The previous version SHOULD remain available at its own.
- Frozen addresses SHOULD be served with long-lived, immutable caching.
The SafeStep guidebooks mark their frozen paths immutable:
{
"source": "/:section(ll|followalong)/(.*)/v1-2/(.*)",
"headers": [{ "key": "Cache-Control",
"value": "public, max-age=31536000, immutable" }]
}Version slugs use a hyphen (v1-2) in addresses and a point (“Version 1.2”) in print.
B2. The latest pointer
Each edition MUST offer one address that always leads to its current version: /<path>/<key>/latest.
- The latest pointer MUST be a temporary redirect, never a permanent one, because its target moves with each new version.
- Moving the pointer to a new version SHOULD be a one-line change; it never alters any frozen page.
{ "source": "/ll/:key/latest{/}?",
"destination": "/ll/:key/v1-2/",
"permanent": false }B3. The version-check record
Each edition MUST publish a version-check record at /version-check/<key>.json, and a human-readable page for the same record at /version-check/<key>. Both MUST NOT be cached (Cache-Control: no-store): their only job is to be current.
This is the live record for the SafeStep Ollama guidebook, unchanged:
{
"key": "ollama",
"title": "AI SafeStep: Ollama",
"series": "A&A Lifelong Learner Series",
"catalog_code": "AA-HT-LL-OLL",
"current_version": "v1-2",
"format_version": "format-3",
"labels_verified": "2026-09-20",
"current_url": "/ll/ollama/latest",
"versioned_url": "/ll/ollama/v1-2/",
"follow_along_url": "/followalong/ll/ollama/v1-2/",
"changes_since_previous": [
"AI SafeStep checkpoint restyled: green header strip only, body set for plain reading",
"Image captions carry the full https address, centred in a one-line strip",
"Screen callouts replaced by lettered SafeStep marker tags placed beside their target"
],
"is_out_of_date": false
}You can read it as a page or as JSON.
Fields
Field names are taken from the live record. The required/optional column is a Draft 0.1 proposal.
| Field | Meaning | Example | Draft status |
|---|---|---|---|
key | Short, stable identifier for the edition. Appears in every address for the edition. | ollama | Required |
title | Human-readable title of the edition. | AI SafeStep: Ollama | Required |
series | The series the edition belongs to, if any. | A&A Lifelong Learner Series | Optional |
catalog_code | The publisher's catalog or citation code. | AA-HT-LL-OLL | Optional |
current_version | Slug of the current content version. Matches the frozen address. | v1-2 | Required |
format_version | Generation of the layout or rendering, independent of content. | format-3 | Required |
labels_verified | ISO 8601 date on which a person last checked the edition's details against their sources. | 2026-09-20 | Required |
current_url | The latest pointer for this edition. | /ll/ollama/latest | Required |
versioned_url | The frozen address of the current content version. | /ll/ollama/v1-2/ | Required |
follow_along_url | Frozen address of a companion resource for the same version. | /followalong/ll/ollama/v1-2/ | Optional |
changes_since_previous | Plain-language list of what changed since the previous version. | 3 entries | Required |
is_out_of_date | true when the publisher knows the current version no longer matches what it describes. | false | Required |
Addresses in the record are relative (/ll/ollama/latest). Should records carry absolute addresses, so that the record and the edition can live on different hosts?
B4. QR linking
A printed edition carries a QR code so that a reader holding paper can reach the version check in one step.
- The QR code MUST encode the human-readable version-check address for the edition’s key, e.g.
https://openadaptiveeditions.org/version-check/ollama. - The same address MUST be printed in full beside the code, so a reader without a camera can type it.
- The printed page SHOULD state the edition’s version next to the code (“Guidebook version: Version 1.2 · September 2026”), so the reader can compare it with the answer.
- The version-check address MUST keep working for as long as printed copies are in circulation.
Today the QR code identifies the edition but not the printed version. Encoding the version as well (for example ?v=1-2) would let the page answer “you have v1.2” directly. This site already accepts that parameter as a trial.
B5. Content, format and verification layers
An adaptive edition reports three independent facts about itself:
| Layer | Field | What it tells the reader |
|---|---|---|
| Content version | current_version | What the edition says. A change mints a new frozen address. |
| Format version | format_version | How the edition is laid out and rendered by its generator. |
| Verification date | labels_verified | When a person last confirmed the details against their sources. |
The verification date is a promise, not a timestamp. In the words of the A&A Image and Caption Standard used by the SafeStep guidebooks: “on that date, a person opened that address and confirmed the picture matches.” A publisher MUST NOT advance the date without that check having happened.
If only the format changes, must a new content version (and address) be issued, or may a format update be published some other way without rewriting a frozen page?
B6. Change logs
- Each version-check record MUST list, in plain language, what changed since the previous version (
changes_since_previous). - Entries SHOULD be written for readers, not developers: what a person holding the old version would notice.
- References that printed copies rely on SHOULD stay stable across versions. The A&A Image and Caption Standard is an example: a replaced image keeps its number, and an added image takes the next free number (cited as “Image 7a”) rather than renumbering the rest.
The current Ollama record lists:
- AI SafeStep checkpoint restyled: green header strip only, body set for plain reading
- Image captions carry the full https address, centred in a one-line strip
- Screen callouts replaced by lettered SafeStep marker tags placed beside their target
Should the record also carry a full version history (every version, its date and its frozen address), not just the latest set of changes?
B7. Accessibility
- The human-readable version-check page MUST work as plain HTML without scripts, at phone widths, and with assistive technology.
- The page MUST answer in plain words first (“This is the current version”) before any technical detail.
- Status MUST NOT be conveyed by color alone.
- A printed QR code MUST be accompanied by its full address in text, and in digital editions by alternative text, e.g. “QR code linking to the version check page for this guidebook”.
- Images in an edition SHOULD carry alternative text describing what a reader would see, written for someone who cannot see the picture at all.
- Adaptive editions should accommodate differences in language, culture, reading and learning styles, and individual abilities, and build on existing accessibility work rather than replacing it.
Part C · Working draft
Title Information and Permissions Metadata
A title information page, like the copyright page of a printed book, that tells every reader, teacher, librarian and AI helper what they may do with the edition. Working draft for discussion. Example: AI SafeStep™: HuggingChat title information (JSON), which uses an example permissions profile for review.
C1. Fields
Every permission item carries one state: allowed, ask-first or not-allowed, a one-line plain explanation (explain) and a plain howToAsk line. Status MUST NOT be conveyed by color alone.
| Field | Meaning | Allowed values | Maps to |
|---|---|---|---|
versionCheckKey | The edition's version-check key (Part B). | Edition key | oae extension |
lastChecked | Date the edition was last checked against its sources. | ISO 8601 date | schema.org dateModified (related) |
profileStatus | Whether the permissions shown are final or an example for review. | final, example-for-review | oae extension |
ai.readAndAnswer | An AI assistant may read the edition to answer a reader's questions. | allowed, ask-first, not-allowed | ODRL use |
ai.summarize | An AI assistant may summarize the edition for a reader. | allowed, ask-first, not-allowed | ODRL derive |
ai.translate | Machine translation of the edition. | allowed, ask-first, not-allowed | ODRL translate |
ai.training | Use in training or fine-tuning AI models. | allowed, ask-first, not-allowed | TDMRep tdm-reservation; ODRL prohibition |
ai.localRetrieval | Search by a local or program helper to find the right page. | allowed, ask-first, not-allowed | ODRL index |
performance.classroom / .library / .livestream / .recording | Public performance and read-aloud in each setting. | allowed, ask-first, not-allowed | ODRL play, reproduce |
display.projection | Showing pages on a screen to an in-person group. | allowed, ask-first, not-allowed | ODRL display |
copies.handouts / .sell | Copies for a group, and paid copies. | allowed, ask-first, not-allowed | ODRL reproduce, sell |
adapt.excerpt / .modify | Quoting, and making a changed version. | allowed, ask-first, not-allowed | ODRL extract, modify |
attribution | The exact credit line to use. | Text | ODRL attribute duty |
accessibilityFeature | Accessibility features present in the edition. | schema.org values, e.g. largePrint, synthesizedSpeech | schema.org accessibilityFeature |
trainingEnvironments | Settings the edition suits. | home, library, senior center, classroom, workplace | schema.org audience (related) |
C2. Mapping to existing standards
- W3C ODRL Information Model 2.2 and ODRL Vocabulary:
allowedmaps to an ODRL permission,ask-firstto a permission with a consent duty, andnot-allowedto a prohibition. - W3C TDM Reservation Protocol (TDMRep): when
ai.trainingis notallowed, publishtdm-reservation: 1with atdm-policylink to the title information record. - schema.org:
licenseandusageInfolink to the title information page; accessibility uses accessibilityFeature,accessModeandaccessibilitySummaryfrom the W3C discoverability vocabulary. - ONIX for Books: the AI and copying states can be carried as usage constraints (usage type and usage status codelists) in trade metadata. The exact code mapping is an open question.
Open questions
Part A
- How a reading system verifies that a permissions record was published by, or for, the rights holders it names (signatures, a registry, or both).
- How to express that a use needs the permission of several rights holders, and which ones.
- The starting vocabulary of uses (A3) and how new uses are added.
- How scope details are expressed for each use, in a form both people and software can read.
- How a reading system determines the reader’s territory, and what it does when it cannot.
- Whether the permissions record and the version-check record should link to each other (for example a
permissions_urlfield). - Relationship to existing rights-expression work and other standards. TBD
Part B
- Relative or absolute addresses in the version-check record (B3).
- Encoding the printed version in the QR code (B4).
- How format-only updates are published without rewriting a frozen page (B5).
- Full version history in the record (B6).
- Required versus optional fields, and a formal schema (B3).
- How a key is registered and kept unique across publishers. TBD
- Which EPUB 3 features map unchanged into an OAE edition, and how an OAE edition is packaged and identified (see From EPUB to OAE).
- How Part B records relate to EPUB package metadata (see From EPUB to OAE).
Process
- The process by which this draft is reviewed and adopted. TBD