XML 入門

Work anywhere from any device with Microsoft 365

Upgrade to Microsoft 365 to work anywhere with the latest features and updates.

Upgrade now

您可能聽過 XML (擴展標記語言) ,您可能也聽過許多組織應該使用它的原因。 但 XML 到底是什麼? 本文將說明 XML 的基本功能,包括 XML 是什麼,以及其運作方式。

本文內容

標記、標記和標記的簡短外觀

那麼什麼是 XML?

關於格式良好的資料

快速查看架構

快速查看轉換

Microsoft Office 系統中的 XML 預覽

標記、標記和標記的簡短外觀

若要瞭解 XML,瞭解標記資料的想法會有所説明。 數百年來,人們一直建立檔,而且只要他們標記這些檔就一樣。 例如,學校教師會一併標記學生論文。 他們要求學生移動段落、厘清句子、修正拼錯等等。 標記檔就是定義檔中資訊的結構、意義和視覺外觀。 如果您曾經在 Microsoft Office Word 中使用過追蹤修訂功能,表示您曾使用電腦化形式的標記。

在計算中,「標記」也演變為「標記」。 標記是使用稱為標記 (或權杖) 定義任何資料的結構、視覺外觀,以及 XML 中的意義。

本文的 HTML 程式碼是一個很好的電腦標記範例。 如果您在 Microsoft Internet Explorer (流覽,請以滑鼠右鍵按一下頁面,然後按一下 [查看來源) ,即會看到可讀取的文字和超文字標記語言 (HTML) 標記,例如 <p><h2>。 HTML 和 XML 檔中的標記很容易識別,因為它們周圍有角括弧。 在本文的原始程式碼中,HTML 標籤會執行各種工作,例如定義每個段落的開頭和結尾 (<p> ... </p>) 並標記每個影像的位置。

那麼什麼是 XML?

HTML 和 XML 檔包含以標記圍繞的資料,但這就是兩種語言的相似性結尾。 在 HTML 中,標記會定義資料的外觀與感覺,標題會放在這裡、段落會從這裡開始,等等。 在 XML 中,標記會定義資料的結構與意義 ,即資料是什麼。

當您描述資料的結構和意義時,您可以以多種方式重複使用該資料。 例如,如果您有一個銷售資料區塊,而且區塊中的每個專案都清楚識別,您可以只將您需要的專案載入至銷售報告,並載入其他專案至會計資料庫。 換句話說,您可以使用一個系統來產生資料,並使用 XML 標記來標記資料,然後在任何其他數量的其他系統中處理該資料,無論硬體平臺或作業系統如何。 這種可攜性是 XML 成為交換資料最熱門的技術之一的原因。

在進行動作時,請記得以下幾點:

  • 您無法使用 HTML 來交換 XML。 不過,您可以將 XML 資料封裝在 HTML 標籤中,並顯示在網頁中。

  • HTML 僅限於所有使用者共用預先定義的一組標記。

  • XML 可讓您建立描述資料與資料結構所需的任何標記。 例如,假設您需要儲存並共用寵物相關資訊。 您可以建立下列 XML 程式碼:

    <?xml version="1.0"?>
    <CAT>
      <NAME>Izzy</NAME>
      <BREED>Siamese</BREED>
      <AGE>6</AGE>
      <ALTERED>yes</ALTERED>
      <DECLAWED>no</DECLAWED>
      <LICENSE>Izz138bod</LICENSE>
      <OWNER>Colin Wilcox</OWNER>
    </CAT>
    

您可以看見 XML 標記可以確切知道您查看的資料類型。 例如,您知道這是有關貓的資料,而且您可以輕鬆地找到貓的名字、年齡等。 建立可定義幾乎任何資料結構的標記,是 XML"可擴展"的一個功能。

但請勿將該程式碼範例中的標記與 HTML 檔案中的標記混淆。 例如,如果您將該 XML 結構貼到 HTML 檔案,然後以瀏覽器查看檔案,結果看起來會像這樣:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

瀏覽器會忽略您的 XML 標記,只顯示資料。

關於格式良好的資料

您可能會聽到 IT 部門中的某人提及「格式良好的」XML。 格式良好的 XML 檔案符合一組規範 XML 的非常嚴格的規則。 如果檔案不符合這些規則,XML 會停止工作。 例如,在先前的程式碼範例中,每個開啟的標記都有一個結束標記,因此範例會遵循其中一個格式良好的規則。 如果您移除標記,並嘗試在其中一個 Office 程式中開啟該檔案,就會看到錯誤訊息,而程式會阻止您使用該檔案。

您不一定要瞭解建立格式良好的 XML (的規則,雖然這些規則很容易理解) ,但您必須記得,只有在資料格式良好時,才能在程式和系統之間共用 XML 資料。 如果您無法開啟 XML 檔案,表示該檔案格式不正確。

XML 也與平臺無關,也就是說,任何使用 XML 建立的程式都可以讀取及處理您的 XML 資料,無論硬體或作業系統如何。 例如,使用正確的 XML 標記,您可以使用桌面程式來開啟及處理來自大型機電腦的資料。 此外,無論誰建立 XML 資料內文,您都能在數個 Office 程式中處理相同的資料。 由於 XML 非常便攜,因此已成為在資料庫和使用者桌面之間交換資料的最熱門技術之一。

以其他程式使用 XML

除了已標記且格式良好的資料之外,XML 系統通常會使用兩個額外的元件:架構和轉換。 下列各節說明這些額外的元件如何工作。

快速查看架構

不要讓「架構」一詞威脅您。 架構只是一個 XML 檔案,其中包含 XML 資料檔案中可以及無法包含之內容的規則。 架構檔案通常會使用 .xsd 副檔名,而 XML 資料檔案則使用 .xml 副檔名。

架構允許程式驗證資料。 它們提供架構來結構化資料,並確保資料建立者及任何其他使用者都瞭解這些資料。 例如,如果使用者輸入不正確資料 ,例如日期欄位中的文字,程式可以提示使用者輸入正確的資料。 只要 XML 檔案中的資料符合給定架構中的規則,任何支援 XML 的程式都可以使用該架構來讀取、解譯及處理資料。 例如,如下圖所示,Excel 可以針對 CAT 架構 <CAT> 驗證資料。

結構描述可讓應用程式共用 XML 資料。

架構可能會變得很複雜,而教您如何建立架構則超出本文的範圍。 (此外,您可能有一個 IT 部門知道如何) 不過,瞭解架構的外觀會有所説明。 下列架構會定義 CAT </> / CAT <標記>規則。

<xsd:element name="CAT">  
  <xsd:complexType>  
    <xsd:sequence>
      <xsd:element name="NAME" type="xsd:string"/>
      <xsd:element name="BREED" type="xsd:string"/>
      <xsd:element name="AGE" type="xsd:positiveInteger"/>
      <xsd:element name="ALTERED" type="xsd:boolean"/>
      <xsd:element name="DECLAWED" type="xsd:boolean"/>
      <xsd:element name="LICENSE" type="xsd:string"/>
      <xsd:element name="OWNER" type="xsd:string"/>        
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>

別擔心瞭解範例中所有專案。 請記住以下事實:

  • 範例架構中的行專案稱為宣告。 如果您需要動物的其他相關資訊 ,例如其色彩或標記,您的 IT 部門可能就會在架構中加入宣告。 隨著業務需求的變化,您可以變更 XML 系統。

  • 宣告為資料結構提供了極大的控制權。 例如, <xsd:sequence> 宣告表示標記 ,例如 <NAME><BREED> ,必須以上述順序出現。 宣告也可以控制使用者可以輸入的資料類型。 例如,上述架構需要貓的年齡為正數,而 ALTERED 和 DECLAWED 標記的布林值 (TRUE 或 FALSE) 為 TRUE 或 FALSE。

  • 當 XML 檔案中的資料符合架構所提供的規則時,該資料即表示有效。 針對架構檢查 XML 資料檔案的過程稱為邏輯 (驗證) 程式。 使用架構的最大優點是能協助防止資料損壞。 由於 XML 在遇到問題時會停止,因此也可輕鬆尋找損壞的資料。

快速查看轉換

如我們先前所述,XML 也提供使用或重複使用資料的強大方式。 重新使用資料的機制稱為 XSLT 的可擴展樣式表語言轉換 (XSLT) 或簡單的轉換。

不過 (,IT 部門) 也可以使用轉換在後端系統之間交換資料,例如資料庫。 例如,假設資料庫 A 將銷售資料儲存在適合銷售部門的資料表結構中。 資料庫 B 會以專為會計部門量身訂做的資料表結構來儲存營收和支出資料。 資料庫 B 可以使用轉換來接受 A 的資料,然後將資料寫入正確的資料表。

資料檔案、架構和轉換的組合構成基本的 XML 系統。 下圖顯示這類系統通常如何工作。 資料檔案會針對架構進行驗證,然後以任何可用轉換方式呈現。 在這種情況下,轉換會將資料部署到網頁中的資料表。

具備結構描述和轉換的基本 XML 檔案結構。

下列程式碼範例顯示撰寫轉換的一種方法。 它載入<CAT>資料至網頁上的資料表。 同樣,範例的要點不是要顯示如何撰寫轉換,而是要顯示轉換可以採取一個表單。

<?xml version="1.0"?>
<xsl:stylesheet version="1.0"> 
<TABLE>
  <TR>
    <TH>Name</TH>
    <TH>Breed</TH>
    <TH>Age</TH>
    <TH>Altered</TH>
    <TH>Declawed</TH>    
    <TH>License</TH>
    <TH>Owner</TH>
  </TR>
  <xsl:for-each select="CAT">
  <TR ALIGN="LEFT" VALIGN="TOP">
    <TD>
      <xsl:value-of select="NAME"/>
    </TD>
    <TD>
      <xsl:value-of select="BREED"/>
    </TD>
    <TD>
      <xsl:value-of select="AGE"/>
    </TD>
    <TD>
      <xsl:value-of select="ALTERED"/>
    </TD>
    <TD>
      <xsl:value-of select="DECLAWED"/>
    </TD>
    <TD>
      <xsl:value-of select="LICENSE"/>
    </TD>
    <TD>
      <xsl:value-of select="OWNER"/>
    </TD>
  </TR>
</xsl:for-each>
</TABLE>

此範例顯示一種轉換類型在編碼時的外觀,但請記住,您可以用純英文描述資料所需的內容。 例如,您可以前往您的 IT 部門,並說您需要列印過去兩年特定地區的銷售資料,「而且我需要這樣看」。 您的 IT 部門接著可以撰寫 (或變更) 變更以執行該工作。

讓這一切更為便利的是,Microsoft 和其他廠商正在為各種工作建立轉換。 未來,您也許可以下載符合您需求的轉換,或是您可以調整成符合您用途的轉換。 這表示 XML 在一段時間的使用成本會較低。

Microsoft Office 系統中的 XML 預覽

Office 專業版提供廣泛的 XML 支援。 自 2007 Microsoft Office system 起,Microsoft Office 開始採用 XML 檔案格式,例如 .docx、.xlsx 和 .pptx。 由於 XML 會以文字格式儲存資料,而非專屬的二進位格式,因此您的客戶可以定義自己的架構,以多種方式使用您的資料,而不需要支付版稅。 有關新格式的資訊,請參閱開啟 XML 格式和副檔名。 其他優點包括:

  • 較小的檔案大小。 新格式使用 ZIP 和其他壓縮技術,與較舊版本的 Office 二進位格式相比,將檔案大小減少 75%。

  • 更輕鬆地復原資訊,提高安全性。 XML 是可讀取的,因此如果檔案損毀,您可以在 Microsoft 記事本或其他文字閱讀程式開啟檔案,並復原至少一些資訊。 此外,新檔案會更安全,因為它們不能包含 Visual Basic for Applications (VBA) 程式碼。 如果您使用新格式來建立範本,任何 ActiveX 控制項和 VBA 宏都位於檔案中另一個更安全的區段。 此外,您可以使用檔檢查等工具來移除任何個人資料。 若要進一步使用檔檢查,請參閱檢查檔以移除隱藏資料 與個人資訊一文

到目前為止還很好,但如果您有沒有架構的 XML 資料呢? 支援 XML 的 Office 程式有自己的方法可協助您處理資料。 例如,如果您開啟的 XML 檔案還沒有 XML 檔案,Excel 會推斷架構。 Excel 接著提供您載入此資料至 XML 資料表的選項。 您可以使用 XML 清單和表格來排序、篩選或新增計算至資料。

在 Office 中啟用 XML 工具

根據預設,不會顯示開發人員 Tab,但當您想要在 Office 中使用 XML 命令時,您必須將其新增到功能區。

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

Thank you for your feedback!

Thank you for your feedback! It sounds like it might be helpful to connect you to one of our Office support agents.

×