-
Notifications
You must be signed in to change notification settings - Fork 10
Publication Manifest to EPUB Mapping
This document provides mappings between the Publication Manifest format and the EPUB 3 Package Document.
It does not include mappings for legacy or deprecated features of EPUB 3.
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
readingOrder | spine | Default progression through the content. EPUB uses references to the manifest, while the Package Document uses a list of resources. |
resources | manifest | Identifies the resources of the publication. The EPUB manifest is the complete set of resources, while Pub Manifest uses a union of readingOrder and resources. |
n/a | metadata | The publication manifest does not use a special grouping for metadata -- all terms other than the readingOrder and resources are the equivalent of the EPUB metadata. |
links | metadata/link | Linked resources. EPUB does not separate linked resources from the other publication metadata. |
(none | ||
) | collection | Collections are like mini-package documents within the package document. Accommodating them would require a manifest-like set of objects, presumably under a collections property. There seems to be limited to no uptake of collections in EPUB, however, despite a few specifications that use them (e.g., previews, indexes and dictionaries). |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
@context/language | package[@xml:lang] | Global manifest/package language declaration. |
@context/direction | package[@dir] | Global manifest/package direction declaration. |
term/language | metadata/meta[@xml:lang] | Local language overrides. |
term/direction | metadata/meta[@dir] | Local direction overrides. |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
id | package[@unique-identifier] - dc:identifier | Unique identifier for the publication. |
dateModified + id | release identifier | The release identifier technically doesn't exist as a property of the EPUB package document, but is a combination of the unique identifier and last modified date. A similar identifier can be constructed for a publication manifest if the corresponding properties are required by a profile. |
n/a | package/@version | The version number is static across major versions of EPUB so it isn't necessary to replicate or store in the manifest. |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
type | (none) | The type of publication. EPUB does not have an equivalent in the specification, but can be expressed as meta[@property=rdf:type]. |
conformsTo | dc:type | The profile the publication conforms to. EPUB uses reserved keywords instead of URLs for profiles. |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
LinkedResource/type | (none) | This is schema.org-specific metadata and is not (cannot) be represented in EPUB. |
LinkedResource/url | item[@href] and link[@href] | Location of the resource. No differences. |
LinkedResource/encodingFormat | item[@media-type] and link[@media-type] | Media type of the resource. No differences. |
LinkedResource/name | (none) | The ability to provide an accessible name for resources is lacking in EPUB. |
LinkedResource/description | (none) | The ability to provide an accessible description of resources is lacking in EPUB. |
LinkedResource/rel | item[@properties], link[@properties] and link[@rel] | The properties attribute is used in EPUB to identify characteristics of a resource but it is not an exact fit with link relations. The link element in EPUB includes a rel attribute, which is more directly equivalent, but link cannot be used for publication resources. |
LinkedResource/integrity | META-INF/signatures.xml | Signing of resources is done in the signatures.xml file in EPUB, not in the package document. |
LinkedResource/duration | meta[@property= media:duration][@refines=idref] | Duration of a resource. EPUB uses meta tags to associated a duration with a resource, whereas Pub Manifest can express the duration directly with the resource. |
LinkedResource/alternate | item[@fallback] | An alternate format representation of a resource. |
LinkedResource/alternate | item[@media-overlay] | Comparison of media synchronization to be reviewed when Synchronized Media document is completed. |
n/a | item[@id] and link[@id] | Resources in the publication manifest are not referenced by identifier, so an identifier attribute is not included. The manifest could be extended for compatibility purposes, if needed. |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
(none) | Linear Content | The publication manifest does not require non-linear content in the reading order, so does not distinguish it. |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
LinkedResource/rel= accessibility-report | link[@rel=a11y:certifierReport] | Accessibility report for the publication. EPUB use is defined in the Accessibility specification. |
LinkedResource/rel= contents | item[@properties=nav] | Identifies the document containing the table of contents. EPUB requires all navigation aids in the navigation document, so does not uniquely identify the resources within it. |
LinkedResource/rel= cover | item[@properties= cover-image] | EPUB only identifies cover images. Pub Manifest allows any resource to be identified as the cover. |
LinkedResource/rel= pageList | item[@properties=nav] | Identifies the document containing the page list. EPUB requires all navigation aids in the navigation document, so does not uniquely identify the resources within it. |
LinkedResource/rel= preview | dc:type=preview | A preview for the publication. EPUB use is defined in the Previews specification. EPUB defines entire publications as previews and also embeds previews using collections. |
LinkedResource/rel= privacy-policy | (none) | Privacy policy for the publication. EPUB does not have an equivalent in the specification, but could be expressed as link[rel=privacy-policy] once registered. |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
abridged | (none) | Whether the publication is abridged. EPUB does not have an equivalent in the specification, but can be expressed as meta[@property=schema:abridged]. |
creators (artist, author, etc.) | dc:creator, dc:contributor + meta[@role] | Creators of the publication. EPUB "refines" the DC elements to add roles. |
datePublished | dc:date | Date the publication was published. |
dateModified | dcterms:modified | Last modification date of the publication. |
duration | meta[@property= media:duration] | Total duration of the publication. |
inLanguage | dc:language | Language of the publication. |
name | dc:title | Title of the publication. |
readingProgression | spine[@page-progression-direction] | The content flow direction. EPUB's use is more specifically tied to the expected rendering (e.g., page loading for fixed layouts). |
url | (none) | Address of the publication. EPUB does not have an equivalent in the specification, but can be expressed as meta[@property=schema:url]. |
dc:* |
Dublin Core Optional Elements |
The following elements are not explicitly defined in the Publication Manifest specification: coverage, description, subject, format, relation, rights, source and subject. All of these can be included in a manifest, however, as the dc prefix is part of the initial context. |
n/a | meta[@scheme] | The scheme attribute was created for EPUB to identify where code values (e.g., subjects, creators) are defined. Whether and how this would be represented in a publication manifest needs investigation. |
EPUB 3 uses meta[@refines] and link[@refines] to tie together multiple related metadata statements, where the refines
attribute references the ID of another element in the package document. This mechanism was introduced because it was not possible to nest metadata elements and remains backwards compatible with EPUB 2. The attribute is unnecessary in a publication manifest as metadata is not forced to be flattened. It would be possible to combine/flatten structures during translation. |
The publication manifest specification can support EPUB's fixed layout metadata, as the properties are already in a specially-prefixed vocabulary, but no use case exists yet for them.
The same is true for the general properties defined in that vocabulary.
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
accessibilityFeature | meta[@property= schema:accessibilityFeature] | Accessibility features of the publication. EPUB use is defined in the Accessibility specification. |
accessibilityHazard | meta[@property= schema:accessibilityHazard] | Potential hazards from the content. EPUB use is defined in the Accessibility specification. |
accessibilitySummary | meta[@property= schema:accessibilitySummary] | Human-readable summary of the accessibility. EPUB use is defined in the Accessibility specification. |
accessMode | meta[@property= schema:accessMode] | Access modes of the content. EPUB use is defined in the Accessibility specification. |
accessModeSufficient | meta[@property= schema:accessibilityFeature] | Sufficient set(s) of access modes that allow consumption of the content. EPUB use is defined in the Accessibility specification. |
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
@context/{"prefix": "url"} | package[@prefix] | Ability to define prefixes to import terms from additional vocabularies. EPUB uses a single attribute with whitespace-separated prefix/url definitions, whereas in a publication manifest each prefix is separately defined in the context. |
LinkedResource/rel= describedby | link[rel=record] | Linked metadata records. The "record" relation used by EPUB is not registered with IANA. |