注意

本文件為W3C於2019年05月08日發布之EPUB Packages 3.2的翻譯版本。此翻譯版本係由台灣數位出版聯盟(Taiwan Digital Publishing Forum, TDPF)自願翻譯,譯者盡可能維持英文原文本意與翻譯品質,唯翻譯內容仍可能有所錯誤。如有發現錯誤或不妥之處,請透過GitHub與譯者聯繫、修正或建立issue。

本翻譯文件僅供參考,唯一的正式版本請以W3C網站發布之英文原文版為準。

翻譯版本最後更新日期:2022年01月23日

EPUB包裝 3.2

最終社群小組規格

最新編輯草稿:
https://w3c.github.io/epub-specs/archive/epub32/spec/epub-packages.html
編輯:
Matt Garrish (DAISY Consortium)
Dave Cramer (Hachette Book Group)
前任編輯:
Markus Gylling (International Digital Publishing Forum (IDPF))
William McCoy (International Digital Publishing Forum (IDPF))
協助參與:
GitHub w3c/publ-epub-revision
提出問題
版本紀錄
修改要求

概要

本規格定義了一個EPUB® 包裝的語意與適用性需求。每個包裝代表了一本EPUB出版品的一項內容釋義,並且由包裝文件所定義,其敘述了內容釋義的內容並且設置了出版品資源如何產生關連的需求。

本規格也定義了EPUB導覽文件,一份可由機器讀取和人類閱讀的特化EPUB內容文件,能夠提供導覽協助,如:目次。

本規格屬於組成 [EPUB32] 的規格群之一,其為基於XML與Web標準的數位出版品交換與遞送格式。要了解整體EPUB 3規格,需要與其他規格一併閱讀且理解。

可參考 [EPUB32Changes] 以了解本規格與其前版本的差異資訊。

本文件狀態

本規格由EPUB 3社群小組所發表。並非W3C標準也不在W3C標準程序上。請注意本規格適用於W3C社群完整規範協議(FSA)。可進一步了解W3C社群與業界小組

如果你想要對本文件提出意見,請寄送到public-epub3@w3.org訂閱存檔)。

1. 導論

1.1 術語

專屬於EPUB 3的術語在本文件中以括號(譯注:英文版為首字大寫。範例如「作者」,「閱讀系統」)。術語與定義的完整清單提供於 [EPUB32] 。

每章節術語第一次出現時才會連結至其定義。

1.2 適用性

除了標註為非規範性的章節,本規格中所有製作指針、圖表、範例與注意事項都為非規範性。其餘本規格中的內容皆為規範性。

關鍵字:可以(MAY)必需(MUST)不得(MUST NOT) 選擇性(OPTIONAL)推薦(RECOMMENDED)應該(SHOULD)不應(SHOULD NOT)應該以 [RFC2119] 之記述解釋。

1.3 字首對應

為求方便,以下保留字首對應用於本規格中。

字首 URI
dcterms http://purl.org/dc/terms/
opf http://www.idpf.org/2007/opf
rendition http://www.idpf.org/vocab/rendition/#

2. 適用性

2.1 包裝適用性

一個合規的EPUB包裝必需滿足以下領域需求:

包裝文件

  必需包含唯一的包裝文件,其內容必需符合定義在內容文件—內容適用性中的需求。

出版品資源

  所有與包裝相關的出版品資源必需列於包裝文件(定義於宣告)。

EPUB導覽文件

  必需包含唯一的EPUB導覽文件,,其內容必需符合定義在EPUB導覽文件—內容適用性中的需求。

內容文件

  必需包含一或多個EPUB內容文件,個別內容必需符合定義於 [ContentDocs32] 中的需求。

CSS樣式表

  可以包含零或多個CSS樣式表,個別內容必需符合定義於CSS樣式表—內容適用性 [ContentDocs32] 中的需求。

發音辭典

  可以包含零或多個PLS文件,個別內容必需符合定義在PLS文件—內容適用性 [ContentDocs32] 中的需求。

媒體層疊文件

  可以包含零或多個媒體層疊文件,個別內容必需符合定義在 [MediaOverlays32] 中的需求。

額外資源

  可以包含零或多個以上所列外的出版品資源,個別必需遵守出版品資源 [EPUB32] 的需求。

2.2 閱讀系統適用性

EPUB閱讀系統必需滿足以下領域需求:

3. 包裝文件

3.1 導論

本章節為非規範性。

包裝文件是一份包含一組元素的XML文件,各元素分別包含EPUB包裝各特殊用途的資訊。這些元素提供了集中的詮釋資料,組成包裝之個別資源的細節,並且提供閱讀順序以及其他必要的資訊來處理內容釋義

以下列表歸納了能在包裝文件中取得的資訊:

3.2 內容適用性

一份包裝文件必需符合以下領域的需求:

文件特性

  必需符合定義在XML適用性 [EPUB32] 中的XML文件規定的適用性要求。

  必需符合包裝文件定義中所表達的內容適用性規定。

注意事項

有些內容適用性可以利用附錄A包裝文件綱要中提供的綱要來驗證內容文件進行檢查。

檔案特性

  包裝文件檔名應該使用副檔名.opf

包裝文件的MIME媒體類別為application/oebps-package+xml [RFC4839] 。

3.3 閱讀系統適用性

EPUB閱讀系統必需符合以下領域的需求:

處理

  必需符合包裝文件定義中閱讀系統適用性限制之規定。

  應該包裝顯示詮釋資料中所表述的方式處理顯示詮釋資料。

  必需固定版面特性中所表述的方式處理固定版面詮釋資料。

  當私有的詮釋資料特性,在行為上和固定版面特性中定義的特性語意有行為上的衝突時,必需忽略。

3.4 包裝文件定義

除另有指定,本章節所有定義的 [XML] 元素都在http://www.idpf.org/2007/opf命名空間 [XML-NAMES] 。

當定義在本章節中的元素有強制性文字內容,該內容在解釋的敘述中會提供元素的參考值。

3.4.1 package元素

package元素是包裝文件的根元素,並且定義了EPUB包裝的各面向資訊(參考導論以了解概要)。

元素名稱

package

用法

package元素是包裝文件的根元素。

屬性
內容模型

依此順序:

version屬性專用於指定EPUB規格版本,決定該EPUB包裝適用哪一版本。該屬性的值必需為「3.0」才能與本規格版本相容。

unique-identifier屬性以一個IDREF [XML] 用以對照哪一個提供的dc:identifier元素為偏好的、或主要的識別碼。請參照出版品識別碼以獲得更多資訊。

prefix屬性提供了一個字首的宣告機制,用於本規格保存的字首之外。請參考prefix屬性以獲得更多資訊。

3.4.2 共享的屬性

本章節提供共享屬性的定義(即為,兩個或多個元素都允許使用的屬性)。

dir

指定內容的行文方向,屬性值適用於使用該屬性的元素及其子孫元素。

原生行文方向透過 [Unicode] 來識別,且優先於本屬性。

准許使用的值為ltr(左到右)與rtl(右到左)

<packagedir="ltr">

可以用在:collection, dc:contributor, dc:coverage, dc:creator, dc:description, dc:publisher, dc:relation, dc:rights, dc:subject, dc:title, metapackage

href

對資源的絕對或相對IRI參照 [RFC3987] 。

<link rel="record"
      href="meta/9780000000001.xml" 
      media-type="application/marc"/>

可以用在:itemlink

id

元素的ID [XML] ,必需在該文件範圍內為唯一值。

<dc:identifier id="pub-id">urn:isbn:97800000000001</dc:identifier>

可以用在:collection, dc:contributor, dc:coverage, dc:creator, dc:date, dc:description, dc:format, dc:identifier, dc:language, dc:publisher, dc:relation, dc:rights, dc:source, dc:subject, dc:title, dc:type,item, itemref, link, manifest, meta, packagespine

media-type

媒體類型,用以識別所參照資源之類型與格式 [RFC2046] 。

<link rel="record"
      href="http://example.org/meta/12389347?format=xmp"
      media-type="application/xml"
      properties="xmp"/>

可以用在:item and link

properties

由空格分隔的特性值列表。

請參考各元素的定義以確認能用在屬性中的保留用語

<item id="nav" 
    href="nav.xhtml" 
    properties="nav"
    media-type="application/xhtml+xml"/>

可以用在:item, itemreflink

refines

用以識別元素的表意或為元素附加意義。屬性的值必須是相對IRI [RFC3987] ,以解釋參照的資源或元素。

refines屬性為選擇性,取決詮釋資料類別如何表述。當被忽略時,該元素定義了一個主要表述

可以用在:linkmeta

xml:lang

指定用於內容的語言,屬性值適用於該元素及其子孫元素。值定義於 [XML] 的2.12節語言識別中。

<packagexml:lang="ja"></package>

可以用在:collection, dc:contributor, dc:coverage, dc:creator, dc:description, dc:publisher, dc:relation, dc:rights, dc:subject, dc:title, metapackage

3.4.3 詮釋資料(metadata)

3.4.3.1 metadata元素

metadata元素涵納了該內容釋義的詮釋資訊。

元素名稱

metadata

用法

package必要的第一個子元素。

屬性

內容模型

依任何順序:

包裝文件的metadata元素有兩個主要功能:

  1. 提供最小限的詮釋資訊讓閱讀系統能用於內部對EPUB出版品的分類,以及對使用者呈現(例如,在書架上顯示)。

  2. 提供存取所有處理用必要詮釋資料的機制,用來控制排版及顯示該內容釋義的內容(例如:固定版面的特性)。

包裝文件並非設計供複雜詮釋資料編碼使用。若需要對一本EPUB出版品提供詳細的資訊,可利用link元素與詮釋資料記錄(合乎國際標準,例如 [ONIX] 或者各種特殊目的)進行關聯。這種做法讓詮釋資料能以其原生型態被處理,避免在轉譯成最小限包裝文件結構時產生潛在問題或丟失資訊。

為了維持這項理路,包裝文件僅需要以下最小限度的詮釋資料:必需包含 [DC11] titleidentifierlanguage元素加上 [DCTERMS] modified特性,所有其他的詮釋資料都為選擇性

meta元素提供了通用機制來包含各種用語的詮釋資料特性。一般可用來包含定義於EPUB規格中的處理用詮釋資料,但可以用於各種詮釋資料用途。

注意事項

請見 [EPUBAccessibility] 以了解無障礙輔助性詮釋資料建議。

3.4.3.2 DCMES必需元素
3.4.3.2.1 identifier元素

[DC11] 的identifier元素包含與該內容釋義相關的識別碼,例如UUIDDOIISBN

元素名稱

dc:identifier

命名空間

http://purl.org/dc/elements/1.1/

用法

metadata必要的子元素。

