MoEML’s ePub Files Process

This document is currently in draft. When it has been reviewed and proofed, it will be published on the site.

View the draft document.

Please note that it is not of publishable quality yet.

MoEML’s ePub Files Process

ePubs are electronic publications that are fit to be read on designated devices and platforms (such as Kindle). We assume that the devices are not connected to the Internet, therefore the ePubs have to contain all the necessary information, data, and metadata. ePubs necessitate a particular structure (which will be discussed below). In order to produce MoEML ePubs, we have developed a series of XSLT documents, that transform the source page (the online documentID.htm), and build it (via an ANT application) into the necessary components of an ePub, in the appropriate formats.

ePub Infrastructure

The MoEML ePub infrastructure consists of 5 XSLT transformations (jenkins_to_epub.xsl; epub_supplementary_files.xsl; list_css_for_epub.xsl; list_fonts_for_epub.xsl; and list_images_for_epub.xsl) and an ANT build (createEpubs.xml). The transformations are responsible for creating the necessary files, based on the ID.htm file, and the ANT application is responsible for building the ePub and zipping its contents in the right order.

jenkins_to_epub.xsl - Main Transformation

This transformation is responsible for editing the source file from Jenkins, to have it fit the ePub requirements (the MoEML stylistic requirements as well as the global ePub restrictions). It removes some divisions, including breadcrumbs, the search bar, the left column. In addition, this transformation rewrites external links to link them to It also adds necessary metadata such as credits and PERS mentions where appropriate.

epub_supplementary_files.xsl - Main Transformation

This transformation is responsible for adding the files that are essential for the structure of the ePub (to be discussed below). It also includes templates that contribute to the creation of the files mentioned. Note that this transformation is responsible for creating the CSS files that override the MoEML files.


This transformation creates a list of CSS files that need to be copied into the ePub package. It is used by the ANT build to determine which CSS files need to be included, and from which location(s) to get them. It will then copy the files into the ePub CSS folder.


This transformation creates a list of fonts that need to be copied into the ePub package. It is used by the ANT build to determine which font files need to be included, and from which location to get them. It will then copy the files into the ePub fonts folder.


This transformation creates a list of images that need to be copied into the ePub package. It is used by the ANT build (which will copy the files) to determine which images need to be included, and what location(s) to get them from.

The ANT build: createEpubs.xml

The ANT build is responsible for creating the files and placing them in their appropriate folders, as well as copying CSS files, fonts, and images into their corresponding folders. It builds/creates the ePub package, and zips it appropriately. Not that there is a specific order for zipping the files, for the ePub to function properly.

ePub Package Structure

The ePub package consists of a mimetype.txt, a META-INF folder that contains the container.xml file, and an EPUB folder that contains all other subfolders and files including the documentID.xhtml.
  1. The mimetype.txt contains one line of text: application/epub+zip.
  2. The META-INF folder contains the container.xml file, which has the location of the package.opf file (also known as the brain of the publication – details below).
  3. The EPUB folder contains the following:
    1. cover.xhtml: This file is the cover of the eBook. It contains a cover image, the title of the book, the credits, the category information, and the citation information. The credits are linked to the personography details available in the appendix of the book (documentId.xhtml)
    2. toc.ncx: This file is the book’s table of content information – the navigation map with appropriate playorder
    3. nav.xhtml: This file is the one responsible for the table of contents that appears in the book – Some of our born digital documents do not have a table of content. We still need to create nav.xhtml, but we hide it
    4. package.opf: This file declares all the elements included in the book, from images, to fonts, to css files, etc. All components of the ePub need to be declared in this file; otherwise, the build will result in errors
    5. documentId.xhtml: This is the main document that contains the body of the eBook
    6. the CSS folder: Contains the CSS files (MoEML’s in addition to the files that override them, including: epub.css, cover.css, and nav.css)
    7. the fonts folder: Contains the fonts used for our book (as per MoEML’s preferences – most important for our primary sources)
    8. the images folder: Contains the images that are available in, and needed for the ePub.

ePub Design

The current design of the ePub has a minimalist text body that replicates a book’s page design and adheres to what ePubs usually look like. Our cover page however is where our design stands out: we are replicating the feel of Early Modern book covers. The cover page contains the project title (Map of Early Modern London), the title of the document, a visual of the map, and the publication date. The cover page is taken as a .png file from the corresponding PDF file, in order for it to appear consistently as a cover, regardless of the platform.

ePub Publication

The ePubs will be published on MoEML’s UVic libraries UVicSpace – UVic’s Research and Learning Repository ( MoEML is part of the Endings project, which is in collaboration with the UVic libraries. The PDFs are thus published on the digital space that the library has dedicated to MoEML.
For more detailed information about the ePub building process, please see the developers’ ePub documentation .

Cite this page

MLA citation

El Hajj, Tracey. MoEML’s ePub Files Process. The Map of Early Modern London, Edition 6.6, edited by Janelle Jenstad, U of Victoria, 30 Jun. 2021, Draft.

Chicago citation

El Hajj, Tracey. MoEML’s ePub Files Process. The Map of Early Modern London, Edition 6.6. Ed. Janelle Jenstad. Victoria: University of Victoria. Accessed June 30, 2021. Draft.

APA citation

El Hajj, T. 2021. MoEML’s ePub Files Process. In J. Jenstad (Ed), The Map of Early Modern London (Edition 6.6). Victoria: University of Victoria. Retrieved from Draft.

RIS file (for RefMan, RefWorks, EndNote etc.)

Provider: University of Victoria
Database: The Map of Early Modern London
Content: text/plain; charset="utf-8"

A1  - El Hajj, Tracey
ED  - Jenstad, Janelle
T1  - MoEML’s ePub Files Process
T2  - The Map of Early Modern London
ET  - 6.6
PY  - 2021
DA  - 2021/06/30
CY  - Victoria
PB  - University of Victoria
LA  - English
UR  -
UR  -
ER  - 

TEI citation

<bibl type="mla"><author><name ref="#ELHA1"><surname>El Hajj</surname>, <forename>Tracey</forename></name></author>. <title level="a">MoEML’s ePub Files Process</title>. <title level="m">The Map of Early Modern London</title>, Edition <edition>6.6</edition>, edited by <editor><name ref="#JENS1"><forename>Janelle</forename> <surname>Jenstad</surname></name></editor>, <publisher>U of Victoria</publisher>, <date when="2021-06-30">30 Jun. 2021</date>, <ref target=""></ref>. Draft.</bibl>