EPUB for Education

Draft Specification 22 February 2016

NOTE

The EPUB Working Group is developing this profile through a series of iterative releases. This document represents the product of the sixth iteration of this development cycle.

This document was previously named the "EPUB 3 EDUPUB Profile".

This version:

http://www.idpf.org/epub/profiles/edu/spec/education-20160222.html

Latest version:

http://www.idpf.org/epub/profiles/edu/spec/

Previous version:

http://www.idpf.org/epub/profiles/edu/spec/edupub-20160211.html

Copyright © 2014-2016 International Digital Publishing Forum™

All rights reserved. This work is protected under Title 17 of the United States Code. Reproduction and dissemination of this work with changes is prohibited except with the written permission of the International Digital Publishing Forum (IDPF).

EPUB® is a registered trademark of the International Digital Publishing Forum.

Editors

David Stroup, Pearson

Markus Gylling, International Digital Publishing Forum (IDPF)

Matt Garrish, Invited Expert

Yonah Levenson Hirschman, Pearson

Tzviya Siegman, Wiley

John Tibbetts, IMS Global

Rick Johnson, VitalSource

Nick Brown, VitalSource

Status of this Document

This document is an Draft Specification, produced by the IDPF EPUB 3 Working Group, based on an initial member submission by Pearson in December, 2013.

Unlike traditional IDPF specifications, the development of this profile is anticipated to follow an agile model, with core features and functionality defined in the initial release and less critical features ‒ or features that require more time to properly detail and implement properly ‒ following later.

Functionality and features in the profile will continue to be evaluated over the duration of the development cycle and could be modified or deprecated based on real-world usage.

This document may be updated, replaced, or rendered obsolete by other documents at any time. Its contents do not necessarily reflect the consensus of the Working Group.

Open issues in this draft

See the latest working group teleconference minutes for a list of open issues.

This section will be removed when this document leaves draft status.

Table of Contents

1. Overview

1.1. Purpose and Scope

1.2. Terminology

1.3 Typographic Conventions

1.4. Conformance Statements

1.5 Relation to EPUB 3

2. Conformance

2.1 Content Conformance

2.2 Reading System Conformance

3. Education Document Models

3.1 Reflowable Publications

3.2 Fixed-Layout Publications

3.3 Multiple-Rendition Publications

3.4 Teacher's Editions and Guides

3.4.1 Introduction

3.4.2 Identification

3.4.2.1 Publication

3.4.2.2 Student Edition

3.4.3 Content

3.4.3.1 Structural Semantics

3.4.3.2 Styling

3.4.3.3 Audience

3.4.2.4 Student Content

4. Content Structure

4.1 Introduction

4.2 Sectioning

4.3 Titles and Headings

4.3.1 Titled Sections

4.3.2 Untitled Sections

4.3.3 Deep Nesting

4.3.4 Structured Components

4.4 Structural Semantics

4.5 Semantic Enrichment

4.6 Pagination

4.7 Images

5. Scriptable Components

6. IMS Learning Tools Interoperability® (LTI®) and Outcomes

6.1 Integration with IMS LTI

6.2 Conformance

6.2.1 Content Conformance

6.2.2 Reading System Conformance

6.2.3 Reading Eco-system Conformance

6.3 Outcomes

6.3.1 Introduction

6.3.2 Outcomes Reporting

6.3.3 JavaScript APIs

6.3.3.1 EPUB.Education.reportScores([scores], callback);

6.3.1.2 EPUB.Education.getScores([location IDs], callback);

6.4 LTI Links

6.4.1 EPUB.Education.ltiLaunch(tool_proxy_id, resource_type, resource_link_id, callback);

6.5 Authorization

6.5.1.1 At Reading System launch time

6.5.1.2 At reportScores invocation

6.5.1.3 At getScores invocation

6.5.1.4 At ltiLaunch event

6.6 Cross-system flows

Flow 1: Provisioning Learning Activities

Steps

Flow 2: Launching EPUB Publications

Description

Steps

Flow 3: Outcome Flow

Description

Steps

Flow 4: Embedded LTI Launch

Description

Alternative 1: Reading System hosts a Tool Consumer:

Steps

Alternative 2: Reader delegates back to the Tool Provider:

Definition

Preconditions

Flow

LTI Mapping Parameters

7. Navigation

7.1 Table of Contents

7.2 Brief Table of Contents

7.3 Content Lists

7.4 Page List

8. Publication Metadata

8.1 Profile Identification

8.2 Educational Metadata

8.2.1 Educational Properties

8.2.2 audience/audienceType

8.2.3 audience/educationalRole

8.2.4 educationalAlignment

8.2.5 educationalUse

8.2.6 interactivityType

8.2.7 isBasedOnUrl

8.2.8 learningResourceType

8.2.9 timeRequired

8.2.10 typicalAgeRange

8.3 Accessibility Metadata

9. Annotations

10. Distributable Educational Objects

10.1 Introduction

10.2 Identification

10.2.1 Distributable Object Type

10.2.2 Education Conformance

10.3 Embedded Objects

Appendix A. Sample CSS

Appendix B. Validation

Appendix C. Example Documents

Appendix D. Educational Metadata Properties

D.1 Recommended Vocabularies

D.1.1 educationalRole

D.1.2 alignmentType

D.1.3 educationalUse

D.1.4 typicalAgeRange

D.1.5 interactivityType

D.1.6 learningResourceType

Appendix E. Educational Metadata Mappings

E.1 IMS/Schema.org mapping

Appendix E. Acknowledgements and Contributors

References

Normative References

Informative References

1. Overview

1.1. Purpose and Scope

This section is informative

Digital content in education has the potential to significantly improve learning outcomes, as it can better support accessibility, adapt to individual learning modes, increase engagement and experiential learning through interactivity, provide immediate assessments and analytics, and increase social connectivity.

To this end, the EPUB for Education profile defined in this specification represents the effort to adapt the functionality of the EPUB® 3 format to the unique structural, semantic and behavioral requirements of educational publishing.

The profile builds on the EPUB 3 specification in the following ways:

1.2. Terminology

Refer to the EPUB Specifications for definitions of EPUB-specific terminology used in this document.

1.3 Typographic Conventions

The following typographic conventions are used in this specification:

markup

All markup (elements, attributes, properties), code (JavaScript, pseudo-code), machine processable values (string, characters, media types) and file names are in red-orange monospace font.

markup

Links to markup and code definitions are underlined and in red-orange monospace font. Only the first instance in each section is linked.

http://www.idpf.org/

URIs are in navy blue monospace font.

hyperlink

Hyperlinks are underlined and in blue.

[reference]

Normative and informative references are enclosed in square brackets.

Term

Terms defined in the Terminology are in capital case.

Informative markup examples are in monospace font.

NOTE

Informative notes are preceded by a "Note" header.

1.4. Conformance Statements

