-
Notifications
You must be signed in to change notification settings - Fork 19
WP Principles
First of all, this text concentrates on WP at this point. PWP and EPUB4 may introduce some restrictions and additional features, but that is for later. Also, the references are on pull request on lifecycle because many issues and references are there. Obviously, the links below would have to change to the official draft if and when the PR is accepted for merge.
-
The major technical contribution of Web Publication is to introduce a collection of resources as one conceptual resource on the Web, ie, identifiable by a URL. The collection consists of all kinds of Web resources, and has metadata assigned to the collection as a whole. (Of course, individual resource may have their own metadata, for example, but that is not the concern of this group.) A Web Publication SHOULD be render-able both in browsers as well as by dedicated, stand alone applications.
-
Technically, the details of the collection and the related metadata are defined via the Information Set and its embodiment in a (JSON) manifest. This manifest is accessed via at least one dedicated HTML resource in the publication.
-
User Agents that display/render a WP work in a separate (conceptual) publication mode: in this mode, the agent provides a number of affordances that the Working Group defines. All those affordances are
- Related to the collection (e.g., continuous numbering, search, etc)
- Related conceptually to the single Web Publication only (e.g., this WG does not define whether and how an Agent creates a bookshelf)
- Related only to the resources within the Web Publication (i.e., it is not specified how the Agent handles resources that are not part of the Web Publication).
- Motivated by the use cases of publications (e.g., pagination)
- The WG defines which of those affordances are MUST-s as opposed to SHOULD-s for the publication mode.
- It is possible that in the first version of WP-s almost all the affordances are SHOULD-s and later versions, and/or EPUB4, defines them as MUST-s.
- It is possible that some affordances will not be mentioned in the first version of Web Publications and may be added in later versions.
The functionality of the publication mode is defined via the specification of the processed manifest and the affordances.
-
Conceptually, there is a separation of concerns between a Web Publication and a User Agent. This means that a Web Publication should be self-contained and should be render-able by a User Agent without any further additions. In practice this means that the Web Publication should be essentially declarative, with active components (like Javascript programs) only used for the enhancement of the content in a way suitable for that specific publication.
-
A publication MAY use a reference to a Javascript application (let us call it a WP Script) that implements a (minimally viable) publication mode on top of the OWP, and which MAY be used as a fall-back if the User Agent does not have such a mode built in. However:
- It is not required for the WP Script to be, formally, part of the Web Publication.
- User Agents that do have a publication mode built in SHOULD (MUST?) ignore the WP Script.
- The reference to the WP Script should be part of the resource(s) used to trigger the publication mode, or should be referenced from the manifest. The reference to the WP Script should be clearly identified as such (e.g., via a profile in the media type?)
- It is not expected, and not encouraged, that all publishers would develop their own WP Scripts; instead such scripts should be available for inclusion by any publishers and developed by third parties.
- It is expected (hoped?) that, eventually, the need for a WP Script will fade over the years.