屬性
  • id [選擇性]

內容模型

文字

metadata區塊必需包含一個identifier元素,包含該內容釋義明確的識別碼。該識別碼必需package元素中透過unique-identifier屬性被標記為獨特識別碼

每一份內容釋義的獨特識別碼可以不同,且一份內容釋義可以包含額外的identifier元素。

為了區分同一EPUB出版品的不同版本,本規格切分出EPUB出版品用的獨特識別碼,以及發布識別碼用來辨識版本差異。

為了識別包裝後EPUB出版品的版本,發布識別碼可以透過組合獨特識別碼和該內容釋義的最後修改日期來建構。若要了解更多關於發布識別碼的語意以及要求,請參照發布識別碼章節。

無論內容釋義何時更動,都必需包含最新的更動日期。

為了辨別一個identifier是否適用於既有的系統或者是否獲得發行端的認證,閱讀系統應該檢查identifier-type特性

閱讀系統在處理元素的值之前,必需刪除前後的空白 [XML] 。

本規格對於識別碼沒有額外的限制與要求,但必需至少在刪除空白後需要有一個字元長。並且強烈建議識別碼為具完整品質的URI。

3.4.3.2.2 title元素

[DC11] title元素呈現了給予EPUB出版品的名稱。

元素名稱

dc:title

命名空間

http://purl.org/dc/elements/1.1/

用法

metadata必要的子元素。

屬性
內容模型

文字

metadata區塊必需包含至少一個title元素,包含EPUB出版品的標題。

閱讀系統必需按照文件順序識別第一個title元素作為該EPUB出版品的主要標題(即為最主要,要顯示給使用者的那一個)。本規格不定義如何處理額外的title元素。

每一份內容釋義的標題可以不同。

閱讀系統在處理值之前,必需刪除前後的空白 [XML] 。

本規格對於標題沒有額外的限制與要求,但必需至少在刪除空白後需要有一個字元長。

3.4.3.2.3 language元素

[DC11] language元素指定了該內容釋義內容所使用的語言。本質不會由內容釋義中的個別元素所繼承。

元素名稱

dc:language

命名空間

http://purl.org/dc/elements/1.1/

用法

metadata必要的子元素,可重複。

屬性

id [選擇性]

內容模型

文字

metadata區塊必需包含至少一個language元素,其值適用於 [BCP47] 。

額外的language元素可以被包含在多語文出版品中,但各個元素的值必需符合 [BCP47] 。文件中的第一個language元素被視為該內容釋義的主要語言。

每一份內容釋義的語言可以不同。

閱讀系統在處理值之前,必需刪除前後的空白 [XML] 。

3.4.3.3 DCMES選擇性元素
3.4.3.3.1 一般定義

除了identifierlanguagetitle外,所有其他 [DC11] 元素都設計為選擇性。這些元素需要符合以下通用定義:

元素名稱

contributor | coverage | creator | date | description | format | publisher | relation | rights | source | subject | type

命名空間

http://purl.org/dc/elements/1.1/

用法

metadata選擇性子元素,可重複。

屬性
  • dir [選擇性] – 僅允許用於contributor, coverage, creator, description, publisher, relation, rightssubject

  • id [選擇性] – 允許用於任何元素。

  • xml:lang [選擇性] – 僅允許用於contributor, coverage, creator, description, publisher, relation, rightssubject

內容模型

文字

每一份內容釋義選擇性 [DC11] 詮釋資料可以不同。

閱讀系統在處理值之前,必需刪除前後的空白 [XML] 。

所有選擇性 [DC11] 元素的值,必需至少在刪除空白後需要有一個字元長。

本規格除了以下章節的注意事項外,不變更 [DC11] 元素定義。

3.4.3.3.2 contributor元素

[DC11] 的contributor元素用於表現一個人、組織或其他名字,作為創造本EPUB出版品內容次要地位的角色。

contributor元素的要求,無論各種方面與對creator元素的要求一樣。

3.4.3.3.3 creator元素

[DC11] 的creator元素用於表現一個人、組織或其他名字,對本內容釋義之內容創作負責。可以附加role特性到本元素來指出創作者在內容創作中所扮演的功能角色。

creator元素應該包含作者作為創作者名,用以對使用者顯示。可以添加file-as特性來包含姓名正規化後的型態,以及alternate-script特性來呈現創作者以另一種語文或文字的名稱。

如果一本EPUB出版品有多於一位的創作者,每一位都應該以不同的creator元素包含於其中。

當決定顯示順序時,閱讀系統必需使用文件中metadata區塊裡creator元素的順序。第一個creator元素就是主要創作者。如果一個閱讀系統要顯示創作者詮釋資料給使用者時,若可能,就應該包含所有列於metadata區塊中的創作者(即為不考量顯示上的限制)。

次要貢獻者應該使用contributor元素來呈現。

3.4.3.3.4 date元素

[DC11] 的date元素必需僅用於定義該EPUB出版品的出版日期。出版日期和最後修改日期(該內容釋義的最後修改時間)不一樣。

推薦日期字串符合 [ISO8601] ,尤其是W3C日期與時間格式 [DateTime] 的子集表述,那樣的字串可同時供人類與機器讀取。

額外的日期應該使用 [DCTERMS] 用語集中特化之日期特性或者之類的來表達。

一份EPUB出版品的出版日期在所有副本中可以相同,也可以因為副本而有所不同。(若該EPUB出版品為應需產製)。

僅允許一個date元素。

3.4.3.3.5 subject元素

[DC11] 的subject元素用以識別該EPUB出版品的主題。該元素的值應該為人類閱讀用的標題或者標籤,但當主題語不提供分別的描述標籤時,可以為編碼的值。

作者可以使用authority特性來識別該系統或者綱要中該元素的值。

當綱要被識別時,主題編碼必需使用term特性來添加。

term特性不得在沒有指定綱要的狀況下連結在subject元素中。

subject元素的值與term特性在指定的綱要有所需求時,得區分大小寫。

3.4.3.3.6 type元素

[DC11] type元素用來識別EPUB出版品屬於哪種特化類別(即為,使用EPUB格式的註解或者字典)。

本元素所使用的特化EPUB出版品類別有一參考用的註冊檔,可以由 [TypesRegistry] 取得,但作者可以使用任何文字字串作為值。

3.4.3.4 meta元素

meta元素提供用於包含包裝詮釋資料的通用方式。

元素名稱

meta

用法

metadata元素的子元素,可以重複。

屬性
內容模型

文字

每個meta元素定義了詮釋資料表述。其property屬性包含了一個特性資料類別值來定義表述中的宣告,以及該元素的文字內容所代表的聲明(參考詞彙關聯機制以獲得更多資訊)。

本規格定義了兩種詮釋資料表述的類型,可以使用meta元素進行定義:

  • 主要表述」是透過meta元素定義的表述之一,用來建立EPUB出版品的某些面向。沒有refines屬性的meta元素可被定義為主要表述。
  • 次要表述」是透過meta元素定義的表述之一,透過refines屬性用以強化表述的意義或者參照到資源上。一個次要表述可能用以描述一段媒體片段的細節,例如,用以表述長度、透過定義該人物的角色來添加創作者或者貢獻者的表述。

次要表述不限於提供主要表述與資源的細節;還可以用於對其他次要表述添加意義,可用於創造資訊鏈。

注意事項

所有DCMES [DC11] 元素皆用於呈現主要表述,並且允許透過meta元素次要表述來強化。

本規格保留Meta特性用語用於property的屬性。由其他用語來的術語可以透過提供字首來使用(參考保留的字首以取得不需要宣告的字首清單)。

scheme屬性定義了系統或者綱要中元素的值來自何處。屬性的值必需特性資料類型能夠解析到定義該綱要的資源。如果一個閱讀系統不能辨識scheme的屬性值,其應該將元素的值視為字串。

閱讀系統應該忽略所有他們無法辨識的meta元素之property屬性。閱讀系統在遇到未知的表述時不可視為錯誤。

除非一項個別特性明確地定義了一項不同的空白字元正規演算法,閱讀系統在處理meta元素的值前,必需刪除所有開頭與結尾的空白 [XML] 。

每一項meta元素所表述的值在空白正規化後,必需至少為一字元長。

3.4.4 宣告(manifest)

3.4.4.1 manifest元素

manifest元素提供了出版品資源的窮舉清單,用以建構該內容釋義,每一項資源都由一個item元素所表示。

元素名稱

manifest

用法

package必要的第二個子元素,緊接在metadata之後。

屬性

id [選擇性]

內容模型

item [一或多個]

注意事項

本規格支援國際化資源名稱,所以參照出版品資源的元素與屬性接受IRI作為其值。為了與僅支援URI的舊版閱讀系統相容,資源名稱需要限制在ASCII字元集。

3.4.4.2 item元素

item元素代表了一項出版品資源

元素名稱

item

用法

manifest元素的子元素,可以重複。

屬性
內容模型

空白

每一個在manifest裡的item元素識別了一項出版品資源,於其href屬性中提供了IRI [RFC3987] 。IRI可以為絕對或者相對。在相對IRI的案例中,閱讀系統必需將包裝文件的IRI所在位置視為根路徑來解析為絕對IRI。這使得絕對路徑的IRI在manifest範圍中必需為唯一。

所有的出版品資源必需manifest中被參照,不分本地或者遠端資源。請參考出版品資源位置 [EPUB32] 以了解特別媒體類型資源位置的需求。

請注意manifest非自我參照:不得包含一個item元素參照到包裝文件自身。

item元素識別的出版品資源必需符合由其media-type屬性所提供的MIME媒體類型所適用之規格。核心媒體類型資源必需使用支援的媒體類別 [EPUB32] 中列出的媒體類別。

fallback屬性透過item元素的IDREF [XML] 來辨識可回退到的出版品資源。核心媒體類型資源可以適用回退。(例如為有腳本的內容文件提供靜態的替代內容)。外圍資源的回退需求定義在宣告回退中。

本規格保留EPUB宣告特性用語properties屬性使用。由其他用語集來的術語可以在添加字首的狀況下使用(請參考保留的字首以取得不需要宣告的字首清單)。

作者必需在本屬性中對每個出版品資源宣告所有可適用的描述性詮釋資料特性,這麼一來閱讀系統可以按照這些設定的特性對顯示進行最佳化(關閉某個排版處理或者使用回退)。閱讀系統必需忽視所有無法被辨識的描述性詮釋資料特性。

必需要有一個唯一的item使用nav特性宣告為EPUB導覽文件

media-overlay屬性使用IDREF [XML] 來識別用以解釋該item資源的媒體層疊文件。請參考包裝 [MediaOverlays32] 以了解更多資訊。

注意事項

manifest中的item元素順序不重要。內容文件的顯示序列由spine所提供。

