Introducing the Office (2007) Open XML File Formats

19
Introducing the Office (2007) Open XML File F ormats 報報報 : 報報報

description

Introducing the Office (2007) Open XML File Formats. 報告人 : 劉宗銜. outline. 簡介 Office Open XML 格式的術語列表 Office XML 格式的結構. 簡介. 隨著 20 世紀 90 年代 XML 的出現, Microsoft Office 開發人員開始認識到二進位檔( .doc , .dot , .xls ,以及 .ppt 檔)已經無法滿足新的市場的需求,其中包括輕鬆地在不同架構之間傳遞資料,以及允許用戶從這些資料中搜尋資訊。 - PowerPoint PPT Presentation

Transcript of Introducing the Office (2007) Open XML File Formats

Page 1: Introducing the Office (2007) Open XML File Formats

Introducing the Office (2007) Open XML File Formats

報告人 : 劉宗銜

Page 2: Introducing the Office (2007) Open XML File Formats

outline• 簡介• Office Open XML 格式的術語列表• Office XML 格式的結構

Page 3: Introducing the Office (2007) Open XML File Formats

簡介• 隨著 20 世紀 90 年代 XML 的出現, Microsoft Office 開發人員開始

認識到二進位檔( .doc , .dot , .xls ,以及 .ppt 檔)已經無法滿足新的市場的需求,其中包括輕鬆地在不同架構之間傳遞資料,以及允許用戶從這些資料中搜尋資訊。

• 2007 Microsoft Office system 為 Microsoft Office Excel 2007 , Microsoft Office Word 2007 ,和 Microsoft Office PowerPoint 2007 採用了基於 XML 的檔格式,從而延續了這種轉移。新的檔格式,稱為 Office Open XML 格式,解決了上述市場需求的問題,同時改變 Microsoft Office 文檔建立解決方案的方式。

• 任何支援 XML 的應用程式都可以訪問新檔格式當中的資料,並與之協同工作。這些應用程式並不需要成為 Microsoft Office system 或 Microsoft 產品的一部分。用戶也可以使用標準的轉換來提取或重新織資料。另外,安全性也有提升,因為資訊是存儲在 XML 當中的,它從本質上來講都是純文本的。因此,資料可以沒有任何障礙地通過企業防火牆進行傳遞。

Page 4: Introducing the Office (2007) Open XML File Formats

Office Open XML 格式的術語列表• API :一系列的功能或方法,用來訪問軟體的功能。 API 是應用程式

介面( Application Programming Interface )的簡寫。

• 轉換器( Converters ):一些免費的工具,可以在以前的 Office 版本中打開以 Office Open XML 格式創建的檔。轉換器可以讀取或編輯文檔,並且可以向文檔中應用資訊許可權管理( IRM )保護。它可以繼續保護 IRM 資訊,而與接收者是使用 2007 Office 版本還是原有的版本無關

• 向上相容性:早期的應用程式版本可以打開後面版本的文檔,並且可以忽略那些在早期版本中沒有實現的功能。例如, Word 2003 就是與 Word 2007 向上相容的,它可以使用一個轉換器成功的打開 Word

2007 檔。

Page 5: Introducing the Office (2007) Open XML File Formats

Office Open XML 格式的術語列表• 包 (Package) : ZIP 容器,它包含了組成檔的元件

• 元件 (part) :對應于包中一個檔。

• ZIP :一種工業標準的壓縮存檔格式,用來在電腦之間,使用電子郵件或者通過 Internet 存儲和轉換檔。

• 關係:指定元件的集合在一個文檔中如何綁定在一起的方法。這種方法指定了一個來源元件和一個目標元件之間的連接。關係也是存儲在文檔包的 XML 部件當中的

Page 6: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構• 新的檔案格式的容器是以元件為基礎的壓縮 ZIP 檔格式。

• 在新的 Office Open XML 格式的核心使用一些 XML 的引用架構和一個 ZIP 容器。每個檔都是由一些元件的集合組成的;這個集合定義了文件。