The keywords must, must not, required, shall, shall not, should, should not, recommended, may, and optional in this document are to be interpreted as described in [RFC2119].

All sections of this specification are normative except where identified by the informative status label "This section is informative". The application of informative status to sections and appendices applies to all child content and subsections they may contain.

All examples in this specification are informative.

1.5 Relation to EPUB 3

As a profile of EPUB 3, these guidelines build on the functionality defined in the following core specifications:

Unless explicitly overridden, this profile inherits all requirements defined in these specifications.

Education-compliant Publications are always valid EPUB 3 Publications, but, due to the additional production requirements detailed in this document, the reverse is not necessarily true.

2. Conformance

2.1 Content Conformance

In addition to meeting the requirements specified in EPUB Publications [Publications301], an EPUB Publication conformant with this profile must meet all of the following criteria:

2.2 Reading System Conformance

In addition to meeting the requirements specified in EPUB Publications [Publications301], an EPUB Reading System conformant with this profile must meet all of the following criteria:

NOTE

It is anticipated that support for multiple renditions and annotations will be elevated to a requirement once those specifications become Recommendations.

3. Education Document Models

3.1 Reflowable Publications

The primary focus of this version of the EPUB for Education profile is on the creation of reflowable XHTML-based EPUB Publications.

Reflowable Renditions of the content are typically more accessible than pre-paginated (fixed layout) Renditions, making the content more widely accessible to a broader range of students.

The semantics defined in this profile are also better suited to annotating markup structures that have not been artificially broken by page boundaries, and the requisite chunking of content into separate files that practice causes. Navigation is similarly simplified for users of assistive technologies when content structures are not broken apart by pagination.

The use of reflowable Renditions is therefore strongly recommended.

3.2 Fixed-Layout Publications

Although the creation of reflowable EPUB Publications is the preferred content model for the EPUB for Education profile, Authors MAY create Fixed-Layout Publications provided they are produced to be accessible to a wide audience.

This specification does not attempt to define accessibility for all users, but conformant Fixed-Layout Publications MUST meet all of the following criteria:

These requirements represent the minimum threshold to be conformant with this profile. They do not replace any local or national accessibility requirements an Author has to meet in order to sell and distribute their content for educational use.

Note that due to the paginated nature of fixed layouts, Fixed-Layout Publications are exempt from the requirements in 4. Content Structure.

3.3 Multiple-Rendition Publications

EPUB Publications that conform to this profile may contain more than one Rendition of the content, but each Rendition must conform to the requirements for reflowable or fixed-layout content defined in this specification.

When an EPUB Container includes more than one Rendition, it must conform to the requirements for multiple-Rendition EPUB Publications defined in [MultipleRenditions]. In addition to the Release Identifier, the metadata.xml file must include the dc:type identifier "education".

NOTE

Authors are encouraged to include a Rendition Mapping Document to allow Users to switch from one Rendition to another without losing their place (e.g., to simplify moving between fixed-layout and reflowable Renditions, or from a structured audio to text Rendition).

3.4 Teacher's Editions and Guides

3.4.1 Introduction

Teacher's editions and guides are important tools in educational instruction. Both provide guidance to the teacher, but a teacher's edition represents a superset of the work the students are using, while a teacher's guide typically provides general instruction and guidance on the curriculum (i.e., there is no student edition).

This section does not introduce special processing requirements for either. In particular, it is assumed that teacher and student editions are packaged separately, as EPUB ‒ and the Open Web Platform generally ‒ does not provide a means of reliably hiding content from different classes of Users.

3.4.2 Identification

3.4.2.1 Publication

A teacher's edition must be identified as such in the package metadata by including a dc:type element [Publications301] with the value "teacher-edition".

The following example shows an EPUB Publication identified as a teacher's edition.

<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">

<dc:type>teacher-edition</dc:type>

   …

</metadata>

A teacher's guide must be identified with the value "teacher-guide".

The following example shows an EPUB Publication identified as a teacher's guide.

<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">

   <dc:type>teacher-guide</dc:type>

   …

</metadata>

Teacher's guides and editions are also identified as compliant with the EPUB for Education profile as defined in 8.1 Profile Identification, so must conform to all requirements in this specification.

The following example shows both the edpub and a teacher's guide identifiers.

<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">

   <dc:type>teacher-guide</dc:type>

   <dc:type>education</dc:type>

   …

</metadata>

3.4.2.2 Student Edition

As a teacher's edition represents an annotated version of a student edition, it should identify the corresponding student edition in a dc:source element:

The following example shows a teacher edition that includes the source student edition identifier.

<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">

  <dc:type>teacher-edition</dc:type>

  <dc:source>urn:isbn:9780000000001</dc:source>

  …

</metadata>

NOTE

As teacher's guides do not have student editions, this guideline does not apply to their production.

3.4.3 Content

3.4.3.1 Structural Semantics

The EPUB for Education content model does not include structural semantics specifically for the construction of teacher editions and guides, but the inclusion of such semantics is under consideration for a future version of the profile.

At this time, the use of semantics defined in 4.4 Structural Semantics is recommended, where applicable.

3.4.3.2 Styling

The standardization of CSS class names for controlling the appearance of teacher-specific content is under consideration for a future version of this profile.

3.4.3.3 Audience

As a teacher's edition contains both the text of the student edition together with annotations, answers and other instructional aids for the teacher, there is a need to accessibly differentiate the teacher content from the content that all students have access to. Reliance on visual CSS styling alone, for example, impacts on the overall usability by instructors.

While the use of structural semantics enhances the meaning of the content, it does not, in itself, indicate who the content was intended for. Instead, to address discoverability for users of assistive technologies, all teacher content must be labeled using the [ARIA] aria-label attribute.

The following example shows an answer section labeled as belonging to the teacher edition

<section epub:type="answers" aria-label="teacher edition content">

   …

</section>

This specification does not require specific language for this attribute to allow for localization, but the text used should clearly identify the audience is teachers.

NOTE

As teacher's guides are exclusively for teachers, content does not have to labelled.

The audience may also be specified using the [schema.org] audience property for reliable machine processing (e.g., to selectively hide teacher-only content in a Reading System, or to enable filtering of content prior to distribution). Processing of this metadata is optional.

The following example shows the inclusion of the schema.org audience property to identify that an answers section is intended only for teachers.

<section id="answers01"

         aria-label="teacher edition content"

         epub:type="answers">

    <meta resource="#answers01"

          typeof="schema:WebPageElement"

          property="schema:audience"

          content="teacher"/>

    …

</section>

3.4.2.4 Student Content

For accessibility purposes, it is strongly recommended that student content not be represented as annotated images in teacher's editions.

4. Content Structure

4.1 Introduction

This section is informative

This section outlines key content structuring guidelines for the production of EPUB Publications that conform to this profile. Only differences from the core suite of EPUB specifications are noted.

4.2 Sectioning