範例

以下範例呈現僅包含核心媒體類型資源manifest

<manifest>
    <item id="nav" 
          href="nav.xhtml" 
          properties="nav"
          media-type="application/xhtml+xml"/>
    <item id="intro" 
          href="intro.xhtml" 
          media-type="application/xhtml+xml"/>
    <item id="c1" 
          href="chap1.xhtml" 
          media-type="application/xhtml+xml"/>
    <item id="c1-answerkey" 
          href="chap1-answerkey.xhtml" 
          media-type="application/xhtml+xml"/>
    <item id="c2" 
          href="chap2.xhtml" 
          media-type="application/xhtml+xml"/>
    <item id="c2-answerkey" 
          href="chap2-answerkey.xhtml" 
          media-type="application/xhtml+xml"/>
    <item id="c3" 
          href="chap3.xhtml" 
          media-type="application/xhtml+xml"/>
    <item id="c3-answerkey" 
          href="chap3-answerkey.xhtml" 
          media-type="application/xhtml+xml"/>    
    <item id="notes" 
          href="notes.xhtml" 
          media-type="application/xhtml+xml"/>
    <item id="cover" 
          href="./images/cover.svg" 
          properties="cover-image"
          media-type="image/svg+xml"/>
    <item id="f1" 
          href="./images/fig1.jpg" 
          media-type="image/jpeg"/>
    <item id="f2" 
          href="./images/fig2.jpg" 
          media-type="image/jpeg"/>
    <item id="css" 
          href="./style/book.css" 
          media-type="text/css"/>   
    <item id="pls" 
          href="./speech/dict.pls" 
          media-type="application/pls+xml"/>
</manifest>
3.4.4.3 宣告回退

外圍資源在無法提供固有回退之下,也可以於脈絡中參照(例如,直接來自列於書脊itemref元素;來自XHTML內容文件的 [HTML] imgiframe以及link元素;以及來自CSS樣式表中的@import規則)。但這些狀況都必需提供宣告回退。

宣告回退使用宣告item元素中的fallback屬性來呈現出版品資源。fallback屬性的IDREF [XML] 值必需解析到另一項manifest中的item。回退item自身可以指定另一個回退item,以此類推。

所有ID參照的順序清單可以從某一個項目的fallback屬性開始,代表了該項目的「回退鍊」。該回退鍊中的資源順序代表了作者希望的回退順序。如果閱讀系統支援回退鍊中的多個出版品資源,可以基於該資源的指定特性選擇其一,不然就應該尊重作者希望的回退順序。如果閱讀系統不支援任何回退鍊中的資源,則必需警告讀者該內容無法被顯示。

回退鍊必需適當地符合以下要求其一:

回退鍊不得包含任何item元素的循環或者自身參照。使用者端遇到第一個曾被辨識的參照元素時,就必需中止回退鍊。

回退也可以用於為EPUB內容文件的頂層內容文件;閱讀系統可以選擇活用這樣的回退機制以找尋到所給予脈絡中最適宜的內容文件版本。活用這項功能的範例,如提供具備腳本內容的回退 [ContentDocs32] 。

3.4.4.4 bindings元素 (不再推薦)

bindings元素定義了一系列對本規格不支援媒體類型的處理程序。不再推薦使用。

請參考 [Publications301] 了解本元素的更多資訊。

3.4.5 書脊(spine)

3.4.5.1 spine元素

spine元素定義了宣告中item參照的排序清單,表達該內容釋義的預設閱讀順序。

元素名稱

spine

用法

package必要的第三個子元素,緊接在manifest之後。

屬性
內容模型

itemref [一或多個]

閱讀系統必需提供方法來按照定義在spine中的順序處理排列內容釋義版面,包括:1)辨識第一個主要itemref做為預設閱讀順序的開始,以及2)按照spine給出的順序接續第一個項目處理排版。

所有透過超連結到列於spine中出版品資源的出版品資源必需列於spine之中,超連結定義為任何會引導使用者從現在資源中跳出的連結機制。一般的超連結機制包含 [HTML] 中a以及area元素和腳本化連結(例如使用DOM事件及/或form元素)的href屬性。對列出超連結資源的需求可遞迴適用(即為,所有的出版品資源連結到的出版品資源都需要被列出,以此類推)。

所有EPUB導覽文件超連結到的出版品資源也必需要列於spine,無論導覽文件自身是否被列於spine

注意事項

透過超連結參照的遠端資源並非出版品資源,所以不是需要包含於書脊的需求中的對象(例如網頁與資源)。

嵌入出版品資源(例如,透過 [HTML] iframe元素)不需要列於spine中。

page-progression-direction屬性設定了全域的內容行進方向。可接受的值為ltr(左向右)、rtl(右向左)以及default。當辨識為default時,代表作者沒有偏好,所以閱讀系統可以選擇排版方向。default必需假設該屬性沒有指定。於此狀況下,閱讀系統應該基於第一個language元素,挑選一個預設的page-progression-direction

因為page-progression-direction屬性設定了全域的行進方向,個別以及部分內容文件可以複寫該項設定(例如透過CSS writing-mode特性)。閱讀系統可以提供機制以覆蓋預設方向(例如,透過按鍵或者設定來允許套用替代樣式表)。

閱讀系統必需忽略pre-paginated的XHTML內容文件的行頁方向。page-progression-direction屬性定義了固定版面頁面到下一頁的行進方向。

遺存toc屬性使用IDREF [XML] 識別宣告項目中的NCX

3.4.5.2 itemref元素

spineitemref子元素表示出版品資源的順序清單(一般EPUB內容文件)。itemref元素的順序定義了該內容釋義預設的閱讀順序。

元素名稱

itemref

用法

spine元素的子元素,可以重複。

屬性
內容模型

空白

每一個itemref元素必需參照宣告中的獨特item,其ID [XML] 需要與其idref屬性的IDREF [XML] 一致。(即是,不能有兩個或以上的idref元素參照相同的item)。

每一個被參照的宣告item必需同時為a)一個EPUB內容文件或者b)另一種類型的出版品資源其無論是否為核心媒體類型資源或者外圍資源,都必需在其回退鍊中包含一個EPUB內容文件。

注意事項

雖然EPUB出版品需要包含一個EPUB導覽文件,但不強制包含在spine之中。

linear屬性指示是否參照的item包含建構主要閱讀順序的內容,以及是否要被依序閱讀(「yes」),或者為用來增強補添主要內容的輔助內容,並且可以在序列之外被存取「"no」)。輔助內容範例包括:注意事項、解說以及答案表等。

linear屬性讓閱讀系統得以分別內容是否為預設閱讀順序中使用者需要存取的一部分,或者可能是補充用內容,例如,顯示一個跳出視窗或者從聲音處理中跳過。

當處理一本EPUB出版品時,閱讀系統可以跳過非linear的內容,而不會出現在預設閱讀順序,也可以忽視linear屬性,讓使用者接觸整本EPUB出版品的全部內容。本規格不強制規定閱讀系統需使用何種模型。閱讀系統也可以提供選項,讓使用者於兩種模型間切換。

每一份內容釋義都必需包含至少一個itemref,其linear屬性的值為未標示或者明確指定為「yes」,一個沒有linear屬性的linear可推斷其值為「yes」。

作者必需提供存取所有非線性內容的方法(例如,內容內加入超連結或者透過EPUB導覽文件)。

本規格保留EPUB書脊特性用語properties屬性使用。由其他用語來的術語可以在添加字首的狀況下使用(請參考保留的字首以取得不需要宣告的字首清單)。

所有定義於書脊特性用語中,適用的描述性詮釋資料特性應該被宣告。

閱讀系統必需忽視所有在properties屬性中表述,無法辨識的詮釋資料特性。

範例

3.4.6 集合(collections)

3.4.6.1 collection元素

collection元素定義了一組相關的資源。

元素名稱

collection

用法

package選擇性的第六個元素,可以重複。

屬性
內容模型

依此順序:metadata [零或一個] , ( collection [一或多個] 或 ( collection [零或多個] , link [一或多個] ))

collection元素能夠將資源組成邏輯上的群組供各種潛在用途使用:讓被切分為多個EPUB內容文件的內容重組為一個有意義的單元(例如跨多文件的索引)、識別供特殊目的使用的資源(例如預覽內容),或者將資源組合在一起來表示該內容釋義的附加資訊。

collection元素,如本章節定義,呈現一個通用的框架來取得特化的內容(例如,透過EPUB子規格)。這些特化的內容必需在內容釋義中定義collection元素的目的,也得在製作與使用上符合需求(特別是不同於以下所列通用框架的規則)。

每一個特化的內容都必需定義一個角色值,在所有適用的collection元素中為唯一識別。包裝文件中每一個collection元素的角色必需在其role屬性中被指定,其值必需為一或多個NMTOKENs [XMLSCHEMA-2] 及/或絕對IRIs [RFC3987] 。為角色所保留的NMTOKEN的值並未定義在EPUB中,而由 [RoleRegistry] 所維護。未定義在其中的NMTOKEN值不合規,本章節不定義任何角色。

第三方可以collection元素定義客製化角色,但這些角色必需使用絕對IRIs來指定。客製化角色不得在其指定IRI的託管方元件(host component)中包含字串「idpf.org」。

注意事項

為了協助跨閱讀系統的客製化角色互通性,強烈鼓勵實作者在將實際使用collection元素的狀況登記於 [RoleExtensions] 。

作為collection選擇性子元素metadata爲包裝metadata元素的挪用,唯需遵循以下語法與語意的差異:

collection可以透過包含一或多個子collection元素來定義子集合。

  • rel屬性為選擇性

  • properties屬性也接受沒有字首的宣告item特性(即為,如此集合中可以宣告自己的導覽文件或者封面圖片)。

  • 不得附加refines屬性。

每一個link元素必需參照到屬於該群組的資源。link元素的順序不具重要意義。

collection元素的特化可以透過定義於以上的需求來更有效地調整,以反映其需求(例如,要求詮釋資料、對於元素與屬性的使用賦予進一步的限制,或者讓link元素的順序更為明顯)。然而,最終的內容模型必需為合乎規定的本章節定義子集之一(例如特化不可以提出新的元素或者屬性,或者重新提出前面禁止使用的元素)。特化不得定義集合來覆蓋manifestspine的需求。

在本規格的脈絡下,閱讀系統對集合的支援為選擇性。閱讀系統必需在無法辨識所定義角色的狀況下忽略該collection元素。

處理內容釋義時不得依賴對collection元素的辨識。內容必需在沒有資訊丟失或者其他明顯瑕疵的狀況下,能被使用者所閱讀。

範例

3.4.7 遺存(Legacy)

3.4.7.1 meta元素