• 文件元件是存儲在容器檔當中,或者存儲在基於工業標準的 ZIP 格式的包中。

• 許多元件都是用來描述應用程式資料,元資料,以及自定義資料的 XML 資料,它們都是存儲在容器檔當中的。其他非 XML 元件,也可以包含在容器 package 當中,其中包括在文件中表示圖片或者嵌入的 OLE 物件的二進位檔。

• 另外,還有一些關係部件,它們指定了元件之間的關係;這種設計方式為 Office 檔提供了結構。元件組成了檔的內容,而關係描述了這些內容如何組織在一起。

• Office 文件的 XML 檔格式緊密的結合在一起,但是它們是模組化的,並且具有高度的靈活性。。

Page 7: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構打開一個 Word 2007 XML 檔

1. 創建一個臨時目錄來存儲存檔案和它的元件。2. 創建一個 Word 2007 文件,包括文本,圖片,以及其他元素,保

存為一個 .docx 文件。3. 在檔案名的尾端添加一個 .zip副檔名。4. 雙擊文件。這時將會在 ZIP 應用程式當中打開該檔。您可以查看組

成檔的每個元件。5. 將這些部件提取到剛才創建的臨時目錄當中。

Page 8: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構

Page 9: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構• ZIP被選擇為 Office Open XML 格式的 package 格式,因為它是

一種 容易理解的標準。

• 現在有許多的工具都可以處理 ZIP 格式,而且使用 ZIP 提供一種靈活 的模組化的結構,允許對於功能進行擴展。

• 可以使用任何可以處理標準的 ZIP 檔的工具,來開啟 2007 Microsoft Office system 的所有內容。

• 在您打開一個容器檔案後,您可以處理文件 package 中的任何元 件。

Page 10: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構

• 在一個 Office XML 格式的 package 當中,檔案的許多邏輯元件都作為單獨的檔案或部分存儲。這種模組化的存儲方式是這種檔格式的主要特點之一。

• 模組化允許您快速的定位一個特定的元件,並且直接處理這個元件,可以根據依照的商業需求編輯,替換,甚至刪除文件的元件 。

• Package 中定義的檔案關係,而不是檔案結構,定義了哪些檔案是有效的。在您更新關係屬性的時候,您可以重新安排或者重命名一個 Office ( 2007 ) XML 格式定義的ZIP 容器裏的元件,從而使得文件中的每個元件可以相關。

Page 11: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構( 主要的文件元件 )

• http://schemas.microsoft.com/office/2006/relationships/officeDocument 關係的目標是定義文檔的主要元件( PowerPoint 的幻燈片, Excel 的工作簿,或者 Word 的文件)。所有其他的關係都是基於主要文件元件的。

• 應用程式目錄 ( 例如 Word) 包含了應用程式特定的,文件元件檔,例如(對於 Word 來說)

1. wordDocument.xml 包含了文件當中的資料(文本),以及樣式和字體設置。2. footer.xml 包含了有關文件頁尾的資訊,例如它們位於什麼頁面上以及相關的樣式

資訊。3. header.xml 包含了與 footer.xml 檔當中相類似的資訊,但是它是有關頁眉的資訊。4. wordDocument.doc 它是原有文檔的複本。5. styles.xml 包含了有關文件中樣式的資訊,例如字體大小,表格樣式,和列表樣式等。

Page 12: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構( 主要的文件元件 )

• 音頻目錄包含了所有的音頻類型的檔,例如 .mid , .mp3 ,或 .wav等文件。

• Content_Types.xml 文件為包含在我中的其他部件提供了一個內容類型的列表。內容類型可以定義為部件的類型,它們可以存儲在一個包中。

• 文件屬性元件

包含了對所有遵循 XPS 格式的檔定義的核心文件屬性 。例如:作者、標題、主題、建立日期等

Page 13: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構( 關係 )

• 元件都是單獨的元素,使用關係,可以用來指定元件集合之間的關聯,從而形成實際的文檔。