The section element must be used only to group sections of content that contribute to the structural hierarchy (e.g., that could appear in the table of contents). Such content is contained in linear spine items [Publications301]; secondary non-linear content is not subject to the requirements in this section.

If the root of an XHTML Content Document consists of a single section of content, a section wrapper may be omitted (i.e., the body represents the implied section). Any subsections of the root section must be wrapped in section tags.

Each section must have a heading expressed either in an [HTML5] ranked heading element or an [ARIA] aria-label attribute. Sections must not have more than one heading element, but may include both a heading element and an aria-label. If a section includes both a label and a heading, the value of the aria-label attribute must not be the same as the heading (use the [ARIA] aria-labelledby attribute to explicitly link a heading to its section).

A section can be divided into subsections by nesting the section element, but once the first subsection is introduced only additional subsections are allowed to follow it (i.e., only another section element can follow the end of a subsection). This requirement also applies to the use of the section elements for subsectioning in any other [HTML5] sectioning content.

The following example shows how subsections must be contiguous.

<section>
  <h1>Section 1</h1>
  <p>…/p>
  <section>
     <h2>Subsection 1</h1>
     …
  </section>
  <section>
     <h2>Subsection 2</h1>
     …
  </section>
</section>

NOTE

The restriction against content between section elements exists to reduce the confusion that can arise when content is read by assistive technologies, as it is not always clear what section the continuation of content belongs to.

For article-based EPUB Publications, the [HTML5] article element may be used in place of the section element to group each article. The use of the element must follow the requirements defined in this section, including the use of section elements to represent the internal hierarchy.

4.3 Titles and Headings

4.3.1 Titled Sections

[HTML5] heading elements must be used to provide headings only for [HTML5] sectioning content (including the body element).

When using a heading element for a section, the rank must reflect the nesting of that section within the document hierarchy (as noted in 4.3.10 Headings and sections [HTML5]). For example, a top-level section will have an h1 heading, child sections of it will have h2 headings, and so on. Note that untitled sections are included when determining the current heading rank (see 4.3.2 Untitled Sections for more information).

The heading does not have to be the first element of the section, and may be included inside a [HTML5] header element. If the section also includes a subtitle in a separate element, both the heading and subtitle must be enclosed in a header.

<header>
  <h1>Chapter 1. The Battle</h1>
  <p epub:type="subtitle">Once More Unto the Breach</p>
</header>

NOTE

See 4.12.1 Subheadings, subtitles, alternative titles and taglines [HTML5] for additional markup patterns for subtitles.

The application of headings must reflect the hierarchy regardless of how the content has been chunked for distribution (i.e., it is not necessary that the first section in each file begin with an h1).

The [ARIA] aria-label attribute must not be included on a section if it provides the same text already available in a ranked heading, as it can lead to duplicate announcement of the heading to users of assistive technologies.

4.3.2 Untitled Sections

If a section of content in the document hierarchy does not have an explicit heading (e.g., an untitled introduction) ‒ or sectioning is used to group significant content, such as learning objectives, that a User using an AT would need access to ‒ the [ARIA] aria-label attribute must be used to provide an accessible name.

Adding this attribute allows users of assistive technologies to navigate to the section despite the lack of a heading, in addition to giving meaningful context.

Despite the lack of an explicit ranked heading, untitled sections are still part of the document's structural hierarchy and affect the heading rank of any child sections they contain. For example, the untitled section in the following example counts as the second level in the document outline, so the next ranked heading is an h3 even though no h2 appears in the markup:

<section epub:type="chapter">
  <h1>Chapter 1: Lists</h1>
 
     <section aria-label="Chapter body">
     
        <section epub:type="learning-objectives">
           <h3>1.2 Learning Objectives List</h3>

4.3.3 Deep Nesting

When the document hierarchy exceeds six levels of nesting, re-use the h6 element for the seventh nesting level and deeper. Avoid deep nesting of content, if possible, as the flattened structure below the sixth heading level impacts on the ability of users of assistive technologies (AT) to move through the document without repeatedly returning to the table of contents.

Do not use heading elements where the heading does not reflect the document hierarchy, as this use will impact on movement by AT users (e.g., inside figure captions).

4.3.4 Structured Components

When aside, article and nav elements with headings are included in a section, the heading rank must start one level lower than the containing section (e.g., if a section has an h3 heading, an aside within it will start with an h4 heading).

4.4 Structural Semantics

NOTE

These terms will remain under active development for the duration of the EPUB for Education initiative. It is anticipated that more terms will be added in subsequent iterations. Similarly, some terms may be deprecated or removed.

The EPUB for Education profile includes a set of structural semantic terms and content production rules designed to standardize the markup of educational materials.

The formal definitions of these terms, and requirements for their use, are defined in the normative EPUB Education Structural Semantics Vocabulary [EDUStructure].

Publishers are strongly recommended to represent all publication structures using the markup and terms defined in [EDUStructure]. The use of other terms from [StructureVocab] is optional, as is the use of custom terms.

Following is a categorized list of the terms available, with links to their definitions. Note that categorization does not imply usage restrictions, particularly in the case of sectioning terms.

4.5 Semantic Enrichment

The use of RDFa Lite [RDFaLite] is recommended for enriching content.

Examples of content enrichment in this specification use RDFa Lite syntax.

4.6 Pagination

If a reflowable Rendition has a statically-paginated alternative representation (e.g., print), it is strongly recommended that page break markers be included. Including this information enables students to synchronize their reading with the paginated representation, as many classrooms are mixed print/digital environments.

The pagination source must be identified using the dc:source and source-of properties [Publications301] when including markers. The source may be a reference to the EPUB Publication if pagination is derived from another Rendition in the Container.

A page-list nav [ContentDocs301] must be included in the EPUB Navigation Document when page breaks are included. See 7.4 Page List for more information.

4.7 Images

The following guidelines are suggested for the inclusion of image content:

5. Scriptable Components

EPUB Scriptable Components [ESC] may be included in EPUB Publications that conform to this profile, and must be integrated and identified as defined in [ESC-PKG].

6. IMS Learning Tools Interoperability® (LTI®) and Outcomes

6.1 Integration with IMS LTI

This section is informative

A document that presents the best practice recommendations for using IMS Learning Tools Interoperability® (LTI®) is available at [IMSGuide].

The interactions involved in working with IMS LTI services, are illustrated in the following context diagram:

EDUPUB overview.jpg