meta元素 [OPF2] 是一個遺存功能,之前用來包含通用性詮釋資料的手段。在EPUB 3中被更新的meta元素所取代,使用不同的屬性也要求文字內容。

若要了解更多關於meta元素,請參考 [OPF2] 中的定義。

3.4.7.2 guide元素

guide元素 [OPF2] 是一個遺存功能,之前為EPUB出版品提供機器可處理的關鍵結構導覽。在EPUB 3中被導覽文件landmarks所取代。

若要了解更多關於guide元素,請參考 [OPF2] 中的定義。

3.4.7.3 NCX

NCX [OPF2] 是一個遺存功能,之前為EPUB出版品提供目次。在EPUB 3中被導覽文件所取代。

若要了解更多關於NCX,請參考 [OPF2] 中的定義。

4. 包裝詮釋資料

4.1 出版品識別碼

4.1.1 獨特識別碼

作者有必要在包裝文件的詮釋資料中包含一個主要識別碼,每一本EPUB出版品都需要獨特的識別碼。獨特識別碼,無論是自己挑選或者派發,都必需保存在dc:identifier元素中,並且在package元素的unique-identifier屬性中被參照為獨特識別碼。

儘管並非固定,一本EPUB出版品的獨特識別碼應該盡可能地不受變更。新的識別碼不應在更新詮釋資料、勘誤、或者其他對EPUB出版品的小修改時發行。

閱讀系統不得依靠獨特識別碼作為辨識EPUB出版品的唯一依據。若要判斷是否兩個擁有同樣獨特識別碼的EPUB出版品是否為同一份出版品(見發布識別碼)還是不同出版品,可能需要檢查其他詮釋資料,如書名或者作者。

4.1.2 發布識別碼

EPUB出版品獨特識別碼一般不應隨著包裝或其內容的小更改而變動,獨特識別碼預期要最大限地持續使用,無論作為參照或者發行使用。但一本EPUB出版品每次發行的新版都需要被識別為獨特的新版本,故此,結論上需要一個可以被信任及可以變更的獨特識別碼。

為了在不變更獨特識別碼的狀況下處理辨識小改版與發行的問題,本規格定義了「發布識別碼(Release Identifier)」的語意,用以作為區別及依序排列具同一獨特識別碼的EPUB出版品之手段。

發布識別碼並非在包裝metadata區塊中的實際特性,而是從詮釋資料中其他兩個強制性的部分所取得的值:獨特識別碼與內容釋義最後修改日期。當一起取得時,所結合的值可以作為一個獨特識別用以區別EPUB出版品的不同版本。

為確保發布識別碼能被建構,每一個內容釋義必需包含唯一的 [DCTERMS] modified特性包含其最後修改日期。該特性的值必需為一個 [XMLSCHEMA-2] 日期時間,適用以下形式:

CCYY-MM-DDThh:mm:ssZ

最後修改日期必需以世界協調時間(UTC)表述,也必需以「Z」(Zulu)時區識別碼作結。

額外的modified特性可以包含在包裝詮釋資料中,但必需有不同主題(例如,需要透過refines屬性參照到一個元素或者資源)。

