Content Structure
The main structural elements are Device , Package, Folder, File, and Block.
All of these elements are very similar in that they each are a container for:
- Segment of audio content: a group of files, a file, or a segment within a file
- Actions that occur at the beginning and end of the segment of audio content
- Actions that occur when buttons are pressed
- Child container elements.
Additionally each of these container elements can serve as a:
- Named navigation target,
- An arbitrary content class, such as “Chapter”, “Page”, etc…
| Container Element | Description | Additional Attributes | Child Containers |
|---|---|---|---|
| Device | Contains the default button event handlers. Only applies to the soft player. | Package | |
| Package | The root element for deployed sets of audio content. Also used to scope container ids and flags | Folder, File | |
| Folder | A grouping of files or child folders | - | Folder, File |
| File | A single audio file | Reference to file | Block |
| Block | A segment within an audio file. | Start offset and duration | Block |
At its simplest, containers just identify the files in a distribution package:
(1)More complex container structures support features like special break points, navigation targets, or context-specific button actions:
(2)Event Handlers
Each container may have event handlers to support interactivity and special features.
| Event Handler | Description | Occurance |
|---|---|---|
| OnStart | Actions to perform prior to playing the audio in a container. | 0..1 |
| OnFinish | Actions to perform after playing the audio in a container. | 0..1 |
| OnButton | Actions to perform when a button is pressed. | 0..n |
Each event handler will contain one or more ActionSet elements, which list the sequence of actions to peform. An event handler may contain multiple ActionSet elements with conditional tests to provide alternate responses to events using FlagTest elements.
Schema
The structure of the talking book content schema is summarized in the following diagram and an XML Schema