• 關係是通過 XML 來定義的。• 關係指定了一個來源元件和一個目標元件之間的連接。• 關係被存儲在 XML 文件或者“關係元件”當中。如果一

個來源元件擁有多個關係,所有後續的關係都將會被列出在相同的 XML 或關係元件當中。

• 關係在 Office XML 格式中扮演著重要的角色,每個文檔部件都至少被一個關係所引用著。

• 在元件當中,所有到關係的引用都使用一個 Relationship ID 來表示,它允許所有元件之間的連接,並且它與內容的架構無關。

Page 14: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構( 關係 )

• Excel2007 workbook 的關係圖

Page 15: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構( 關係 )

下面是一個 Excel 2007 workbook 中的關係元件的例子,這個 workbook 包含兩個工作表:<Relationships xmlns="http://schemas.microsoft.com/package/2005/06/relationships">

<Relationship ID="rId3" Type="http://schemas.microsoft.com/office/2005/8/relationships/xlStyles" Target="styles.xml"/>

<Relationship ID="rId2" Type="http://schemas.microsoft.com/office/2005/8/relationships/xlWorksheet" Target="worksheets/Sheet2.xml"/>

<Relationship ID="rId1" Type="http://schemas.microsoft.com/office/2005/8/relationships/xlWorksheet" Target="worksheets/Sheet1.xml"/>

<Relationship ID="rId5" Type="http://schemas.microsoft.com/office/2005/8/relationships/xlMetadata" Target="metadata.xml"/>

<Relationship ID="rId4" Type="http://schemas.microsoft.com/office/2005/8/relationships/xlSharedStrings" Target="strings.xml"/>

</Relationships>

Page 16: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構• _rels 目錄

這個目錄中包含一個 .rels 檔,它定義了 package 中的 root 關係。它是在分析整個 package 時首先要流覽的第一個檔。

• .rels 文件包含了基於起元件(虛擬的起始元件)的關係。其中的關係是通過下面的格式來定義的:<Relationship Id="someID" Type="relationshipType" Target="targetPart"/>

Id 可以是任何字串,只要它在 .rels 檔當中是唯一的就可以。 Type 表示關係的類型,它用來區分不同的關係,並且用來提示關係的

用途。它指向定義 Office Open XML 格式類型的架構。 Target 指向包含關係目標的目錄和檔案。

Page 17: Introducing the Office (2007) Open XML File Formats

Office XML 格式的結構( 文件副檔名 )

• 2007 Microsoft Office system 的文件使用Office XML 格式保存檔,它擁有新的副檔名, Word 2007 , Excel 2007 ,和 PowerPoint 2007 使用的默認副檔名只是在原有的檔副檔名上加上一個字母“ x” ,也就是分別是 .docx , .xlsx ,和 .pptx

• 啟用後的文檔使用的副檔名的結尾是字母“m” ,而不是“ x”例如 Word .docx .docm

Excel .xlsx .xlsm

PowerPoint .pptx .pptm

Page 18: Introducing the Office (2007) Open XML File Formats

使用 Office XML 應用實例 一個顧問公司的 logo 需要進行改變,從而反應他們的新目標。 IT 部門

接到了這個改變成千上萬的檔案中所有 logo 的任務,這些文件都被保存在一個伺服器當中。在以前版本的 Microsoft Office 應用程式中,他們必須單獨打開每個文件,刪除原有的 logo ,並且粘貼新的 logo ,或者創建並且測試一個相當複雜的應用程式,來自動的執行這個任務。通過新的檔格式, IT 部門創建一個批次處理過程來流覽檔的格式,並且在 meida 目錄中定位圖片的位置(這對於每個文檔都是一樣的),並且替換為新的圖片。現在,當打開新的文檔後,新的 logo 就自動的顯示出來了。

Page 19: Introducing the Office (2007) Open XML File Formats

Resources

• Introducing the Office (2007) Open XML File Formats

http://msdn2.microsoft.com/en-us/library/aa338205.aspx