儘管並非包裝詮釋資料的一部分,為了參照或其他用途,所有識別碼的字串表現形式都必需使用at符號(@)作為區分來建構(例如,以此形式「id@日期」。當連結字串時,空白不得包含在內。

注意區分符號可以出現在獨特識別碼中,這些識別碼可以為任何字串值。發布識別碼結果上要分解成組成元件時,必需以最後一個at符號來分割。

發布識別碼不能取代獨特識別碼,但能供遞送通路以及閱讀系統用以辨別相同EPUB出版品的不同版本。在不具這樣精確的識別碼知識時,也應用了格式中的時間標記來依序、依時序排列。

發布識別碼結果上允許一組EPUB出版品能被檢驗並且判斷他們是否為同一本出版品的相同版本、或為同一本EPUB出版品的不同版本,或為相似但不同EPUB出版品的組合。

注意事項

當一個EPUB容器包含一個EPUB出版品多於一個的內容釋義時,請在每次發布時更新預設內容釋義的最後修改日期 — 就算沒有更新 — 也能助於確保EPUB出版品不會和前一次發布的版本被視為相同,閱讀系統僅需處理預設內容釋義。

4.2 用語關聯機制

4.2.1 導論

本章節為非規範性。

propertypropertiesrelscheme屬性使用特性資料類型來表達取自詮釋資料用語集的術語。和CURIE [RDFA-CORE] 類似,特性資料類型可以一組IRI [RFC3987] 作為表達的精簡形式,簡化從標準化用語集製作的詮釋資料的程序。

特性值為包含字首以及參照的表述,其字首 — 無論是字面還是隱含 — 是對應到一個IRI的縮寫,通常可解析到一個用語中的術語。當字首轉化到其IRI表述並且與參照結合時,結果可使IRI被正常地解析為用語集中的斷片,其包含該術語之人讀及/或機讀的資訊。

為協助閱讀系統處理特性值,本規格定義了三種機制來建立IRI與字首的對應:

  • 預設用語 — 定義當特性值不包含字首時該如何映射;

  • 保留的字首 — 這些映射為預先定義(即為,所有閱讀系統都應該識別)且可不需宣告而使用;以及

  • prefix屬性 — 用以在根package元素宣告新字首對應的方法。

4.2.2 預設用語

預設用語為不需要宣告字首就可以使用的用語,而其術語必需不加字首。

包裝文件有著多個彼此無相關的詮釋資料術語用法,並不能為所有屬性定義單一的預設用語集。所以,定義了不同的預設用語集供接受特性資料類型的屬性使用,如下所示:

  • Meta特性用語定義作為meta property屬性的預設用語。

    若屬性的值不包含字首,則必需要從以下IRI [RFC3987] 主幹中獲得結果IRI:http://idpf.org/epub/vocab/package/meta/#

  • 詮釋資料連結用語定義作為link rel以及properties屬性的預設用語。

    若其中任何屬性的值不包含字首,則必需要從以下IRI [RFC3987] 主幹中獲得結果IRI:http://idpf.org/epub/vocab/package/link/#

  • 宣告特性用語定義作為item properties屬性的預設用語。

    如果其中任何屬性的值不包含字首,則必需要從以下IRI [RFC3987] 主幹中獲得結果IRI:http://idpf.org/epub/vocab/package/item/#

  • 書脊特性用語定義作為itemref properties屬性的預設用語。

    如果其中任何屬性的值不包含字首,則必須要從以下IRI [RFC3987] 主幹中獲得結果IRI:http://idpf.org/epub/vocab/package/itemref/#

與這些用語連結的IRI們不得使用prefix屬性指派字首。

4.2.3 保留的字首

本規格保留以下字首組,作者可以用於包裝詮釋資料而不需宣告。

警告

儘管保留字首是為了製作時的便利,依賴他們會造成相容性問題。例如,驗證工具可能經常性地推回新的字首直到更新。強烈建議作者宣告所有字首以避免這些狀況發生。

字首 IRI
a11y http://www.idpf.org/epub/vocab/package/a11y/#
dcterms http://purl.org/dc/terms/
marc http://id.loc.gov/vocabulary/
media http://www.idpf.org/epub/vocab/overlays/#
onix http://www.editeur.org/ONIX/book/codelists/current.html#
rendition http://www.idpf.org/vocab/rendition/#
schema http://schema.org/
xsd http://www.w3.org/2001/XMLSchema#

閱讀系統必需以其預定義的URI來解析所有用於包裝文件的保留字首,除非宣告了本地字首。保留字首不應prefix屬性中被覆蓋,但閱讀系統必需當遇到這些本地覆蓋時必須套用。

當保留字首有變更時,閱讀系統不會總能同步更新,閱讀系統遇到無法辨識的字首時,不得視為錯誤(即為,既非保留,也未使用prefix屬性宣告)。

4.2.4 prefix屬性

prefix屬性定義了本規格未保留附加的字首映射。

prefix屬性的值是由空白分隔的清單,內有一或多個字首與IRI的映射,以此形式:

(EBNF productions ISO/IEC 14977)
所有結束符號位於Unicode區塊「基本拉丁字母區」(U+0000 to U+007F)。
prefixes = mapping , { whitespace, { whitespace } , mapping } ;  
mapping = prefix , ":" , space , { space } , ? xsd:anyURI ? ;  
prefix = ? xsd:NCName ? ;  
space = #x20 ;  
whitespace = (#x20 | #x9 | #xD | #xA) ;  

為了避免衝突,prefix屬性不得宣告映射到預設用語的字首。如果prefix屬性包含對預定義字首的宣告,閱讀系統必需使用prefix屬性中的URI映射定義,無論預定義的字首是否映射到相同的URI。

不得宣告「_」字首,該字元已被供未來處理RDFa [RDFA-CORE] 相容性所保留。

為了保障包裝文件未來對替代序列化的相容性,不得prefix屬性宣告供都柏林核心集使用的字首 /elements/1.1/namespace [DCTERMS] 。作者必需僅使用准許在包裝文件詮釋資料中使用的DC11] 元素。

4.2.5 特性(property)資料類別

4.2.5.1 語法

特性資料類型是一個用於表述一個IRI [RFC3987]的精簡的方法,也可透過分號添加選擇性的字首。

(EBNF productions ISO/IEC 14977)所有結束符號位於Unicode區塊「基本拉丁字母區」(U+0000 to U+007F)。
property = [ prefix , ":" ] , reference;  
prefix = ? xsd:NCName ? ;  
reference = ? irelative-ref ? ; /* as defined in [RFC3987]  */

特性資料類型由定義在 [RDFA-CORE] 的CURIE資料類型延伸,表現為CURIEs的子集。

處理之後,該特性可透過以下IRI擴張:

http://purl.org/dc/terms/modified

dcterms:字首為保留字首映射到IRI "http://purl.org/dc/terms/"。

當一個字首在特性值中被忽略,所表達的參照代表了來自預設用語供該屬性使用的術語。

空白字串不表示合規的特性值,就算合乎以上定義亦然。

4.2.5.2 處理方式

閱讀系統必需遵循以下規則來從特性中建立IRI [RFC3987] :

  • 如果特性僅包含參照,IRI透過連結其IRI主幹讓預設用語與參照產生關聯。

  • 如果特性包含一個字首和參照,IRI透過連結其IRI主幹讓字首與參照產生關聯。如果沒有對應的字首被定義,該特性為不合規,必需被忽視。

結果得到的IRI必需合乎 [RFC3987] 。然而,閱讀系統不需解析該IRI。

4.3 包裝顯示詮釋資料

4.3.1 導論

本章節為非規範性。

並非所有的顯示資訊都能透過EPUB建立時所依靠的技術。例如,儘管HTML與CSS提供了強大的排版能力,但這些能力受到文件排版目標的限制。

本章節定義了一般目的的特性,允許作者表示包裝層級的顯示意圖(例如,僅能由EPUB閱讀系統所實作的功能)。如果閱讀系統支援所期望的顯示效果,這些特性可讓使用者看到作者理想上設計的內容。

4.3.2 參考

這些特性所參照的基礎IRI為:http://www.idpf.org/vocab/rendition/#

rendition:」字首為了包裝顯示特性而保留,不需於包裝文件中宣告。

4.3.3 一般特性

4.3.3.1 rendition:flow特性

rendition:flow特性指定作者的偏好,讓閱讀系統知道該怎麼處理內容流動。

4.3.3.1.1 用法

rendition:flow特性meta元素中指定時,其指出作者偏好對全域內容進行流動處理(如,對所有書脊項目)。作者可以指示偏好為動態分頁或者捲軸顯示。對捲軸顯示內容,也可以指示是否連續的EPUB內容文件要被一起排版作為連續顯示的捲軸,或者該被分別排版顯示(例如,中間有著動態分頁)。

如果閱讀系統支援指定的排版顯示,其應該使用該方式處理流動內容,但可以提供選項讓使用者覆蓋所要求的排版方式。

當在metadata區塊中,沒有meta元素包含本特性時,閱讀系統必需推測預設值auto為全域值。閱讀系統可以僅支援此預設值。

如果閱讀系統支援rendition:layout特性,則在一個書脊項目被指定rendition:layout值為pre-paginated時,必需忽略rendition:flow特性。

請注意當兩個可重排的EPUB內容文件依序出現在書脊時,預設對其 [HTML] body元素的排版處理須為一致,當遇到page-break-before [CSSSnapshot] 特性時,必須被設定為always。此外,在使用rendition:flow特性時,作者可以透過合適的樣式表宣告覆蓋其特性,只要閱讀系統支援這樣的覆蓋。

rendition:flow不得被宣告超過一次。

4.3.3.1.2 允許的值

以下值定義可供rendition:flow特性使用:

paginated

閱讀系統應該將所有流動內容動態分頁。

scrolled-continuous

閱讀系統應該將所有具流動內容的內容文件設定為捲軸顯示,EPUB出版品由其內容釋義表現應該被呈現為一個連續捲軸,由一個書脊項目往下一個項目(除了部分覆蓋之外)。

請注意作者不應製作區塊流動方向不同資源的出版品,這樣連續捲動的內容釋義在EPUB閱讀系統中會出問題。

scrolled-doc

閱讀系統應該將所有具流動內容的內容文件設定為捲軸顯示,每一個書脊項目應該被呈現為分隔的捲軸文件。

auto

作者對於流動處理沒有偏好。閱讀系統可以將流動內容以其預設方式或者使用者設定,取任一可適用者排版呈現。

4.3.3.1.3 覆蓋書脊

作者可以對書脊itemref元素個別指定以下特性來讓書脊項目覆蓋全域值

flow-auto
指定作者對流動內容處理沒有特別偏好。
flow-paginated
指定作者偏好對流動內容採動態分頁。
flow-scrolled-continuous
指定作者偏好對流動內容提供捲軸顯示,同時接續的書脊項目有此特性,要被排為連續捲軸。
flow-scrolled-doc
指定作者偏好對流動內容提供捲軸顯示,同時每個書脊項目有此特性,要被排成分隔的捲軸文件。

每一個書脊項目都僅允許使用一個特性覆蓋。

rendition:flow-scrolled-continuous特性,捲軸方向定義關聯在itemref元素所參照的XHTML內容文件之根元素之區塊流動方向。如果當區塊流動方向向下(由上而下),捲軸方向就為垂直。如果根元素的區塊流動方向是向右(由左而右)或者向左(由右而左),就為水平。

4.3.3.1.4 範例
4.3.3.2 rendition:align-x-center特性

rendition:align-x-center特性指定了該書脊項目在顯示範圍中或者跨頁時,應該要被水平置中。

rendition:align-x-center特性在書脊項目中設定時,其指出了,若可以適用,內容排版在顯示範圍(Viewport)或者跨頁應該被水平置中。本項特性並不影響書脊項目的排版,僅影響內容盒中的位置。

對可重排的內容而言,閱讀系統支援這項特性則必需讓每一個虛擬頁面都置中。

本版規格未定義當本特性不受支援,或未指定時預設的排版行為。閱讀系統可以以自己的設計排列處理書脊項目。

注意事項

本特性開發主要用於處理"Naka-Tobira (中扉)"(章節標題頁),因為內容排版缺乏可靠置中控制項。CSS對分頁媒體的支援仍在進步,所以,本特性預期會不再支援。鼓勵作者在可以使用CSS方案處理時改用。

4.3.4 固定版面特性

4.3.4.1 導論

本章節為非規範性。

EPUB文件,不像印刷書或者PDF檔案,是為了變動而設計。內容流動或者可重排以適應螢幕或者使用者需求。如同排版與CSS的注意事項「內容呈現要適應讀者,而不是讓讀者得要適應特別的內容呈現。」 [EPUB3Overview]

但本原則不適用於所有類型的文件。有時候內容與設計彼此交纏而無法切分。任何對外觀的變更都可能改變意義或者失去所有意義。固定版面文件提供作者對呈現上更大的控制權,尤其在重排EPUB不適合該內容時。

本章節定義了一組詮釋資料特性,在EPUB脈絡下,允許宣告性表述固定版面文件的預期排版處理行為。

注意事項

EPUB 3具備顯示固定版面內容的多重機制。當固定版面內容有必要時,作者對機制的選擇將取決於多種要素,包括希望的精準程度、檔案大小、無障礙功能等。本章節不試圖對作者如何做選擇做出指導。

4.3.4.2 rendition:layout特性

rendition:layout特性指定了該內容釋義為重排或者預先分頁。

4.3.4.2.1 用法

rendition:layout特性meta元素中指定時,其指示了整個內容釋義該為分頁或者重排版面形式(即套用於所有書脊項目)。

當在metadata區塊中沒有meta元素具備這項特性時,EPUB閱讀系統必需推測為預設值reflowable並套用到全域。

rendition:layout特性設定為pre-paginated時,閱讀系統不得在排版同步跨頁中加入調整內容的空白隙縫。

當書脊項目的值設定為pre-paginated時,其內容空間必需被設定如固定版面的定義 [ContentDocs32] 。

rendition:layout特性不得被宣告多於一次。

4.3.4.2.2 允許的值

以下值被定義供rendition:layout特性使用:

reflowable

該內容釋義不是預先分頁。閱讀系統可以在排版處理時套用動態分頁。

pre-paginated

該內容釋義為預先分頁。閱讀系統必需在排版處理時將每一個書脊itemref處理成正好一頁。

注意事項

閱讀系統一般限制或者拒絕套用使用者或者使用者代理樣式表到預先分頁的文件上,所以,這樣的文件得依靠固有特性,動態樣式變更極容易造成非預期的結果。作者選擇使用預先分頁來取代重排內容時,需要對這樣限制造成的使用性以及無障礙輔助性的負面結果做出考量。請參考指南1.4 — 提供文字組態 [UAAG20] 以獲得相關資訊。

4.3.4.2.3 覆蓋書脊

作者可以對書脊itemref元素個別指定以下特性來覆蓋書脊項目的全域值

layout-pre-paginated
指定該書脊項目為預先分頁。
layout-reflowable
指定該書脊項目為重排內容。

一個書脊項目僅允許套用其中一個覆蓋。

4.3.4.2.4 範例
4.3.4.3 rendition:orientation特性

rendition:orientation特性指定作者希望該內容釋義排版時的頁面方向。

4.3.4.3.1 用法

當在meta元素中指定了rendition:orientation特性時,其指定的方向套用到內容釋義全域(即為,所有書脊項目)。

當在metadata區塊中沒有meta元素指定本特性時,閱讀系統必需推測為預設值auto,並設定為全域值。

rendition:orientation特性不得宣告多於一次。

4.3.4.3.2 允許的值

以下值被定義供rendition:orientation特性使用:

landscape

該內容釋義指示排版成landscape(橫寬直窄)。

portrait

該內容釋義指示排版成portrait(橫窄直寬)。

auto

該內容釋義不指定方向。

支持多重頁面方向的閱讀系統應該傳達作者意圖表現的頁面方向給使用者,除非給出的值為auto。意味由實作機制來判斷其想傳達的意圖。

4.3.4.3.3 覆蓋書脊

作者可以對書脊itemref元素個別指定以下特性來覆蓋書脊項目的全域值

orientation-auto
指定閱讀系統可決定如何排列書脊項目的方向。
orientation-landscape
指定該書脊項目應該以landscape(橫寬直窄)方向排列。
orientation-portrait
指定該書脊項目應該以portrait(橫窄直寬)方向排列。

一個書脊項目僅允許套用其中一個覆蓋。

4.3.4.3.4 範例
4.3.4.4 rendition:spread特性

rendition:spread特性指示該內容釋義在閱讀系統同步跨頁行為的意圖。

4.3.4.4.1 用法

rendition:spread指定於meta元素時,其指定了套用內容釋義全域的同步跨頁行為的意圖(即為,所有書脊項目)。

當在metadata區塊中沒有meta元素指定本特性時,閱讀系統必需由推測為預設值auto,並設定為全域值。

rendition:spread特性不得宣告多於一次。

4.3.4.4.2 允許的值

以下值被定義供rendition:spread特性使用:

none

閱讀系統不得對包含的書脊項目做同步跨頁。

landscape

閱讀系統只有在裝置為landscape(橫寬直窄)方向時,應該對書脊項目以同步跨頁呈現。

portrait(不再推薦)

不再推薦僅於portrait(橫窄直寬)方向時跨頁。

建議作者使用「both」值取代,如此跨頁不僅在portrait方向時可以讀,在landscape時也可讀。閱讀系統應該將「portrait」值視為「both」的同義詞,無論方向都創造跨頁。

both

閱讀系統應該不管裝置方向都排版成同步跨頁。

auto

不指定明確的同步跨頁行為。閱讀系統可以在指定或所有裝置方向使用同步跨頁,作為內容顯示區域最佳化利用的處理程序。

注意事項

當同步跨頁用於HTML及SVG內容文件的脈絡時,透過viewport meta元素 [ContentDocs32] 以及viewBox屬性 [ContentDocs32] 提供的空間代表跨頁中一頁的尺寸,應予尊重。

注意事項

請參考書脊以獲得關於全域流動方向宣告的資訊,包括使用page-progression-direction屬性,以及在內容文件中指定個別page-progression-direction

4.3.4.4.3 覆蓋書脊

作者可以對書脊itemref元素個別指定以下特性來覆蓋書脊項目的全域值

spread-auto
指定閱讀系統決定何時該對書脊項目做同步跨頁。
spread-both
指定閱讀系統應該在portrait與landscape兩方向都對書脊項目做同步跨頁。
spread-landscape
指定閱讀系統應該僅在landscape方向對書脊項目做同步跨頁。
spread-none
指定閱讀系統不應對書脊項目做同步跨頁。
spread-portrait
spread-portrait特性不再推薦。請參考 [Publications301] 之定義以獲得更多資訊。

一個書脊項目僅允許套用其中一種覆蓋。

4.3.4.4.4 範例
4.3.4.5 rendition:page-spread-*特性
4.3.4.5.1 用法

當閱讀系統進行同步跨頁排版時,預設行為是填充跨頁,透過將次一個EPUB內容文件排版放置到次一個未被填充的顯示範圍中。下一個可用的顯示範圍的位置取決於其行頁方向或者內容文件給予的個別宣告。作者可以覆蓋此項自動填充行為,透過在書脊itemref元素指定以下特性之一,以強制文件被置放在特定的顯示範圍中。

rendition:page-spread-center
rendition:page-spread-center特性指定強制將內容文件置放於一個同步跨頁中。
rendition:page-spread-left
rendition:page-spread-left特性為page-spread-left特性的捷徑。
rendition:page-spread-right
rendition:page-spread-right特性為page-spread-right特性的捷徑。

rendition:page-spread-left特性指出該書脊項目應該被排版置放於跨頁的左手邊空格,以及rendition:page-spread-right應該被排版置放於右手邊空格。rendition:page-spread-center特性指出同步跨頁模式應該被覆蓋,而以單一顯示範圍處理白板並置放於螢幕的中央。

rendition:page-spread-leftrendition:page-spread-right以及rendition:page-spread-center特性適用於預先分頁與重排內容兩方,都只適用在閱讀系統創建同步跨頁時。

rendition:page-spread-*特性無論XHTML內容文件page-break-before特性 [CSSSnapshot] 的值為何,都優先其處理。

注意事項

rendition:page-spread-center並不改變顯示範圍的尺寸比例。進一步說明,其並非在製作整個跨頁所建構的顯示範圍。這相當重要,因為可以讓一般頁面與置中頁面的縮放比例能夠保持恆定。

重排的書脊項目跟隨在預先分頁的後面,同時缺少一個rendition:page-spread-*的特性值時,重排項目應該由下一頁開始(如page-progression-direction定義)。如果重排的書脊項目有一個rendition:page-spread-*,則必需要被尊重(例如,在之間插入一個空白頁面)。

同樣的,當預先分頁的書脊項目跟在重排的後面,同時缺少一個rendition:page-spread-*的特性值時,預先分頁項目應該由下一頁開始(如page-progression-direction定義)。如果預先分頁書脊項目有一個rendition:page-spread-*,則必需要被尊重(例如,插入一個空白頁面)。

儘管作者經常會指定裝置在特定的方向才跨頁,內容自身不呈現為真正的跨頁(例如,兩個接續的頁面需要被接連不分開地排版才能被閱讀,例如跨頁的地圖)。要指示兩個連續頁面顯示為真正的跨頁,作者應該使用rendition:page-spread-leftrendition:page-spread-right特性於鄰接的書脊項目中,並且忽略書脊項目的特性令單頁或雙頁呈現都同等能被接受。當閱讀系統遇到兩個書脊項目顯示為真正跨頁時,其應該創造中間沒有空白調整頁的跨頁。

只有一個page-spread-*特性能在書脊項目中宣告。

注意事項

rendition:page-spread-leftrendition:page-spread-right是對page-spread-leftspread-right特性的捷徑。其允許使用單一用語供所有固定版面特性。作者可以使用兩種特性組合,但是較舊的閱讀系統可能只認得無字首的版本。EPUB書脊特性與會不再延伸供包裝顯示詮釋資料使用,所以無字首的page-spread-center不存在。

4.3.4.5.2 範例
4.3.4.6 rendition:viewport特性(不再推薦)

rendition:viewport特性讓作者能為rendition:layout設定為pre-paginated的XHTML及SVG內容文件表達CSS初始容器區塊(initial containing block, ICB) [CSS21] 。

不再推薦使用本特性,請參考其在 [Publications301] 的定義以獲得更多資訊。

5. EPUB導覽文件

5.1 導論

本章節為非規範性。

EPUB導覽文件是EPUB包裝必要元件。其讓作者包含一份可供人類閱讀以及機器讀取的全域導覽層,以確保能為使用者增加可用性與無障礙輔助性。

EPUB導覽文件是一個XHTML內容文件,但卻有著對其結構額外的限制,以便於機器處理其內容。 [HTML] nav元素包含特化的導覽用資訊,同時保持人能閱讀,以准許閱讀系統能處理導覽用介面。

但是EPUB導覽文件並非獨家用於機器處理,因為其為一個XHTML內容文件,所以可以作為線性閱讀順序的一部分,為了避免重複出現不同的目次,專門用於機器處理的內容,例如頁面清單,可以使用hidden屬性來從視覺排版中隱藏。

請注意閱讀系統在從EPUB導覽文件的資訊中處理導覽介面時,可能會除去腳本、樣式與HTML格式。如果格式與功能為必要,那麼EPUB導覽文件也得要包含在書脊之中。對導覽文件使用漸進增強 [ContentDocs32] 技巧於腳本和樣式將可保持內容的醫治性,尤其在非瀏覽化脈絡之下。

5.2 內容適用性

合規的EPUB導覽文件必需符合以下領域的需求:

文件特性

  必需符合定義在XHTML內容文件 — 內容適用性 [ContentDocs32] 中對XHTML內容文件的內容適用性限制。

  必需符合定義在EPUB導覽文件定義中特別對EPUB導覽文件的內容適用性限制。

  作為合規的XHTML內容文件,其可以包含在書脊之中。

5.3 閱讀系統適用性

一個符合規定的EPUB閱讀系統必需在處理EPUB導覽文件時,符合以下領域的需求:

5.4 EPUB導覽文件定義

5.4.1 nav元素:限制

當一個在EPUB導覽文件中的nav元素包含epub:type屬性 [ContentDocs32] ,本規格限制了該元素的內容模型以及其子元素如下:

內容模型
nav

依此順序:

ol

依此順序:

  • li [一或多個]

li

依此順序:

  • (spana) [唯一]

  • ol [視狀況需求]

spana

依此順序:

請注意對於允許用於這些元素的屬性沒有任何限制。

請參考以下定義獲得額外的需求。

nav元素的內容模型解釋如下:

  •   navol子元素代表內容導覽中的主要層級

  •   每一個在順序清單中的列表項目代表一個標題、結構或者其他相關項目。一個子a元素描述連結指向的目標,當一個span元素應用在標題上時,用於分割清單到可區分的群組(舉例,一份多項的插畫列表可以被區隔成多個清單,每章各一)。

  •   子元素aspan必需在連結所有子內容以及經過應用程式空白正規化規則處理後,提供長度不為零的文字標籤。儘管非文字的子元素可以直接顯示給使用者,但包含在titlealt屬性中文字內容必需用於判斷是否符合此需求。

  •   如果一個aspan元素包含沒有固有替代文字的HTML嵌入內容,其元素必需包含一個有替代文字的title屬性供連結標籤顯示。

  •   透過a元素中href屬性提供的IRI參照必需遵守以下需求:

  •   一個a元素後可以接一個ol順序清單,代表層級低於標題的次要內容(例如該章所有子章節的標題)。

  •   一個span元素後必需接一個ol順序清單;其不能用在「單葉(leaf)」li元素。

  •   無論是由a或者span元素開始,每一個子清單必需遵從定義於本章節的內容需求以供建構主要導覽清單。

EPUB規格可以提供對EPUB導覽文件中nav元素於以上內容模型的定義,做出進一步的限制。

在本規格脈絡下,nav元素中列表項目的預設顯示樣式必需等同於list-style: none特性 [CSSSnapshot] 。閱讀系統在書脊外呈現導覽文件時不得在這些清單中顯示列表項目編號,無論是否支援CSS。作者可以指定不同的CSS列表樣式供文件在spine中顯示。

5.4.2 nav元素:類型

5.4.2.1 導論

本章節為非規範性。

定義在EPUB導覽文件中的nav元素透過其epub:type屬性 [ContentDocs32] 的值在語義上區別。

本規格定義了三種導覽目的:

toc

指出該nav元素包含了目次。toc nav僅供導覽使用,必需要被包含在EPUB導覽文件中。

page-list

指出該nav元素包含了頁面列表,供EPUB出版品對照印刷書或者其他固定分頁的來源。

landmarks

指出該nav元素包含了各用途的列表。

額外的導覽類型可以被包含在EPUB導覽文件中,請見其他nav元素以獲得更多資訊。

5.4.2.2 toc nav元素

toc nav元素定義了該內容釋義主要的導覽階層。其概念上呼應了印刷書的目次(即為,其提供了該出版品主要結構章節的導覽)。

toc nav元素中的參照必需在排序上反映以下兩點:

toc nav元素必需EPUB導覽文件中僅出現一次。

5.4.2.3 page-list nav元素

page-list nav元素提供內容的定址,其呼應印刷來源中的分頁邊界,使其能在EPUB出版品中顯示。

page-list nav元素在EPUB導覽文件中為選擇性,且不得出現一次以上。

page-list nav中的頁面參照必需符合兩項順序,包括指向的EPUB內容文件書脊中的順序,以及每一頁所在之EPUB內容文件中的順序。

page-list nav元素應該僅包含一個ol子元素(即為,沒有巢狀子列表)。

page-list參照的目標可以使用pagebreak術語 [EPUB-SSV] 在參照EPUB內容文件中作為辨識。

5.4.2.4 landmarks nav元素

landmarks nav元素識別該內容釋義中的基礎架構元件,以使閱讀系統可以讓使用者更有效率的存取。

epub:type屬性 [ContentDocs32] 在landmarks nava子元素中為必需landmarks nav元素中每個連結目標的結構語意,由該屬性的值決定。

landmarks nav不得包含多個具備相同epub:type值的項目指向相同的資源或者斷片。

landmarks nav在EPUB導覽文件中為選擇性不可出現一次以上。

5.4.2.5 其他nav元素

EPUB導覽文件可以在前章節所定義的tocpage-listlandmarks元素外,包含一或多個額外的nav元素。這些額外的nav元素應該擁有一個epub:type屬性來提供機器可讀取的語意,且其第一個子元素必需擁有一個人可閱讀的標題。

本規格對於所有額外的nav元素不設限制:它們可以被用於代表任何資訊領域的導覽語意,以及它們可以包含具備同質或異質的連結標的。

5.4.3 hidden屬性

在某些案例中,作者會想要在內容流(即為,閱讀系統主要排版處理的書脊內容)中隱藏部分的導覽資料。舉個常見案例,像是分頁清單,通常不會被顯示成內容流的一部分,而會透過特別處理的導覽使用者介面另外呈現給使用者。

所以可用display特性 [CSSSnapshot] 於控制EPUB導覽文件在閱讀系統顯示區域中的視覺呈現,但並非所有閱讀系統都提供這樣的介面。為了跨閱讀系統對排版做出控制,作者必需使用 [HTML] hidden屬性來指示哪些(如果需要)部分的導覽資料要被排除在內容流排版外。hidden屬性不影響內容流之外的導覽資料顯示(例如閱讀系統提供專用於導覽的使用者介面)。

A. 包裝文件綱要

一個供內容文件使用的非規範綱要(schema)可由此取得:https://github.com/w3c/epubcheck/tree/master/src/main/resources/com/adobe/epubcheck/schema/30/package-30.nvdl

使用此綱要進行驗證,需要支援 [NVDL] 、 [RelaxNG-Schema] 、 [ISOSchematron] 及 [XMLSCHEMA-2] 的處理器。

注意事項

NVDL綱要層可以被multi-pass驗證取代,而僅使用嵌入的RELAX NG以及ISO Schematron綱要。

注意事項

這些綱要可能會在本規格正式改版外更新及更正。結論上來說,它們會隨時都可能更動。

B. application/oebps-package+xml媒體類型

本章節為非規範性。

本附錄為EPUB包裝文件註冊了媒體類型application/oebps-package+xml。本註冊取代了 [RFC4839] 。

包裝文件是一個XML檔案,用來說明一本EPUB出版品的內容釋義。其定義了內容釋義中的資源並且提供詮釋資料資訊。包裝文件與其相關的規格由W3C的EPUB 3社群小組所維護並且定義。

MIME媒體類型名稱:

application

MIME子類型名稱:

oebps-package+xml

必要參數:

無。

選擇性參數:

無。

編碼考量:

包裝文件為使用UTF-8或UTF-16編碼的XML。

安全性考量:

包裝文件包含符合於XML 1.0規格的架構完整之XML。

進一步說明,有可能製作出惡意檔案,例如,包含形式不完整的資料。大多數XML解析器可以透過對適用性的嚴格檢查來保護自身免於這樣的攻擊。

所有讀取包裝文件的處理器應該嚴格地檢查其檔案大小並且驗證所取得的資料。

EPUB包裝3.2規格中,包裝文件格式目前沒有提供加密、簽署以及驗證的描述檔。

互通性考量:

無。

已發表規格:

本媒體類型註冊供EPUB包裝文件使用,如EPUB包裝3.2規格中所敘述,位於http://w3c.github.io/epub-specs/archive/epub32/spec/epub-packages.html

EPUB包裝3.2規格取代Open Packaging Format 2.0.1規格,其位於http://www.idpf.org/epub/20/spec/OPF_2.0.1_draft.htm,其也使用application/oepbs-package+xml媒體類型。

使用該媒體類型的應用程式:

該媒體類型廣泛應用於EPUB格式電子書的遞送。以下應用程式列表並非窮舉。

  • Adobe Digital Editions

  • Aldiko

  • Azardi

  • Apple iBooks

  • Barnes & Noble Nook

  • Bluefire Reader

  • Calibre

  • Google Play Books

  • Kobo

  • Microsoft Edge

  • Readium

額外資訊:
魔術數字(Magic number):

副檔名:

.opf

麥金塔檔案類型代碼:

TEXT

斷片識別碼:

連結綱要的註冊由http://www.idpf.org/epub/linking/所維護。這些綱要定義的客製化斷片識別碼可解析到application/oebps-package+xml文件。

進一步資訊的聯絡人與郵件位址:

public-epub3@w3.org

預計用途:

COMMON

作者/變更管控:

發布的規格是World Wide Web Consortium之EPUB 3社群小組的成果產品。W3C對本規格有變更的管控權。

C. Meta特性用語

C.1 概論

C.1.1 關於本用語

本章節為非規範性。

本用語中的特性可用於meta元素property屬性。

C.1.2 參考

沒有字首的特性可以使用基礎IRI做為參照http://idpf.org/epub/vocab/package/meta/#

C.2 詮釋資料meta特性

以下表格定義了供meta元素property屬性使用的特性。

除非在其「延伸」區塊有特別指出,定義在此章節的特性用於定義子表意:換句話說,一個有定義在此區塊特性的meta元素必需包含一個refines屬性以參照到一個資源,或者想要附加的表述。

在每一個特性定義中,准許的值區塊指出值的預期類型(使用 [XMLSCHEMA-2] 資料類型),基數區塊指出該特性可以附加到另一個特性的次數,以及延伸區塊指出可以附加到哪些特性上。

C.2.1 alternate-script

名稱: alternate-script
說明:

alternate-script特性提供了一個替代表述,透過xml:lang屬性指定相關連的特性值使用何種語言及書寫方式。

此特性一般為了國際化目的而附加在creatortitle特性上。

允許的值: xsd:string
基數: 零或多個
延伸: 所有特性。

C.2.2 authority

名稱: authority
說明:

authority特性指出被參照元素的值來自何系統或者綱要。

允許的值:
基數: 零或多個
延伸: subject

C.2.3 belongs-to-collection

名稱: belongs-to-collection
說明:

belongs-to-collection特性指出EPUB出版品所屬集合的名稱。一本EPUB出版品可以屬於一或多個集合。

也可以鍊結到其他使用refines屬性的特性來指出某個集合是否為其他集合的一部分。

為准許閱讀系統組織集合並且避免命名衝突(例如,不相關的集合分享同一個類似的名稱,或者發布一個集合的不同版本)。其識別碼應該提供用於識別集合副本的獨特性。dcterms:identifier特性必需包含此識別碼。

集合可以更精準地透過附加一個collection-type特性來定義其特質。

EPUB出版品在集合中的位置可以透過提供附加的group-position特性來提供。

允許的值: xsd:string
基數: 零或多個
延伸: 套用到該EPUB出版品,並且可以精緻化自身的其他副本。

C.2.4 collection-type

名稱: collection-type
說明:

collection-type特性指出一個集合的形式或特質。

collection-type值來自一組代碼表或者其他正式的目錄時,應該附加scheme屬性以辨識其來源。

當沒有指定綱要時,閱讀系統應該辨識以下集合類型值:

series

一系列相關作品被正式識別為群組;一般開放其結尾以便於隨時新增個別作品。

set

一組結束的作品整體建構成一個單一智慧財產單元;一般一齊發布並且可以被當作一個單位販賣。

允許的值: xsd:string
基數: 零或一
延伸: belongs-to-collection

C.2.5 display-seq

名稱: display-seq
說明:

display-seq特性指出按號碼編列的位置用於展示現在的特性與可識別的詮釋資料特性之相對關係。

此特性僅適用於處理尚未被定義的重要規則(例如定義創作者在文件順序中出現的前後)。

允許的值: xsd:unsignedInt
基數: 零或一
延伸: 所有特性。

C.2.6 file-as

名稱: file-as
說明: file-as特性提供標準化形式以對相關的特性進行分類。
允許的值: xsd:string
基數: 零或一
延伸: 所有特性。

C.2.7 group-position

名稱: group-position
說明:

group-position特性提供數字編號位置,讓EPUB出版品在與屬於相同群組的其他作品排序時使用(無論是否全都是EPUB出版品)。

group-position特性可被附加到任何建構群組的詮釋資料特性,但一般僅與belongs-to-collection特性相關聯。

一本EPUB出版品可以屬於多於一個的群組。

允許的值: 單一xsd:unsignedInt或者一系列由小數點分隔的數字(例如12.2.1)。
基數: 零或一
延伸: 所有特性。

C.2.8 identifier-type

名稱: identifier-type
說明:

identifier-type提供一個identifier的形式或者性質。

identifier-type值來自一組代碼表或者其他正式的目錄時,應該附加scheme屬性以用於識別其來源。

允許的值: xsd:string
基數: 零或一
延伸: identifier, source

C.2.9 meta-auth(不再推薦)

名稱: meta-auth
說明:

meta-auth特性提供該對包裝詮釋資料負責的組織或者權威。

不再推薦使用meta-auth特性。

允許的值: xsd:string
基數: 零或一
延伸: 所有特性。

C.2.10 role

名稱: role
說明:

role特性透過creator或者contributor解釋做了哪些性質的工作(例如,該人物為作者或者作品的編輯)。

role值來自一組代碼表或者其他正式的目錄時,應該附加scheme屬性以用於辨識其來源。

允許的值: xsd:string
基數: 零或一
延伸: contributor, creator

C.2.11 source-of

名稱: source-of
說明:

source-of特性指出由該EPUB出版品之內容釋義取得資源,所適用來源的特別面向。

本規格定義了pagination值以指定所參照的dc:source元素,為定義在本內容中pagebreak特性的來源。

允許的值: pagination
基數: 零或一
延伸: dc:source
注意事項

請參照 [EPUBAccessibilityTechniques] 以取得如何提供無障礙頁面導覽的資訊。

C.2.12 term

名稱 term
說明:

term特性提供了一個主題代碼。

允許的值: xsd:string
基數: 零或一
延伸: subject

C.2.13 title-type

名稱 title-type
說明:

title-type特性指出了title的形式或者特性。

title-type值來自一組代碼表或者其他正式的目錄時,應該附加scheme屬性以用於指認其來源。當沒有指定綱要時,閱讀系統應該辨識以下標題類型值:mainsubtitleshortcollectioneditionexpanded

允許的值: xsd:string
基數: 零或一
延伸: title

C.2.14 範例

E. 宣告特性用語

E.1 概論

E.1.1 關於本用語

本章節為非規範性。

本用語中的特性可用於宣告中item元素properties屬性。

E.1.2 參考

沒有字首的特性可以使用基礎IRI做為參照http://idpf.org/epub/vocab/package/item/#

E.2 宣告item特性

以下表格定義了供manifestitem元素properties屬性能使用的特性。

適用欄指出出版品資源類型可以被指定這些特性,基數欄指出在整個包裝文件範圍內,該特性必需在整份包裝文件中出現的次數,以及用法欄指出使用狀態。

E.2.1 cover-image

名稱 cover-image
說明: cover-image特性指示該出版品資源為出版品的封面圖片。
適用: 所有點陣以及向量圖片類型 [EPUB32]
基數: 零或一
用法: 選擇性。

E.2.2 mathml

名稱 mathml
說明: mathml特性指示該出版品資源包含一或多個MathML標記副本。
適用: EPUB內容文件
基數: 零或多
用法: 僅在符合說明中提及的狀況時,必需指定。

E.2.3 nav

E.2.4 remote-resources

名稱 remote-resources
說明:

remote-resources特性指示了該出版品資源包含一或多個內部參照指向外於EPUB容器的其他出版品資源。

請參考出版品資源位置 [EPUB32]取得更多資訊 。

適用: 所有能夠做內部參照的出版品資源(例如,XHTML內容文件SVG內容文件、CSS樣式表以及媒體層疊文件)。
基數: 零或多
用法: 僅在符合說明中提及的狀況時,必需指定。

E.2.5 scripted

名稱 scripted
說明: scripted特性指示了該出版品資源為有腳本的內容文件(例如,包含腳本內容及/或HTML表單元素)。
適用: EPUB內容文件
基數: 零或多
用法: 僅在符合說明中提及的狀況時,必需指定。

E.2.6 svg

名稱 svg
說明:

svg特性指示了該出版品資源嵌入了一或多個SVG標記副本。

當SVG標記直接包含在資源中時,該特性必需被設定,當SVG由該資源參照(例如,使用 [HTML] imgobject或者iframe元素)時可以被設定。

適用: XHTML內容文件;該值已隱含在SVG內容文件中。
基數: 零或多
用法: 僅在符合說明中提及的狀況時,必需指定。

E.2.7 用法

當一個item所參照的資源符合相關定義時,mathmlremote-resourcesscripted特性必需要被指定。這些特性不遞迴適用包含在資源中的內容(例如,透過HTML iframe元素)。例如,如果一個沒有腳本的XHTML內容文件嵌入了一個腳本內容文件,只有被嵌入的文件之宣告item properties屬性要被給予scripted值。

E.2.8 範例

示範1 以下範例展示一個manifest item元素EPUB導覽文件
<item properties="nav" id="c1" href="c1.xhtml" media-type="application/xhtml+xml" />
示範2 以下範例展示一個manifest item元素為封面圖片。
<item properties="cover-image" id="ci" href="cover.svg" media-type="image/svg+xml" />
示範3 以下範例展示一個manifest item元素為有腳本的內容文件並且包含嵌入MathML。
<item properties="scripted mathml" id="c2" href="c2.xhtml" media-type="application/xhtml+xml" />

F. 書脊特性用語

F.1 概論

F.1.1 關於本用語

本章節為非規範性。

本用語中的特性可用於書脊中itemref元素properties屬性。

F.1.2 參考

特性可以使用基礎IRI做為參照http://idpf.org/epub/vocab/package/itemref/#

F.2 書脊itemref特性

以下表格定義了供itemref元素properties屬性 [Packages] 使用的特性。

F.2.1 page-spread-left

名稱 page-spread-left
說明: page-spread-left特性指示關聯的item元素之EPUB內容文件,其第一頁於兩頁跨頁時要顯示在左手端。

F.2.2 page-spread-right

名稱 page-spread-right
說明: page-spread-right特性指示關聯的item元素之EPUB內容文件,其第一頁於兩頁跨頁時要顯示在右手端。

F.2.3 範例

示範4 以下範例展示一份跨兩頁的地圖該如何在spine中進行指定。
<spine>
	<itemref idref="title"/>
	<itemref idref="ps-1-l" properties="page-spread-left"/>
	<itemref idref="ps-1-r" properties="page-spread-right"/>
	<itemref idref="toc"/>
	…
</spine>

G. 謝詞與貢獻者

本章節為非規範性。

EPUB 3由W3C EPUB 3社群小組所開發,並且與出版業界小組相互協力。

EPUB 3.2改版由以下主導:

此外向編輯群致敬,本版本EPUB若缺少以下人物的顯著貢獻,則不可能完成:

特別感謝IDPF的前會員,尤其是Markus Gylling與Bill McCoy,沒有他們EPUB不可能成真。

H. 參考資料

H.1 規範性文件

[AuthorityRegistry]
EPUB Subject Authorities Registry. URL: https://www.idpf.org/epub/registries/authorities/
[BCP47]
Tags for Identifying Languages. A. Phillips; M. Davis. IETF. September 2009. IETF Best Current Practice. URL: https://tools.ietf.org/html/bcp47
[ContentDocs32]
EPUB Content Documents 3.2. URL: epub-contentdocs.html
[CSS21]
Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification. Bert Bos; Tantek Çelik; Ian Hickson; Håkon Wium Lie et al. W3C. 7 June 2011. W3C Recommendation. URL: https://www.w3.org/TR/CSS2/
[CSSSnapshot]
CSS Snapshot. URL: https://www.w3.org/TR/CSS/
[DateTime]
Date and Time Formats. W3C. 27 August 1998. W3C Note. URL: https://www.w3.org/TR/NOTE-datetime
[DC11]
Dublin Core Metadata Element Set, Version 1.1. DCMI. 14 June 2012. DCMI Recommendation. URL: http://dublincore.org/documents/dces/
[DCTERMS]
DCMI Metadata Terms. DCMI Usage Board. DCMI. 14 June 2012. DCMI Recommendation. URL: http://dublincore.org/documents/dcmi-terms/
[EPUB-SSV]
EPUB Structural Semantics Vocabulary. IDPF. URL: http://www.idpf.org/epub/vocab/structure/
[EPUB32]
EPUB 3.2. URL: epub-spec.html
[HTML]
HTML. W3C. W3C Recommendation. URL: https://www.w3.org/TR/html/
[ISO8601]
Representation of dates and times. ISO 8601:2004.. International Organization for Standardization (ISO). 2004. ISO 8601:2004. URL: http://www.iso.org/iso/catalogue_detail?csnumber=40874
[ISOSchematron]
ISO/IEC 19757-3: Rule-based validation — Schematron. 2006-06-01. URL: http://standards.iso.org/ittf/PubliclyAvailableStandards/c040833_ISO_IEC_19757-3_2006(E).zip
[JSON-LD]
JSON-LD 1.0. Manu Sporny; Gregg Kellogg; Markus Lanthaler. W3C. 16 January 2014. W3C Recommendation. URL: https://www.w3.org/TR/json-ld/
[MediaOverlays32]
EPUB Media Overlays 3.2. URL: epub-mediaoverlays.html
[NVDL]
ISO/IEC 19757-4: NVDL (Namespace-based Validation Dispatching Language). 2006-06-01. URL: http://standards.iso.org/ittf/PubliclyAvailableStandards/c038615_ISO_IEC_19757-4_2006(E).zip
[OCF32]
Open Container Format (OCF) 3.2. URL: epub-ocf.html
[ONIX]
ONIX for Books. URL: http://www.editeur.org/
[OPF2]
Open Packaging Format 2.0.1. URL: http://www.idpf.org/epub/20/spec/OPF_2.0.1_draft.htm
[Packages]
EPUB Packages 3. URL: http://www.idpf.org/epub3/latest/packages
[Publications301]
EPUB Publications 3.0.1. URL: http://www.idpf.org/epub/301/spec/epub-publications.html
[RDFA-CORE]
RDFa Core 1.1 - Third Edition. Ben Adida; Mark Birbeck; Shane McCarron; Ivan Herman et al. W3C. 17 March 2015. W3C Recommendation. URL: https://www.w3.org/TR/rdfa-core/
[RelaxNG-Schema]
Information technology -- Document Schema Definition Language (DSDL) -- Part 2: Regular-grammar-based validation -- RELAX NG. ISO/IEC. 2008. URL: http://standards.iso.org/ittf/PubliclyAvailableStandards/c052348_ISO_IEC_19757-2_2008(E).zip
[RFC2046]
Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types. N. Freed; N. Borenstein. IETF. November 1996. Draft Standard. URL: https://tools.ietf.org/html/rfc2046
[RFC2119]
Key words for use in RFCs to Indicate Requirement Levels. S. Bradner. IETF. March 1997. Best Current Practice. URL: https://tools.ietf.org/html/rfc2119
[RFC3987]
Internationalized Resource Identifiers (IRIs). M. Duerst; M. Suignard. IETF. January 2005. Proposed Standard. URL: https://tools.ietf.org/html/rfc3987
[RFC4839]
Media Type Registrations for the Open eBook Publication Structure (OEBPS) Package File (OPF). G. Conboy; J. Rivlin; J. Ferraiolo. IETF. April 2007. Informational. URL: https://tools.ietf.org/html/rfc4839
[RoleRegistry]
EPUB Collection Roles Registry. URL: http://www.idpf.org/epub/registries/roles
[TypesRegistry]
EPUB Publication Types Registry. URL: http://www.idpf.org/epub/vocab/package/types
[Unicode]
The Unicode Standard. Unicode Consortium. URL: https://www.unicode.org/versions/latest/
[XML]
Extensible Markup Language (XML) 1.0 (Fifth Edition). Tim Bray; Jean Paoli; Michael Sperberg-McQueen; Eve Maler; François Yergeau et al. W3C. 26 November 2008. W3C Recommendation. URL: https://www.w3.org/TR/xml/
[XML-NAMES]
Namespaces in XML 1.0 (Third Edition). Tim Bray; Dave Hollander; Andrew Layman; Richard Tobin; Henry Thompson et al. W3C. 8 December 2009. W3C Recommendation. URL: https://www.w3.org/TR/xml-names/
[XMLSCHEMA-2]
XML Schema Part 2: Datatypes Second Edition. Paul V. Biron; Ashok Malhotra. W3C. 28 October 2004. W3C Recommendation. URL: https://www.w3.org/TR/xmlschema-2/
[XMP]
Extensible metadata platform (XMP) specification -- Part 1. Adobe Systems Incorporated. ISO/IEC. 15 February 2012. URL: http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=57421

H.2 參考性文件

[CSS3-MediaQueries]
Media Queries. Florian Rivoal et al. W3C. 19 June 2012. W3C Recommendation. URL: https://www.w3.org/TR/css3-mediaqueries/
[EPUB32Changes]
EPUB 3.2 Changes. URL: epub-changes.html
[EPUB3Overview]
EPUB 3 Overview. URL: epub-overview.html
[EPUBAccessibility]
EPUB Accessibility. URL: http://www.idpf.org/epub/latest/accessibility
[EPUBAccessibilityTechniques]
EPUB Accessibility Techniques. URL: http://www.idpf.org/epub/latest/accessibility/techniques
[RoleExtensions]
EPUB Collection Element Role Extensions. URL: http://www.idpf.org/epub/extensions/roles
[UAAG20]
User Agent Accessibility Guidelines (UAAG) 2.0. James Allan; Greg Lowney; Kimberly Patch; Jeanne F Spellman. W3C. 15 December 2015. W3C Note. URL: https://www.w3.org/TR/UAAG20/