Legend of the the context diagram above (from content out):

  1. EPUB 3 Content
    An EPUB Publication conformant with the definition in
    2.1 Content Conformance.
  2. Reading System
    An application conformant with the definition in
    2.2 Reading System Conformance. It is important to note that any EPUB Reading System that conforms to this profile MUST broker communications between the content and the Reading eco-system, or handle those tasks directly.
  3. Reading eco-system
    This is a stable, persistent provider of services to support the Reading System and provide a point of contact to learning systems. In this profile, the reading eco-system is a tool that is hosted with an LTI Tool Provider. [
    IMS LTI 1.2 Implementation Guide or IMS LTI 2.0 Implementation Guide]
  4. LTI Compliant LMS
    This is the learning system used by learners, instructors and other roles to support the learning environment. In LTI the term for a learning management system or learning platform is the LTI Tool Consumer. [
    IMS LTI 1.2 Implementation Guide or IMS LTI 2.0 Implementation Guide]
  5. Caliper Analytics™
    Caliper is an IMS standard that is used for capturing learning data, storing and
    analyzing it. It also defines a vocabulary for learning analytics. [IMS Caliper Analytics Implementation Guide ]
  6. Other LTI compliant Tool Provider
    This box represents other learning tools in the larger learning eco-system that can be linked to from an EPUB Publication. Embedded LTI links can securely link to these other tools. [
    IMS LTI 1.2 Implementation Guide or IMS LTI 2.0 Implementation Guide]

NOTE

Caliper capabilities within EPUB 3 can be supported through an appropriate LTI capability.

6.2 Conformance

6.2.1 Content Conformance

If an EPUB Publication is designed for use in environments that support LTI launches and LTI’s Outcomes Management Service version 2, it MUST meet the following requirements:

6.2.2 Reading System Conformance

An EPUB Reading System must meet all of the following criteria:

NOTE

These conformance constraints above boil down to a basic message: A Tool Consumer might have many more demands on it than a Reading System. It needs to host and protect many sensitive credentials. It needs to keep interface contracts on possibly many Tool Provider interface contracts. And it must be available if, for example, an Outcome Result message comes into it in the middle of the night for entry into a gradebook. In general, if an implementer’s Reading System is an offline- or remote- device, it is safer and more practical to delegate the embedded launch back to the Tool Provider. If, on the other hand, the reader is a server-based, online reader and is in the same security domain as the Tool Provider, then a Reader-based Tool Consumer is fine.

6.2.3 Reading Eco-system Conformance

If an EPUB Reading System is designed for use in environments that support LTI and Outcomes, it MUST meet all of the following criteria:

6.3 Outcomes

6.3.1 Introduction

Following LTI definitions, an Outcome is composed of data that comes from an interactive resource and is used to gather information about the user’s response to the resource. Typically this comes from an interactive assessment that the user elects to perform. This data is often routed to gradebooks in learning systems. The Outcome itself encapsulates two distinct objects:

  1. a lineitem identifies the type of the particular activity. For example, there may be exercises at the end of a chapter in an EPUB Publication. A particular lineitem might refer to question 3 of Chapter 17 of the text. The lineitem describes the particular question; e.g., ‘determine the surface area of regular polygons’.
  2. an LISResult identifies a score that a particular student generates for the associated lineitem. Continuing the example above, a result for the lineitem above might identify user ‘jsmith’ and assign a score of ‘0.76’.

6.3.2 Outcomes Reporting

To enable an EPUB Publication to report outcomes via LTI, all learning activities MUST be enclosed by [HTML5] flow content that carries an epub:type attribute with the value "assessment". In addition, each assessment MUST have an id attribute with a value that is unique with the scope of the entire EPUB Publication. The value of this attribute will be used to identify the assessment when submitting outcome data.

Example:

<div epub:type="assessment" id="unique_id">

        <div>...</div>

</div>

Each assessment marked up in this fashion will be able to report scores using the JavaScript APIs documented in section 6.3.3. When adding outcome support to an assessment, there are no additional JavaScript files that must be included in the EPUB Publication.

For outcomes to function and be identified inside of the Reading System and Tool Provider, an [HTML5] nav element with with the epub:type attribute value "assessments" MUST be included in the EPUB Navigation Document.

The link nodes within the assessment list MUST contain the following information:

Example:

<nav epub:type="assessments">

        <h2>List of Assessments</h2>

        <ol>

            <li><a href="c01.html#multiple_choice_01" data-maxscore="1" data-graded="1">Assessment 1 - The Brain</a></li>

            <li><a href="c01.html#multiple_choice_02" data-maxscore="1" data-graded="1">Assessment 2 - The Heart</a></li>

                …

        </ol>

</nav>

6.3.3 JavaScript APIs

Reading Systems MUST make the JavaScript APIs defined in this section available within each content page being rendered. These APIs all exist under the namespace of the host document.

6.3.3.1 EPUB.Education.reportScores([scores], callback);

All score objects submitted via reportScores MUST be in the following format:

{ 
  score
: number,

   location: string,

   metadata: {...}
}

Where:

NOTE

A specific vendor's implementation can store metadata and also return it via getScores. For example, if they want to let a student know they already did the activity, repopulate their answers, etc. It is up to the vendor how they want to handle this, and each one could have specific implementation details.

The callback function parameter is OPTIONAL. The function call returned will pass one parameter signaling if the score was a success: callback(err). The message text of the error can be accessed via the property err.message.

6.3.1.2 EPUB.Education.getScores([location IDs], callback);

The callback function parameter is required. The function call returned will pass two parameters: an error code and an array containing the last saved scored object for each location ID.

These score objects will include the same parameters as passed in via reportScores, with the addition of a timestamp (added by the Reading System or Reading Eco-system at submission time) denoting the original submission time of the score.

Sample return:

[

  {
    score
: number,
    location
: string,
    timestamp
: UTCTimeStamp,
    metadata
: {...}
 
}

  …

]

6.4 LTI Links

An EPUB Content Document, which was not itself launched via an LTI link, will not be able to launch any embedded LTI links. In this case, the reading system needs to gracefully fail.

NOTE

Performing an embedded LTI launch, assuming it is supported by the particular Reading Eco-system, involves performing a similar operation as reportScores with a single exception: while some implementations of outcomes might allow the results to be enqueued there is no equivalent meaning to delaying an LTI launch. Therefore, an attempt to LTI launch to a tool on an offline device ought to fail.

6.4.1 EPUB.Education.ltiLaunch(tool_proxy_id, resource_type, resource_link_id, callback);

Description: Requests that Reading System perform an inner LTI Launch on its behalf.

Parameters:

tool_proxy_id

This is an identifier to the ToolProxy of inner partnership (i.e., inner Tool Consumer (TC) to inner Tool Provider (TP)). This value MUST be provisioned into the EPUB Publication and correspond to an entry in a persistent data structure on the outer Tool Provider

resource_name

This is a string that identifies the particular resource from the tool proxy. Note that, unlike LTI1, LTI 2+ supports multiple resources per tool proxy.

resource_link_id

This string asserts the identifier for this link in the EPUB Publication.

callback (optional)

Function to be called when outcome has been received by the Reading System but not necessarily processed by the Reading Eco-System. The callback function parameter is OPTIONAL. The function call returned will pass one parameter signaling if the score was a success: callback(err), where err is of type EPUB.Education.Error. The message text of the error can be accessed via the property err.message.

