Structure
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 Information
Language and Direction
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. |
Identifiers
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. |
Conformance
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
type |
meta[@property=rdf:type]
|
The type of publication. EPUB does not have an equivalent in the specification, but
can
be expressed as an rdf:type property. |
conformsTo | dc:type | The profile the publication conforms to. EPUB uses reserved keywords instead of URLs for profiles, so these properties are not perfectly compatible. |
Resources
Declarations
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] -> SMIL | Duration of a resource. EPUB only allows durations to be associated with SMIL files. |
LinkedResource/alternate | item[@fallback] | An alternate format representation of a resource. |
— | item[@media-overlay] | How media synchronization compares to EPUB cannot be determined until the 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. |
Importance
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
n/a | Linear Content | The publication manifest does not require non-linear content in the reading order, so does not distinguish it. |
Relations
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 |
link[@rel=privacy-policy]
|
Privacy policy for the publication. EPUB does not have an equivalent in the
specification,
but could be expressed using a link once registered. |
Metadata
General Metadata
Publication Manifest | EPUB 3 Package Document | Explanation |
---|---|---|
abridged |
meta[@property=schema:abridged]
|
Whether the publication is abridged. EPUB does not have an equivalent in the
specification, but can be expressed as schema:abridged property. |
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 |
meta[@property=schema:url]
|
Address of the publication. EPUB does not have an equivalent in the specification,
but
can be expressed as schema:url property. |
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. |
Metadata Association
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. |
Rendition Metadata
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.
Accessibility Metadata
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. |
accessibilityAPI | meta[@property= schema:accessibilityFeature] | The accessibilityAPI property is optional metadata not typically recommended anymore. It can be expressed in Publication Manifest using the corresponding schema.org property, but is not a part of the specification. |
accessibilityControl | meta[@property= schema:accessibilityControl] | The accessibilityControl property is optional metadata not typically recommended anymore. It can be expressed in Publication Manifest using the corresponding schema.org property, but is not a part of the specification. |
Extensibility
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. |
Examples
The following examples show EPUB 3 package documents that have been transformed into the publication manifest format: