Summary

Include a page list so users of digital publications can coordinate their position with a statically paginated equivalent.

Techniques

Examples

Example 1 — Page list (EPUB 3)

The page list is a simple ordered list of links to the page break locations. It is identified by the epub:type attribute value page-list.

Note that the page list includes the hidden attribute so that the list is not presented to users if the table of contents is also included in the spine.

An ARIA role attribute (see the next example) is not necessary if the page list is always hidden from users or the EPUB navigation document is not included in the spine.

<nav epub:type="page-list" hidden="hidden">
 <ol>
   <li><a href="georgia.xhtml#page752">752</a></li>
   <li><a href="georgia.xhtml#page753">753</a></li>
   <li><a href="georgia.xhtml#page754">754</a></li>
   <li><a href="georgia.xhtml#page755">755</a></li>
   <li><a href="georgia.xhtml#page756">756</a></li>
   <li><a href="georgia.xhtml#page757">757</a></li>
   <li><a href="georgia.xhtml#page758">758</a></li>
 </ol>
</nav>
Example 2 — Page list (Web)

A page list for use on the Web generally is identified by the role attribute value doc-pagelist. The aria-label attribute is used to provide a title for the navigation element, but an explicit heading can also be used (refer to the second nav element).

<nav role="doc-pagelist" aria-label="Page list">
 <ol>
   <li><a href="georgia.xhtml#page752">752</a></li>
   <li><a href="georgia.xhtml#page753">753</a></li>
   …
 </ol>
</nav>

<nav role="doc-pagelist" aria-labelledby="pg-hd">
 <h2 id="pg-hd">Page List</h2>
 <ol>
   <li><a href="georgia.xhtml#page752">752</a></li>
   <li><a href="georgia.xhtml#page753">753</a></li>
   …
 </ol>
</nav>
Example 3 — Page list (EPUB 2 and DAISY 3)

The page list in EPUB 2 and DAISY 3 publications is expressed using a custom XML grammar called the NCX.

<?xml version="1.0" encoding="UTF-8"?>
<ncx xmlns:ncx="http://www.daisy.org/z3986/2005/ncx/"
     xmlns="http://www.daisy.org/z3986/2005/ncx/"
     version="2005-1" xml:lang="en">
    …
    <pageList>
        <navLabel>
            <text>Pages</text>
        </navLabel>
        <pageTarget type="normal" id="page752" value="752" playOrder="1">
            <navLabel>
                <text>752</text>
            </navLabel>
            <content src="georgia.xhtml#page752"/>
        </pageTarget>
        <pageTarget type="normal" id="page753" value="753" playOrder="2">
            <navLabel>
                <text>753</text>
            </navLabel>
            <content src="georgia.xhtml#page753"/>
        </pageTarget>
        …
    </pageList>
</ncx>

Frequently Asked Questions

How should I order the links the page list?

There is currently no requirement on how to order the links in the page list. A common technique is to order the links numerically, but sometimes the order of the content in the digital publication does not match the order in the physical (e.g., sometimes the publisher might move front matter to the back). Some EPUB creators prefer to order the page list to match the digital content in these cases.

Does a publication with a page list have to have page break markers?

A page list may be included in a digital publication that does not have page break markers, but this practice tends to be rare and is often not very helpful for users. An example would be a page list that only links to the first page of each chapter. The page list could link to the chapter headings instead of having a page break marker. But since the table of contents would already provide access to each chapter, this approach has limited use.

Explanation

If a reflowable publication is derived from a statically paginated source, such as a print edition, including a page list allows users to coordinate positions. For example, a student using a digital edition in a class where her peers are using print books would be able to jump to the same pages during instruction.

The page list itself is a list of links to all the page break locations. User agents can use this list to provide automatic page jump functionality, or a user can access it directly to manually select the page they wish to go to.

In EPUB 3, the page list is expressed in a page list nav element in the navigation document. This element is essentially a flat list of links to each page break location.

<nav epub:type="page-list">
 <ol>
   <li><a href="chapter01.xhtml#page1">1</a></li>
   <li><a href="chapter01.xhtml#page2">2</a></li>
   …
 </ol>
</nav>

In EPUB 2, a page list is expressed using the pageList element in the NCX file. (See example 2.)

Related Links