6.5 Authorization

This section defines the means of authorizing access from the Reading System to the Reading Eco-System. The APIs below SHOULD use an HTTP Authorization header that contains the TP-provided access-token (TP-Access-Token) that was provided to it at the initialization of the EPUB Publication. The TP-Access-Token enables two capabilities: 1) it ensures the message is allowed into the Tool Provider and 2) it provides a means of correlating the computed response to the invocation from the TP.

6.5.1 Reading System responsibilities

The Reading System has to fulfill several responsibilities, as outlined in the following subsections.

6.5.1.1 At Reading System launch time

As described below in Launching EPUB Publications, when the Reading Eco-System launches an EPUB Publication it sends it a TP-Access-Token, and endpoints for services that it will require:

6.5.1.2 At reportScores invocation

This event is activated when the content invokes EPUB.Education.reportScores. It marshals the parameters described into the following:

POST to result_handler_url with Authorization Header containing a TP-Access-Token and a body containing the JSON media type with following ‘flat’ fields

        access_token:                string

        [   (i.e., array)

                isbn:                        string

                activity_id:                string

                score:                        number

                score_detail:                json

                result_at:                iso8601 timestamp

        ]

returns: result_id

6.5.1.3 At getScores invocation

This event brokers a request from the Reading System to create a GET request to the Reading Eco-System to retrieve scores it has already submitted.

        GET to result_handler_url with path

        body:

        JSON media type

                access_token:                string

        [   (i.e., array)

                isbn:                        string

                activity_id:                string

                score:                        number

                score_detail:                json

                result_at:                iso8601 timestamp

        ]

        returns:

                media type matching array elements in ‘reportScores’ above

6.5.1.4 At ltiLaunch event

This event brokers a request from the Reading System to create an embedded LTI launch. See Embedded Launch below.

        POST to embedded_launch_handler

        body:

        JSON media type with flat body:

                tool_proxy_id:                string

                resource_name:        string

                resource_link_id:        string

        returns false if Reading Eco-system is unavailable.

The tool_proxy_id is an identifier to a Tool Proxy stored on the inner Tool Provider.

The resource_name identifies which resource, among possibly many defined in the Tool Proxy.

The resource_link_id is the LTI resource_link_id and SHOULD be set to the unique activity_id defined in 6.3.2.2 Content Structuring.

6.6 Cross-system flows

This section is informative

Flow 1: Provisioning Learning Activities

Before grades can be created in a LMS gradebook, a gradebook column for the particular assignment needs to be created. LTI calls this column the LineItem. For example, a calculus exercise might create the lineitem MinMax.question-3.

Steps

  1. [TC] Instructor clicks on an LTI link (v1.2 / 2.0+) in a Tool Consumer (TC). The particular LTI launch will initiate a user experience to create or manage lineitems. The user’s launch is run within a context of a particular course and has to launch with a ‘LineItems.url’ capability. This will pass to the Tool Provider (TP) an endpoint that will allow it access the lineitem container capability for the current course.
  2. [TP] Accesses TOC metadata for the book.
  3. [TP] Accesses the list of assessments available for an EPUB Publication as specified within the assessments nav element. A UX selector dialog allows the instructor to associate an assessment that is configured as ‘gradeable’, with a new lineitem.
  4. [TP] Creates the new lineitem in the TC by POSTing to the lineitems url and providing it with the activity name and maxscore. (e.g., MinMax.question-3)

NOTE

It might seem odd that the gradebook lineitem which lives on the TC is provisioned by a UX that is running on the TP. The reason for this is an access control constraint.  In LTI Outcomes V2 the lineitem is owned by the TP not the TC. Only the TP that creates the lineitem can operate on it; e.g., set a grade into it. The course gradebook might have many different lineitems for a course and each of these lineitems is protected from being accessed or modified by, say, another vendor’s tool. It can only be maintained by the tool that creates it.

Flow 2: Launching EPUB Publications

Description

When the learner wants to use the EPUB Publication, the learner clicks on an LTI link to launch the book. This launch opens the book and passes some crucial information to the TP.

