Skip to main content

OPDS Page Streaming Extension 1.0

Published on December 01st 2014


This document is licensed under Creative Commons Attribution-Share Alike.


The OPDS Page Streaming Extension (OPDS-PSE) is an unofficial extension of the Open Distribution Publication System. Its goal is to enrich the OPDS feed with information allowing the client to request a specific page of a document without having to download it completely. This extension was designed primarily for comic books, to allow reading them on connected devices without having to wait for the book to be completely downloaded.

OPDS-PSE adds new attributes and conventions but does not break compatibility. OPDS-PSE feeds are still valid OPDS feeds.

Notational Conventions

The keywords "MUST", "MUST NOT", "SHOULD", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].

The OPDS-PSE extension simply consists in an additional type of Acquisition Link in an OPDS entry. This link is to be used by clients to request pages of a document, one page at a time.

An OPDS-PSE feed MUST declare the OPDS-PSE namespace:


Namespace declaration in the feed element (in our example, we use the prefix pse):

<feed xmlns=""

Additional link in an entry to allow page by page access to the document:

<link rel=""


The Link MUST contain the following attributes:

  • rel MUST have the value that indicates that this link is a OPDS-PSE page streaming link
  • type MUST indicate the type of image returned by the server (value MUST be one of the following : image/jpeg, image/gif or image/png)
  • count MUST provide the number of pages of the document
  • href MUST provide the URL that the client has to use to get individual pages of the document. This URL MUST contain the string {pageNumber}, which the client MUST replace with the number of the desired page. This URL MAY contain the string {maxWidth} that the client MUST replace (if it exists) by the desired maximum width of the returned page.


  • pages are numbered from 0 to N-1 (N being the total number of pages).
  • double pages (one image containing two pages) MUST be treated as a single page. If a split is to be done, it is the responsibility of the client. The server MUST NOT split images.

Known implementations of OPDS-PSE 1.0




This document has been slightly modified to accommodate the form and style. The original 1.0 specification has been created by Tom for Ubooquity, and can be found at