1、 1 印行年月 94 年 10 月 本標準非經本局同意不得翻印 中華民國國家標準 CNS 總號 類號 ICS 35.240.20 14319-5 X6029-5 經濟部標準檢驗局印行 公布日期 修訂公布日期 92 年 7 月 29 日 年月日 (共 106 頁) 資訊技術開放文件架構與交換格式第 5 部:開放文件交換格式 Information technology Open Document Architecture (ODA) and in-terchange format Part 5: Open document interchange format 1. 適用範圍:本標準規定交換文件
2、的資料串的格式。 2. 用語釋義:本標準採用 CNS 14356資訊技術開放文件架構與交換格式:簡介與一般原則、 CNS 13889資訊技術開放系統互連抽象語法記法(一)規格與 CNS 13890資訊技術開放系統互連抽象語法記法(一)基本編碼規則之規格的定義。 3. 縮寫:本標準採用 CNS 14356 及下列的縮寫。 DTD 文件型式定義 (Document type definition) EOC 內容結束 (End of content) GI SGML同屬識別符 (SGML generic identifier) IA5 國際字母 5 號 (International Alphabet
3、 no. 5) ID SGML唯一識別符 (SGML unique identifier) LIT 文字開始或結束 (Literal start or end) LITA 替代性文字開始或結束 (Literal start or end(alternative) LPD 鏈接處理定義 (Link process definition) OSI 開放系統互連 (Open System Interconnection) ULA 上層應用 (Upper Layer Applications) UTC 國際標準時間 (Coordinate Universal Time) 4. 概述:在本標準的上下文,
4、所謂的文件是指備忘錄、信件、發票、表格與報告,亦可能包括圖片與定格素材。文件所運用的內容元素可能包含圖形字元、幾何圖形元素與光柵圖形元素,均有可能在同一文件中。 備考:本標準之設計容許擴充,包括超介質功能、試算表與額外型式的內容,例如:音訊與視訊。 除了本標準所定義的內容型式,開放文件架構亦支援欲包含在文件內之任一型式內容。 本標準適用於經由資料通訊或儲存介質交換的文件交換。 本標準支援下列任一目的之文件交換: (1) 發起者所需要的表現方式 (2) 編輯與再格式化等各種處理 交換文件的組成有下列形式: 2 CNS 14319-5, X 6029-5 (1) 格式化形式,可以表現文件 (2)
5、可處理形式,可以處理文件 (3) 格式化可處理形式,可以表現並處理文件 本標準亦支援用以處理已交換文件的開放文件架構資訊結構的交換。 本標準定義: 依照 CNS 14356-1資訊技術開放文件架構與交 換格式第一部:文件結構,用於交換文件之資料流格式及在交換文件中可能出現之構件表示。 備考:本標準並不規定內容元素的碼化表現。 表現屬性和編碼屬性的資料格式可參照本系列標準。 5. 規約:參照 CNS 14356 之規定。 6. 文件表現:依照本系列標準所組織的文件可以用開放文件交換格式 (Open Docu-ment Interchange Format, ODIF),或開放文件語言 (Open
6、 Document Language, ODL)並連同 SGML 文件交換格式 (SGML Document Interchange Format, SDIF)來表示以便交換。 ODIF 和 ODL/ SDIF 表示在技術上是相等的;文件可互相轉換而不會損失有關文件構件與屬性的語意資訊。 ODL 和 SDIF 僅可用於本系列標準。 備考:資料結構 (ODIF)與語言 (ODL)表示都可以標準化以符合不同環境的文件需求。 ODIF,作為一個使用 ASN.1 記法的資料結構,是特別應用於 OSI 環境。ODL 則特別適用於使用由標示文字檔以分享資訊的系統,特別是使用者可以直接應用此標示部分。 6.
7、1 ODIF: ODIF 是一個抽象的資料語法,其中文件的構件和屬性都是以階層式資料結構和資料個體表示,並參照 CNS 13889 的抽象語法 ASN.1 方式標示。 每個資料結構和資料個體的碼化表現都是藉著使用一組編碼規則而得。 ODIF規定於第 7 節。 備考: ASN.1 是一種正規描述方法,允許和應用相關的資料型式以其他的資料型式表示,例如資料型式包含有 “整數 (integer)”和 “八位元組字串 (octet string)”等規定於 CNS 13889 的基本資料型式。 ASN.1 的基本編碼規則可參照 CNS 13890 及本標準附錄 1。 6.2 ODL 和 SDIF: O
8、DL 是一個語言,其中文件的構件與屬性都是以描述標籤標明,且組合成使用者可能需要的一個或多個儲存個體 (如檔案 )。 為了能夠交換,可參照 CNS 13855資訊技術標準通用標示語言支援設施標準通用標示語言文件交換格式的 SGML 文件交換格式組成的資料流中,每個 ODL 個體都利用 ASN.1 表示成一個資料結構或資料個體。 ODL 規定於本標準附錄 5 中。 備考: ODL 是下屬於 CNS13854 資訊處理文字與辦公室系統標準通用標示語言的 SGML 應用。 7. 開放文件交換格式 (ODIF) 7.1 綜述:依據本系列標準組織的文件是利用一個或多個具有以下型式的資料結構 3 CNS
9、14319-5, X 6029-5所組成資料流: (1) 文件本體部分描述符 (2) 編排物件描述符 (3) 編排物件類別描述符 (4) 邏輯物件描述符 (5) 邏輯物件類別描述符 (6) 表現式樣描述符 (7) 編排式樣描述符 (8) 文字單元 (9) 封簽文件本體部分描述符 (10) 加密文件本體部分描述符 (11) 預先加密文件本體部分描述符 (12) 事後加密文件本體部分描述符 此資料結構稱為交換資料元素。在資料流中,交換資料元素是依據以下規定的規則排列。本標準規定二組規則:交換格式類別 1 和交換格式類別 2。 文件本體部分描述符會指示使用那一組規則。在所有的情形下,一個資料流會包含
10、唯一一個文件本體部分描述符,且此文件本體部分描述符總會是資料流中的第一個交換資料元素。文件本體部分描述符可以是資料流中僅有的資料結構。 當一個 ODIF 資料流作為一個 ASN.1 外部資料型式的一部分時,抽象的語法將會由一個參考 Interchange-Data-Element 的 ASN.1 SEQUENCE OF 型式組成;資料值的編碼將包含一組利用 ASN.1 基本編碼規則組成八位元組的整數;且和ASN.1 物件識別符結合值是 2 8 0 0 。 備考:在應用協定中使用交換資料元素或外部資料型式的方式,或將其對應到服務資料單元 (在一個 OSI 環境中 )的方式並未規定於本標準中。 7
11、.2 交換格式類別 1:依據交換格式類別 1,一個資料流包含一個文件本體部分描述符和一個或多個 (備選 )以下型式的交換資料元素: (1) 編排物件描述符。 (2) 編排物件類別描述符。 (3) 邏輯物件描述符。 (4) 邏輯物件類別描述符。 (5) 表現式樣描述符。 (6) 編排式樣描述符。 (7) 文字單元。 (8) 封簽文件本體部分描述符。 (9) 加密文件本體部分描述符。 (10) 預先加密文件本體部分描述符。 (11) 事後加密文件本體部分描述符。 4 CNS 14319-5, X 6029-5 交換資料元素的次序如下: (1) 文件本體部分描述符。 (2) 編排物件類別描述符。 (
12、3) 邏輯物件類別描述符。 (4) 表示同屬內容部分的文字單元。 (5) 表現式樣描述符。 (6) 編排式樣描述符。 (7) 編排物件描述符。 (8) 邏輯物件描述符。 (9) 表示特定內容部分的文字單元。 (10) 封簽文件本體部分描述符。 (11) 加密文件本體部分描述符。 (12) 預先加密文件本體部分描述符。 (13) 事後加密文件本體部分描述符。 在每個編排物件描述符和邏輯物件描述符的群組中,描述符的次序可參照 CNS 14356-1 的順序次序。 假如資料流包含編排物件描述符,表示特定內容部分的文字單元是依順序編排次序排列;否則其依順序邏輯次序排列。 在其他的交換資料元素群組中,其
13、次序是任意的。 對於標示替代描述的基本物件,必須要有一個描述符表示主要描述和一個描述符表示替代描述。 在資料流中,基本物件的替代描述之描述符必須依照遞減的優先次序緊跟在主要描述的描述符之後。代表相關替代子樹的內容部分的文字單元應該依照遞減的優先次序緊跟在代表相關主要子樹的內容部分的文字單元之後。 7.3 交換格式類別 2:依據交換格式類別 2,一個資料流包含一個文件本體部分描述符和一個或多個 (備選 )以下型式的交換資料元素: (1) 編排物件描述符。 (2) 編排物件類別描述符。 (3) 表現式樣描述符。 (4) 文字單元。 (5) 封簽文件本體部分描述符。 (6) 加密文件本體部分描述符。
14、 (7) 事後加密文件本體部分描述符。 交換格式類別 2 只可用來表示不包含任何特定或同屬邏輯結構的文件;亦即為格式化文件架構等級的文件。 備考:就如 CNS (ITU-T T.503)所規定,交換格式類別 2 只提供給文件應用作為 G4 傳真文件的交換用。 交換資料元素的次序如下: 5 CNS 14319-5, X 6029-5(1) 文件本體部分描述符 (2) 編排物件類別描述符及其結合文字單元。 (3) 表現式樣描述符。 (4) 編排式樣描述符及其結合文字單元。 (5) 封簽文件本體部分描述符。 (6) 加密文件本體部分描述符。 (7) 事後加密文件本體部分描述符。 在每個編排物件類別描
15、述符及其結合文字單元中,每個具有相同識別符的描述符群組,除了每個識別符的最後數字之外,必須緊跟在前一個群組之後,不可有其他描述符穿插其中。雖然如此,每個基本編排物件的一個編排類別描述符必須緊跟在相關的文字單元之後。 在每個編排物件類別描述符及其結合文字單元中,描述符的次序可參照 CNS 14356-1 的順序次序。雖然如此,每個基本編排物件的描述符必須緊跟在結合文字單元之後。 在表現式樣描述符群組中,其次序是任意的。 7.4 描述符和文字單元:一個文件本體部分描述符,編排物件類別描述符,編排物件描述符,邏輯物件描述符,邏輯物件類別描述符,表現式樣描述符,編排式樣描述符,封簽文件本體部分描述符,
16、加密文件本體部分描述符,預先加密文件本體部分描述符或事後加密文件本體部分描述符是由表示其構件屬性的簡單或複合資料個體所組成。 每個文件本體部分,每個物件類別,每個式樣,每個物件和每個保護的部分都以一個描述符表示。 一個文字單元包含二個部分: (1) 一個屬性欄,即由表示相關的內容部分的屬性的簡單或複合資料個體組成的資料結構。 (2) 一個資訊欄,即由表示組成相關的內容部分的內容元素的資料個體或資料個體集所組成的資料結構。 每個內容部分以一個文字單元表示。 交換資料元素的資料格式規定於第 7.6 節至第 7.15 節中,可參照 CNS 13889 的抽象語法記法 ASN.1。 備考:從第 7.6
17、 節至第 7.15 節並不完全規定資料格式,額外的規則規定於本標準的第 7.1 節至第 7.5 節和本系列標準中。例如,關鍵字 OPTIONAL 只表示一個特定的資料結構或資料個體,但並不是每個包含此資料結構的實例的一部分;控制此資料結構或資料個體出現與否的條件可參照本系列標準。 7.5 ASN.1 編碼和密碼學 (Cryptography)技術 7.5.1 加密資訊:是加密過程的輸出的文件本體部分,將會形成文件的新構件。其由一個識別符和加密資訊組成。後者為一個 ASN.1 OCTET STRING 型 6 CNS 14319-5, X 6029-5 式,其值在任何傳遞中均維持不變。 7.5.
18、2 封簽的資訊: ODA 安全屬性和 ODA 文件本體均定義於 ASN.1。為了確保使用 ASN.1 的唯一編碼,使用 ASN.1 的特異 (Distinguished)或正準編碼規則 (Canonical Encoding Rules)。此規則均定義於 CNS (ISO/IEC 8825-3),且使用此定義的資訊均可參照本標準附錄 7。 ASN.1 的特異或正準編碼規則在 ASN.1 基本編碼規則規定一組限制,而在 ASN.1 和其表示間提供一個唯一的對映。由密碼學的觀點,此是必須的。 特異和正準編碼規則之間最大的分別為前者使用定長編碼,而後者使用不定長編碼。假如編碼的數值小的足以放入可用的
19、記憶體中且需要快速地略過某些巢狀 (Nested)數值時,特異編碼規則是較為合適。假如編碼的數值較大無法快速地放入可用的記憶體中或需要在全部數值編碼完成前傳遞部分數值時,正準編碼規則是較為合適。 需要封簽的文件本體部分或文件本體部分會在封簽過程中維持不變。ASN.1 的特異和正準編碼規則會確保接收者可以使用和啟始者封簽時相同的編碼資訊。此是必須的以便用來取得相同的指紋資訊,人們藉此將內容和封簽連在一起。 封簽是由一組資料組成。產生封簽需要執行三個步驟: (1) 選定的資訊 (依據文件本體屬性 “封簽資訊編碼 ”,利用 ASN.1 的特異或正準編碼規則編碼 )將輸入到一個雜湊 (Hashing)
20、過程來產生指紋,指紋的編碼形式是一個 OCTET STRING。 (2) 指紋和額外的備選資訊均稱為封簽資訊。備選的參數依據 CNS 7648的每日日期和時間,封簽建立者的姓名和位置。此 (同樣依據文件本體屬性 “封簽資訊編碼 ”,利用 ASN.1 的特異或正準編碼規則編碼 )輸入到一個密碼過程以產生封簽,封簽的編碼形式是一個 OCTET STRING。 (3) 提供封簽方法的相關資訊來檢查此封簽。這是利用封簽方法型式來規定,其由產生指紋的資訊和如何解密封簽的資訊組成。 此構件的次序和前述交換格式類別規定的次序相同。 當此構件的次序並沒有完全由交換格式類別中規定時,可採用以下的規則: (1)
21、物件類別將依其在參數 “封簽構件 ”規定相同的次序封簽。 (2) 對於交換格式類別 1,共同內容部分將依相對的物件類別規定相同的次序封簽。 (3) 表現式樣將依其在參數 “封簽構件 ”規定相同的次序封簽。 (4) 編排式樣將依其在參數 “封簽構件 ”規定相同的次序封簽。 7.6. 交換資料元素 (Interchange Data Elements) Interchange-Data-Elements 2 8 1 5 5 DEFINITIONS : = BEGIN EXPORTS Interchange-Data-Element; 7 CNS 14319-5, X 6029-5IMPORTS D
22、ocument-Profile-Descriptor FROM Document-Profile-Descriptor -參照第 7.7 節 Layout-Class-Descriptor, Layout-Object-Descriptor FROM Layout-Descriptors -參照第 7.9 節 Logical-Class-Descriptor, Logical-Object-Descriptor FROM Logical-Descriptors -參照第 7.10 節 Presentation-Style-Descriptor, Layout-Style-Descriptor
23、FROM Style-Descriptors -參照第 7.11 節 Text-Unit FROM Text-Units -參照第 7.13 節 Sealed-Doc-Prof-Descriptor, Enciphered -Doc-Prof-Descriptor, Preenciphered-Bodypart-Descriptor,Postenciphered-Bodypart-Descriptor, FROM Protected-Part-Descriptors; -參照第 7.15 節 Interchange-Data-Element := CHOICE document-profile
24、 0 IMPLICIT Document-Profile-Descriptor, layout-object-class 1 IMPLICIT Layout-Class-Descriptor, layout-object 2 IMPLICIT Layout-Object-Descriptor, content-portion 3 IMPLICIT Text-Unit, logical-object-class 5 IMPLICIT Logical-Class-Descriptor, layout-object 6 IMPLICIT Logical-Object-Descriptor, pres
25、entation-style 7 IMPLICIT Presentation-Style-Descriptor, layout-style 8 IMPLICIT Layout-Style-Descriptor, sealed-doc-prof-descriptor 9 IMPLICITSealed-Doc-Prof-Descriptor, enciphered-doc-proc-descriptor 10 IMPLICIT Enciphered-Doc-Proc-Descriptor, preenciphered-doc-proc-descriptor 11 IMPLICIT Preencip
26、hered-Bodypart -Descriptor, postenciphered-doc-proc-descriptor 12 IMPLICIT Postenciphered-Bodypart-Descriptor END 8 CNS 14319-5, X 6029-5 7.7 文件本體部分描述符 - 參照第 7.8 節- 參照第 7.9 節- 參照第 7.10 節- 參照第 7.11 節- 參照第 7.13 節- 參照第 7.14 節- 參照 CNS 14319-7 - 參照 CNS 14319-6 - 參照 CNS 14319-8 - 參照 CNS 14147-2 9 CNS 1431
27、9-5, X 6029-5 10 CNS 14319-5, X 6029-5 11 CNS 14319-5, X 6029-5 12 CNS 14319-5, X 6029-5 13 CNS 14319-5, X 6029-57.8 識別符和表示式 - 參照第 7.9 節 - 參照第 7.10 節 14 CNS 14319-5, X 6029-5 15 CNS 14319-5, X 6029-5- 參照第 7.8 節 7.9 編排描述符 - 參照第 7.11 節 - 參照第 7.12 節 - 參照第 7.14 節 16 CNS 14319-5, X 6029-5 17 CNS 14319-5,
28、 X 6029-5 18 CNS 14319-5, X 6029-5 7.10 邏輯描述符 19 CNS 14319-5, X 6029-5- 參照第 7.8 節 - 參照第 7.9 節 - 參照第 7.11 節 - 參照第 7.12 節 20 CNS 14319-5, X 6029-5 7.11 式樣描述符 - 參照第 7.8 節 - 參照第 7.9 節- 參照第 7.14 節- 參照 CNS 14319-6 - 參照 CNS 14319-7 - 參照 CNS 14319-8 21 CNS 14319-5, X 6029-5 22 CNS 14319-5, X 6029-5 - 參照第 7.
29、8 節 7.12 預設值表列 - 參照第 7.14 節 - 參照第 7.9 節 - 參照第 7.10 節 - 參照第 7.11 節 23 CNS 14319-5, X 6029-5 24 CNS 14319-5, X 6029-5 - 參照第 7.8 節 7.13 文字單元 - 參照 CNS 14319-6 - 參照 CNS 14319-7 - 參照 CNS 14319-8 25 CNS 14319-5, X 6029-57.14 顏色屬性 - 參照第 7.7 節 26 CNS 14319-5, X 6029-5 27 CNS 14319-5, X 6029-5- 參照第 7.8 節 7.15
30、 保護部分描述符 28 CNS 14319-5, X 6029-5 29 CNS 14319-5, X 6029-5引用標準: CNS 7648 資料元及交換格式資訊交換日期及時間的表示法 CNS 13854 資訊處理文字與辦公室系統標準通用標示語言 CNS 13855 資訊技術標準通用標示語言支授設施標準通用標示語言文件交換格式 CNS 13889 資訊技術開放系統互連抽象語法記法 (一 )規格 CNS 13890 資訊技術開放系統互連抽象語法記法 (一 )基本編碼規則之規格 CNS 13915-8 資訊技術開放系統互連目錄系統第 8 部:鑑別框架 CNS 14147-2 資訊技術字型資訊交
31、換第 2 部:交換格式 CNS 14319-4 資訊技術開放文件架構與交換格式第 4 部:文件規範 CNS 14319-6 資訊技術開放文件架構與交換格式第 6 部:字元內容架構 CNS 14319-7 資訊技術開放文件架構與交換格式第 7 部:光柵圖形內容架構 CNS 14319-8 資訊技術開放文件架構與交換格式第 8 部:幾何圖形內容架構 CNS 14356 資訊技術開放文件架構與交換格式:簡介與一般原則 CNS 14356-1 資訊技術開放文件架構與交換格式第 1 部:文件結構 相對應國際標準: ISO/IEC 8613-5 Information technology Open Do
32、cument Archi-tecture (ODA) and interchange format Part 5: Open document in-terchange format 30 CNS 14319-5, X 6029-5 附錄 1 編碼表示 (參考性 ) 本附錄總結說明於 CNS 13890 的抽象語法記法 ASN.1 的基本編碼規則。 每個組成描述符或文字單元,或部分描述符或文字單元的資料結構或資料個體的編碼表示包含一個型式欄,一個長度欄和一個數值欄。 假如相關的資料個體是一個基本資料個體,則型式欄規定基本型式欄,長度欄規定數值欄的長度,數值欄表示資料個體的數值。 假如相關的資料
33、個體不是一個基本資料個體,則型式欄識別相對的資料結構或資料個體的屬性或屬性群,長度欄規定數值欄的長度,數值欄包含一個或多個三個體組(Triplet),每個由代表下屬資料結構和資料個體的類別欄,長度欄和數值欄組成。 型式欄 (在 CNS 13890 稱為 “八位元組識別符 ”)由一個或一個以上的位元組所組成。第一個位元組的位元用法如下: 位元 8 和 7 標籤類別 ( 00:通用, 01:應用, 10:上下文特定, 11:專屬 ); 位元 6 內容編碼形式 ( 0:簡單, 1:結構化 ); 位元 5 至 1 00000 至 11110:標籤號碼; 11111 表示多 -八位元組型式欄。 附錄 1 表 1 所示的通用標籤的標籤號碼參照 CNS 13889 和 CNS 13890。 附錄 1 表 1 國際類別標籤 內鍵資料型式 定義資料型式 0:內容結束 18:數值字串 1:布林 19:可列印字串 2:整數 20:電訊字串 3:位元串 21:視訊字串 4:八位元組字串 22:國際字母 5 號字串 5:空 23:國際標準時間 6:物件識別符 24:一般時間 7:物件描述符 25:圖形字元串 8:外部 26:一般字串 9:實數 27:可見字串 10:列舉型 11:加密 16:序列 17:集