Steps

  1. [TC] User clicks on an LTI link (v1.2 / 2.0+) in a Tool Consumer (TC).
  2. [TP] Launch the Reading System with a reference to the EPUB Publication and also pass a TP access token (see comment below) and needed endpoints for various services.
  3. [Reader] persists the access token given to it for future uses (e.g., subsequently transmitting a result from an exercise.

NOTE

Particular implementations might have several implementation-defined fields. But the minimum values mentioned above are sufficient to recover launch-time state for most uses.

Flow 3: Outcome Flow

The following Outcome Flow is relevant to Method 2 outcomes as described above in section 6.2.2; that is, delegating outcomes to a server-based Tool Provider.

Description

This flow shows the sequence of events for an assessment result submission and its forwarding through the Reading System, Tool Provider (TP), Tool Consumer (TC), and finally to gradebook

Steps

  1. [EPUB 3] Document activity link signals a result is available. A JavaScript reportScores sends the result to the Reading System.
  2. [Reading System] Reading System composes a POST with the access code provided to the reader on launch plus activity_id, result value, maxscore, and an arbitrary JSON-encoded data structure with whatever contents is desired.
  3. [TP] Looks up the Lineitem, matched by activity_id.
  4. [TP] PUTS a new result object to the result container for the specific lineitem.
  5. [TC] stores the result into the gradebook at the lineitem column specified.

Flow 4: Embedded LTI Launch

Description

An EPUB Publication can support embedded LTI launches. For example, a student at a learning institution can open an EPUB Publication and be reading it. The student comes upon a link to connect to publisher-supplied content, The student can directly ‘Single-Sign-On’ (SSO) to the publisher site and review that content.

There are many ways for an implementer to create an embedded launch. In the section on Reading System conformance there is great detail on the norms required. The following diagrams the two alternatives:

Alternative 1: Reading System hosts a Tool Consumer:

CAUTION

The constraints dictated in the Reading System Conformance section work fine for online Reading Systems in the same security domain as the Tool Provider, but avoid using it on lightweight, remote, or offline devices.

Steps

Creating a Tool Consumer (TC) in any environment, whether within an LMS or within an EPUB Publication, is fully described in the [IMS Impl Guide 1.2] or [IMS Impl Guide 2.0+].

Alternative 2: Reader delegates back to the Tool Provider:

Definition

An embedded launch that is delegated back through a Tool Provider requires that LTI metadata be stored that defines essential configuration data for an LTI launch. Most fundamentally, the metadata includes a consumer key, secret, and endpoint to direct the launch. Other launch metadata is optional.

In LTI 2+ this kind of metadata is stored in a discrete resource called the LTI ToolProxy [IMSToolProxy].

But In LTI 1 there is no such resource. Rather this metadata is stored in vendor-specific locations at the discretion of the LTI 1 implementor.

In the discussion below we will use the term ToolProxy informally. For LTI 2 systems it will indeed be the LTI ToolProxy. But for LTI 1 systems it will be some vendor-defined storage region that is capable of storing all essential LTI launch metadata.

Preconditions

Certain provisioning is necessary on the Tool Provider to prepare for the Embedded LTI Launches.

  1. [TP] In advance of any embedded launch it is necessary to create a ToolProxy that will be needed to support the interactions between the Inner Tool Consumer and Inner Tool Provider (InnerTC and InnerTP). A ToolProxy is a formal interface contract that provides all the information needed to performs launches, services, or support other messages between LTI-compliant partners. The ToolProxy includes endpoints, credentials, and capabilities of the interactions. It is extensively described in the LTI media type documentation for application/vnd.ims.lti.v2.toolproxy+json.
  2. The ToolProxy can be created manually, by a vendor-provided tool, or automatically by using an LTI 2+ Registration flow.
  3. The created ToolProxy should be stored in the ToolProvider in a location that is accessible to the embedded launch broker.

Flow

  1. [EPUB 3] Document activity link signals a launch is requested. A JavaScript launchActivity method invokes the Reading System with information that identifies the launch metadata.
  2. [Reading System] Reading System composes a POST with the original TP-access-token provided to access sources. It needs to pass three values to the Tool Provider (TP):
  1. identifier of a TP-stored ToolProxy that defines the interface contract to the new ‘inner’ tool being launched [IMSToolProxy]
  2. name of the ToolProxy resource (specific tool) to launch into
  3. name assigned to the resource_link in the EPUB Publication. This value will be used for the resource_link_id of the ‘inner’ launch [IMSLTIImplGuide] for the appropriate version.
  1. [TP] TP uses the access token to recover the context of the ‘outer’ launch. It then starts assuming the behavior of an ‘inner’ Tool Consumer.
  2. [InnerTC] First it looks up the ToolProxy for the inner launch that was referenced by the ReadingSystem. This interface contract gives details of the inner launch requirements including new endpoints, required parameters, signing details, etc. The innerTC derives launch parameters inherited from the outer launch and creates a new parameters for the inner launch. It transforms parameters based on the LTI Mapping Parameter table (below). Finally it signs the new launch parameters and redirects to the innerTP with the LTI POST-autosubmit idiom [IMSLTIImplGuide].
  3. [InnerTP] Behaves as any LTI launch. It renders its tool, lets the user interact. If it performs outcomes handling (either V1 or V2 outcomes) it performs them in the usual fashion and returns them via the endpoints provided in the inner launch (from the ToolProxy).
  4. [InnerTP] It finally redirects, using the normal launch_presentation_return_url to the ancestor TP.
  5. [InnerTC] Any returned results from the InnerTP need to be brokered back to the TP. This involves forwarding the message to the outer consumer after re-signing it.
  6. [TP] continues in the outer launch activity (e.g., in the EPUB Publication).

LTI Mapping Parameters

The following table shows the different LTI parameter categories and how they are handled in a brokered launch situation. Note that the Mapping column indicates the forward mappings (outer-to-inner launch). The final row shows the mappings required for reverse mappings. This is typically for inner results being passed back.

Outer Launch

Mapping

Inner Launch

User: user, role, name, email

Avail parms broker depending on privacy settings

Course: context_id, label, title

Avail parms broker depending on privacy settings

URLs to signed services

Cross-domain: outer routes prepended to path

tool_consumer_instance_guid

(outermost launch only)

sourced_tool_consumer_instance_guid

invoke signed callback

Cross-domain: callback handler verifies and re-signs

The sourced_tool_consumer_instance_guid requires special comment. It is used in to disambiguate user identity when LTI launches (either direct or embedded) come into a tool from possible different sources; i.e. through different embedded launches or a parallel communication from the origin Tool Consumer to the final Tool Provider.

7. Navigation

7.1 Table of Contents

It is important to include a complete table of contents that fully reflects the heading hierarchy of the work, as it ensures that students are able to efficiently access any section necessary.

To address this need, the required toc nav [ContentDocs301] recommends the inclusion of a complete table of contents. This specification strongly encourages Authors to follow this practice and ensure that references to all sections of the EPUB Publication are included.

7.2 Brief Table of Contents

A brief table of contents represents a shortened and/or specialized version of the table of contents. For example, sublevels of the document hierarchy might be removed for clarity and/or explanatory text added to each section heading.

A brief table of contents is identified by the epub:type attribute value "toc-brief".

The following example shows a toc-brief nav that provides chapter summaries.

<nav epub:type="toc-brief" id="toc-brief">
 <h1>Brief Table of contents</h1>
 <ol>
   <li>
     <p><a href="chap1.xhtml">Chapter 1 ‒ Introduction</a></p>

      <p>A brief history of the evolution of scientific thinking.</p>
    </li>
   <li>
     <p><a href="chap2.xhtml">Chapter 2 ‒ The Greeks</a></p>

      <p>Archimedes, Aristotle, Euclid and Pythagoras</p>
   </li>
 </ol>
</nav>

As the nature of the brief table of contents is more structurally fluid than simple lists of links, it is typically not included in the EPUB Navigation Document, as nav elements in that document are subject to the restrictions defined in 2.2.4.1 The nav element: Restrictions [ContentDocs301]. If the brief table of contents is included in the EPUB Navigation Document, it must adhere to those requirements.

NOTE

If Authors only seek to include a reduced version of the toc nav [ContentDocs301] in the spine [Publications301] (i.e., requiring no specialized content, and where only some sub-tree branches are pruned), the use of the hidden attribute [ContentDocs301] with the toc nav is encouraged to avoid duplicating structures.

7.3 Content Lists

If an EPUB Publication includes figures, tables, and/or audio and video content, it is strongly encouraged that navigation lists for these be included in the EPUB Navigation Document, as inclusion simplifies access to the content for all Users.

A figure list is identified by adding the "loi" term to a nav element, a table list by the "lot" term, and audio and video lists by the "loa" and "lov" terms, respectively [StructureVocab].

7.4 Page List

If page break markers are included in the EPUB Publication, a page-list nav [ContentDocs301] must be included in the EPUB Navigation Document.

Likewise, if the EPUB Publication is statically paginated through the use of fixed layout pages, a page-list nav must be included, even if no print equivalent exists.

8. Publication Metadata

8.1 Profile Identification

An EPUB Publication conforming to this specification must be identified as such in the package metadata of each of its Renditions by including a dc:type element [Publications301] with the value "education".

The following example shows an EPUB Publication identified as conforming to this profile.

<metadata xmlns:dc="http://purl.org/dc/elements/1.1/">

  <dc:type>education</dc:type>

  …

</metadata>

8.2 Educational Metadata

8.2.1 Educational Properties

Educational metadata is needed to describe the suitability of content for educational settings, and to facilitate search and retrieval.

The [schema.org] CreativeWork type includes educational metadata properties that Authors can set in the EPUB Package Document to identify the nature and suitability of the content. In addition, the [schema.org] EducationalAudience type can be used to express the intended audience of the work. This specification does not require the use of any of these properties.

The usage recommendations in the following subsections are suggested based on the intended audience: schools, higher education, and professional/technical/corporate.

NOTE

See the audience/audienceType property for how to declare this audience.

In some cases, a default value is assumed for educational properties when they are not specified in the metadata. Default values are indicated in the allowed values sections.

NOTE

A mapping between schema.org and IMS metadata properties is provided in Appendix E.1.

This specification does not enforce case-sensitivity on the values of these properties. If Reading Systems or other processing agents seek to utilize these properties for specialized behaviors, they must normalize the case of their values prior to evaluation.

8.2.2 audience/audienceType

Recommended Value(s)

corporate, higher-ed, professional, schools

No default value.

Cardinality

Zero or more

Usage

When expressing the [schema.org] educational metadata properties defined in this section, it is strongly recommended that this property be set.

Example

<meta property="schema:audience" id="aud01">schema:audience</meta>

<meta property="schema:audienceType" refines="#aud01">schools</meta>
<meta property="schema:educationalRole" refines="#aud01">student</meta>

8.2.3 audience/educationalRole

Recommended Value(s)

Refer to D.1.1 educationalRole

Default value: Student

Cardinality

Zero or one

Usage

Professional/Technical/Corporate: Strongly recommended

Schools: Strongly recommended

Higher Education: Strongly recommended

Example

<meta property="schema:audience" id="aud01">schema:audience</meta>

<meta property="schema:educationalRole" refines="#aud01">teacher</meta>
<meta property="schema:audienceType" refines="#aud01">higher-ed</meta>

8.2.4 educationalAlignment

Recommended Value(s)

"schema:educationalAlignment" (Refer to the [SchemaGuide].)

No default value.

Cardinality

One or more

Usage

Professional/Technical/Corporate: optional

Schools: recommended

Higher Education: recommended

Example

<meta id="ea02" property="schema:educationalAlignment">schema:educationalAlignment</meta>

   <meta refines="#ea02" property="schema:alignmentType">teaches</meta>

   <meta refines="#ea02" property="schema:targetName">

       Calculate probabilities using the Addition Rules and

       Multiplication Rules.

   </meta>

   <meta refines="#ea02" property="schema:targetUrl">

       http://example.com/competency502041

   </meta>

8.2.5 educationalUse

Recommended Value(s)

Refer to D.1.3 educationalUse

No default value.

Cardinality

Exactly one

Usage

Professional/Technical/Corporate: optional

Schools: Strongly recommended

Higher Education: Strongly recommended

Example

<meta property="schema:educationalUse">demonstration</meta>

8.2.6 interactivityType

Recommended Value(s)

Refer to D.1.5 interactivityType

Default value: Activity

Cardinality

Zero or one

Usage

Professional/Technical/Corporate: recommended

Schools: Strongly recommended

Higher Education: Strongly recommended

Example

<meta property="schema:interactivityType">mixed</meta>

8.2.7 isBasedOnUrl

Recommended Value(s)

URL

No default value.

Cardinality

Zero or more

Usage

Professional/Technical/Corporate: recommended

Schools: recommended

Higher Education: recommended

Example

<meta property="schema:isBasedOnUrl">http://www.example.com/book</meta>

8.2.8 learningResourceType

Recommended Value(s)

Refer to D.1.6 learningResourceType

No default value.

Cardinality

Exactly one

Usage

Professional/Technical/Corporate: optional

Schools: Strongly recommended

Higher Education: Strongly recommended

Example

<meta property="schema:learningResourceType">activity</meta>

8.2.9 timeRequired

Recommended Value(s)

A string representing an [ISO8601] duration

No default value.

Cardinality

Zero or one

Usage

Professional/Technical/Corporate: optional

Schools: optional

Higher Education: optional

Example

<meta property="schema:timeRequired">P90M</meta>

8.2.10 typicalAgeRange

Recommended Value(s)

Refer to D.1.4 typicalAgeRange

No default value.

Cardinality

Zero or more

Usage

Professional/Technical/Corporate: optional

Schools: Strongly recommended

Higher Education: recommended

Example

<meta property="schema:typicalAgeRange">16-18</meta>

8.3 Accessibility Metadata

Identifying the accessible qualities of an EPUB Publication is of vital importance in educational contexts, as the needs and preferences of students will dictate whether any given Rendition of the content will be sufficiently usable by them in their studies.

The [schema.org] CreativeWork type includes accessibility metadata properties [A11YProperties] that Authors can set in the EPUB Package Document to identify the accessible qualities of a given Rendition of the EPUB Publication.

Authors must use the accessibilityFeature property to identify any applicable accessibility features, repeating the property for each feature. A recommended list of values to use with this property is maintained at the W3C Web Schemas wiki [A11YProperties].

At a minimum, all EPUB Publications that conform to this profile must specify the value "tableOfContents", as a complete table of contents is required as described in 7.1 Table of Contents. It is strongly recommended that the other properties be specified whenever applicable. Note, however, that It is not valid to include the value "none", as there is always at least one value that can be specified.

Refer to the schema.org metadata integration guide [SchemaGuide] more information on how to include these properties in the Package Document.

In distribution contexts that require the use of an ONIX record, the accessibility properties defined in Code List 196 [ONIXCodes] should be specified, as appropriate.

NOTE

A mapping table from the ONIX to schema.org frameworks is available on the a11ymetadata.org site.

9. Annotations

Reading Systems should provide a mechanism to ingest ‒ and support the rendering of ‒ annotations that conform to the Open Annotation in EPUB specification [OpenAnnotation].

Support for exporting and synchronizing annotations is optional.

10. Distributable Educational Objects

10.1 Introduction

This section is informative

In educational contexts, there is a need to distribute and consume not only complete publications, but components of publications and other objects not necessarily originating within a publication. Such "distributable objects" could be complete EPUB Content Documents (for example, a chapter of a book), sections of such a document (for example, an exercise or a set of learning objectives), media resources (such as a video or an interactive feature), or a combination of such resources that are not necessarily contiguous within the parent EPUB Publication.

This section provides the specifications that pertain to creating Distributable Objects [DistributableObjects] that are intended for education and which conform to this specification.

10.2 Identification

10.2.1 Distributable Object Type

This specification does not define a specific type of Distributable Object to identify educational content.

For general educational content distribution needs, the distributable-object type defined in the [DistributableObjects] is recommended.

Other, more specific types, such as EPUB Scriptable Components [ESC], may be used, as appropriate (provided the Distributable Object conforms to all requirements in the respective specification).

10.2.2 Education Conformance

To simplify (re)use and integration in workflows, distribution channels and EPUB Publications, any Distributable Object whose content conforms to this profile may be identified as conformant. The following metadata must be expressed to indicate conformance:

  1. all requirements defined in 8. Publication Metadata; and
  2. the addition of an additional dc:type element [Publications301] with the identifier "education".

In the case of Packaged Objects [DistributableObjects], this metadata is expressed in the package metadata [Publications301]. For Embedded Objects [DistributableObjects], the metadata is expressed in the collection metadata [Publications301].

10.3 Embedded Objects

As Distributable Objects are created and consumed for many purposes, it is not a requirement that all the Distributable Objects used in a Rendition be identified as conforming to this profile.

If the Author is responsible for the creation of a Distributable Object in a compliant EPUB Publication, however, it is recommended that the Distributable Object be identified as conforming to the profile.

EPUB Publications conformant with this profile may embed any type of Distributable Object provided the resulting Rendition(s) remain conformant to the requirements of this specification.

Appendix A. Sample CSS

This appendix is informative

A sample CSS file is available at http://www.idpf.org/epub/profiles/edu/res/sample.css

The sample CSS file is provided for informational purposes only. Authors are free to use any CSS class names and styles with their documents.

NOTE

The CSS profile is subject to ongoing change as part of the evolution of the profile.

Appendix B. Validation

This appendix is informative

NOTE

Content validation services will be referenced from here in a forthcoming iteration.

Appendix C. Example Documents

This appendix is informative

For informational review of the markup patterns defined in this specification, EPUB Publications conformant to this profile are provided at the EPUB for Education samples repository.

These documents are subject to change, and can be added to, and removed, over time.

Appendix D. Educational Metadata Properties

D.1 Recommended Vocabularies

CAUTION

The following sections provide draft vocabularies for use with the schema.org educational metadata properties, but this appendix is expected to be removed once formal vocabularies are published by Dublin Core. Use caution when implementing these values as they are subject to change in the final published version.

D.1.1 educationalRole

Additional values from IMS

D.1.2 alignmentType

D.1.3 educationalUse

D.1.4 typicalAgeRange

D.1.5 interactivityType

D.1.6 learningResourceType

Appendix E. Educational Metadata Mappings

This appendix is informative

E.1 IMS/Schema.org mapping

The below table contains a correspondence mapping between the educational metadata terms of schema.org [schema.org] and IMS as described in Appendix E of [IMSGuide].

schema.org term

IMS term

GUID [identifier]

targetURL

Resource URL

name

Title [title]

description

Description  [description]

keywords

Keywords [subject]

typicalAgeRange

From Grade

typicalAgeRange

To Grade

productID

ISBN [identifier]

learningResourceType

Type [type]

educationalAudience

UseType

educationalUse

UseType (repeat)

Thumbnail

Thumbnail

educationalAlignment

Mapping to Curriculum Standards

AlignmentObject

Mapping to Curriculum Standards (repeat)

AlignmentType

educationalRole

timeRequired

interactivityType

useRightsURL

isBasedOnURL

Appendix E. Acknowledgements and Contributors

EPUB has been developed by the International Digital Publishing Forum in a cooperative effort, bringing together publishers, vendors, software developers, and experts in the relevant standards.

The EPUB for Education 1.0 specification was prepared by the International Digital Publishing Forum's EPUB Working Group, operating under under the leadership of:

Active members of the working group at the time of publication were:

IDPF Members

Invited Experts/Observers

References

Normative References

[A11YProperties] Schema.org Accessibility Metadata Properties.

[ARIA] Accessible Rich Internet Applications (WAI-ARIA) 1.0, J. Craig, et al.

[ContentDocs301] EPUB Content Documents 3.0.1

[CSS21] Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification. Bert Bos, et al. 7 June 2011.

[DCMES] Dublin Core Metadata Element Set, Version 1.1.

[DICT] EPUB Dictionaries and Glossaries 1.0.

[DistributableObjects] EPUB Distributable Objects.

[EDUStructure] EPUB for Education Structural Semantics.

[EPUBCFI] EPUB Canonical Fragment Identifier (epubcfi) Specification.

[ESC] EPUB Scriptable Components.

[ESC-PKG] EPUB Scriptable Components Packaging and Integration.

[HTML5] HTML5: A vocabulary and associated APIs for HTML and XHTML.

[IDX] EPUB Indexes 1.0.

[IMSLTIImplGuide] IMS Learning Tools Interoperability™ (LTI) Implementation Guide

Version 2.0. Final Specification. IMS Global Consortium Inc. 6 January 2014.

[IMSToolProxy] ToolProxy JSON Binding in the application/vnd.ims.lti.v2.toolproxy+json format. IMS Global Consortium Inc.

[ISO8601] ISO 8601:2004 Data elements and interchange formats -- Information interchange -- Representation of dates and times.

[JPEG] JPEG Standard (JPEG ISO/IEC 10918-1 ITU-T Recommendation T.81) .

[LTI12] Learning Tools Interoperability® (LTI) Implementation Guide v1.2. Final Specification. S.Vickers, IMS Global Consortium Inc. January 2015.

[LTI2] Learning Tools Interoperability® (LTI) Implementation Guide v2.0. Final Specification. Vickers, IMS Global Consortium Inc. January 2014.

[LTIO2] Learning Tools Interoperability® Outcomes Management v.2.0. Public Draft. S.Vickers, IMS Global Consortium Inc. December 2014.

[Manifest] EPUB Manifest Role.

[MediaOverlays301] EPUB Media Overlays 3.0.1.

[MultipleRenditions] EPUB Multiple-Rendition Publications.

[OCF301] Open Container Format 3.0.1.

[ONIXCodes] Onix Code Lists. EDItEUR.

[OpenAnnotation] Open Annotation in EPUB.

[PNG] Portable Network Graphics (PNG) Specification (Second Edition). David Duce. 10 November 2003.

[Publications301] EPUB Publications 3.0.1.

[RDFaLite] RDFa Lite 1.1. Manu Sporny. 07 June 2012.

[RFC2119] Key words for use in RFCs to Indicate Requirement Levels (RFC 2119) . March 1997.

[RFC3987] Internationalized Resource Identifiers (IRIs) (RFC 3987). M Duerst, et al. January 2005.

[schema.org] schema.org.

[sRGB] IEC 61966-2-1:1999 Multimedia systems and equipment. Colour measurement and management. Colour management. Default RGB colour space. sRGB

[StructureVocab] EPUB 3 Structural Semantics Vocabulary .

[SVG] Scalable Vector Graphics (SVG) 1.1 (Second Edition) . Erik Dahlström, et al. 09 June 2011.

Informative References

[IMSGuide] Using IMS Caliper Analytics™, Question and Test Interoperability™ and Learning Tools Interoperability™ with EPUB3™: EDUPUB Best Practices

[SchemaGuide] Schema.org Metadata Integration Guide for EPUB 3.