国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > XML > 正文

了解 XML實(shí)現(xiàn)通用的數(shù)據(jù)訪問

2024-09-05 20:54:11
字體:
供稿:網(wǎng)友

了解可擴(kuò)展標(biāo)記語言 (XML) 如何幫助我們實(shí)現(xiàn)通用的數(shù)據(jù)訪問。XML 是一種基于 Unicode 的純文本元語言,即一種用于定義標(biāo)記語言的語言。它不依賴于任何編程語言、操作系統(tǒng)或軟件供應(yīng)商。XML 可以提供對各種數(shù)據(jù)處理、構(gòu)建、轉(zhuǎn)換和查詢技術(shù)的訪問。(本文包含一些指向英文站點(diǎn)的鏈接。)

簡介

最初設(shè)想的可擴(kuò)展標(biāo)記語言 (XML) 用于為 Web 定義新文檔的格式。XML 由標(biāo)準(zhǔn)通用標(biāo)記語言 (SGML) 衍生而來,可以認(rèn)為它是一種元語言,即一種定義標(biāo)記語言的語言。SGML 和 XML 都是基于文本的格式,提供了一種使用標(biāo)記(文字由‘<’和‘>’括起)描述文檔結(jié)構(gòu)的機(jī)制。Web 開發(fā)人員可能會(huì)注意到,XML 與 HTML 有一些相似,這是因?yàn)檫@二者都是由 SGML 衍生而來的。

隨著 XML 的應(yīng)用日益普及,現(xiàn)在人們已普遍認(rèn)同,XML 不僅有助于為 Web 描述新文檔的格式,而且也適用于描述結(jié)構(gòu)化的數(shù)據(jù)。所謂結(jié)構(gòu)化的數(shù)據(jù)包括那些電子表格、程序配置文件和網(wǎng)絡(luò)協(xié)議中通常所包含的信息。

XML 要優(yōu)于早期的數(shù)據(jù)格式,因?yàn)?XML 可以很輕松地表示表格式的數(shù)據(jù)(如數(shù)據(jù)庫中的關(guān)系數(shù)據(jù)或電子表格)和半結(jié)構(gòu)化的數(shù)據(jù)(如 Web 頁面或業(yè)務(wù)文檔)。早已存在且應(yīng)用廣泛的一些格式(如逗號(hào)分隔值 [CSV] 文件)可以有效地處理表格式數(shù)據(jù),卻不能很好地處理半結(jié)構(gòu)化數(shù)據(jù),而 RTF 等則只能專門用于半結(jié)構(gòu)化的文本文檔。因此,XML 作為信息交換的通用語言被廣泛接受。

無處不在的 XML

除了可以表示結(jié)構(gòu)化和半結(jié)構(gòu)化的數(shù)據(jù)之外,XML 還有許多其他特性,使其成為一種被廣泛采用的數(shù)據(jù)表示格式。XML 是可擴(kuò)展的,與平臺(tái)無關(guān)的,并且由于其完全采用 Unicode 而支持國際化。XML 是基于文本的格式,因此,用戶可以根據(jù)需要使用標(biāo)準(zhǔn)的文本編輯工具讀取和編輯 XML 文檔。

XML 的可擴(kuò)展性表現(xiàn)在多個(gè)方面。首先,與 HTML 不同,XML 沒有固定的詞匯表。相反,用戶可以使用 XML 定義特定的應(yīng)用程序或行業(yè)專用的詞匯表。其次,與使用其他格式的應(yīng)用程序相比,處理或使用 XML 格式的應(yīng)用程序?qū)?XML 結(jié)構(gòu)的更改更具“抵抗力”,只要這些更改是附加的。例如,如果某個(gè)應(yīng)用程序主要處理具有

customer-id

屬性的

<Customer>

元素,如果再向

<Customer>

元素添加一個(gè)

last-purchase-date

屬性,該應(yīng)用程序通常也不會(huì)被破壞。這樣的適應(yīng)性在其他的數(shù)據(jù)格式中很少見,這也成為使用 XML 的一個(gè)顯著優(yōu)勢。

XML 不依賴于任何編程語言、操作系統(tǒng)或軟件供應(yīng)商。事實(shí)上,使用各種編程語言都可以很容易地生成或使用 XML。而平臺(tái)獨(dú)立性使得 XML 有助于在不同編程平臺(tái)和操作系統(tǒng)之間實(shí)現(xiàn)互操作。

很多人已經(jīng)意識(shí)到將數(shù)據(jù)發(fā)布為 XML 有很多優(yōu)勢,由此也推動(dòng)了 XML 數(shù)據(jù)源的大量應(yīng)用。人們正在或者已經(jīng)將業(yè)務(wù)文檔、數(shù)據(jù)庫和業(yè)務(wù)間的通訊等信息源轉(zhuǎn)換為使用 XML 作為表示格式。Microsoft 的產(chǎn)品,如 Microsoft Office&reg;、Microsoft SQL Server&#8482; 和 Microsoft .NET Framework,都能使最終用戶和開發(fā)人員將文檔、網(wǎng)絡(luò)信息和其他數(shù)據(jù)生成為 XML 或作為 XML 使用。

XML 1.0 語法

如前所述,W3C XML 1.0 推薦描述了一種基于文本的格式,使用類似于 HTML 的語法來描述結(jié)構(gòu)化和半結(jié)構(gòu)化的數(shù)據(jù)。

XML 和 HTML 的對比

HTML 和 XML 文檔都由元素組成,每個(gè)元素都包含一個(gè)“起始標(biāo)記”(例如<order>)、一個(gè)“結(jié)束標(biāo)記”(例如</order>),以及兩個(gè)標(biāo)記之間的信息(指元素的內(nèi)容)。元素可以使用屬性進(jìn)行注解,屬性包含了關(guān)于元素及其內(nèi)容的元數(shù)據(jù)。

但是,HTML 與 XML 之間存在一個(gè)顯著的差別,即 XML 區(qū)分大小寫,而 HTML 不區(qū)分大小寫。也就是說,在 XML 中,起始標(biāo)記<Table>和<table>

是不同的,而在 HTML 中則是相同的。HTML 與 XML 之間的另一個(gè)差別是,XML 引入了“良好結(jié)構(gòu)”的概念。XML 的“良好結(jié)構(gòu)”規(guī)則通過強(qiáng)制規(guī)定一些規(guī)則來消除在處理 HTML 等標(biāo)記語言時(shí)存在的一些固有的模糊性,如它強(qiáng)制規(guī)定了所有屬性都必須用括號(hào)括起,所有元素都必須具有一對起始標(biāo)記和結(jié)束標(biāo)記,或者明確指出其為空元素。有關(guān)良好結(jié)構(gòu)的簡短說明,請參閱“XML FAQ”的 D.2 部分。

HTML 與 XML 之間最顯著的區(qū)別在于,HTML 已預(yù)先定義了元素和屬性,元素和屬性的行為已完全指定,而 XML 則不是這樣。相反,文檔作者可以創(chuàng)建自己的特定于其應(yīng)用程序或業(yè)務(wù)需求的 XML 詞匯表。目前已有的 XML 詞匯表適用于許多行業(yè)和應(yīng)用程序,從財(cái)務(wù)信息報(bào)告 (XBRL)、金融服務(wù) (FpML) 到 Web 文檔 (XHTML)、網(wǎng)絡(luò)協(xié)議 (SOAP)。由于不必關(guān)注那些用來指定如何呈現(xiàn)或顯示 XML 文檔的預(yù)定義元素和屬性,因此文檔作者在創(chuàng)建文檔時(shí)就可以將重點(diǎn)放在與其特定問題領(lǐng)域相關(guān)的語義信息上。XML 詞匯表帶來了內(nèi)容與形式的分離,使得信息和內(nèi)容可以得到更大規(guī)模的重復(fù)利用。

XML 文檔剖析

以下示例是一個(gè)表示音像商店客戶訂單的 XML 文檔。請注意,此文檔既表示了嚴(yán)謹(jǐn)?shù)慕Y(jié)構(gòu)化數(shù)據(jù)(用來描述光盤信息),也表示了半結(jié)構(gòu)化數(shù)據(jù)(用來說明有關(guān)特定顧客的特殊說明和注釋),而其表示方式非常簡單。

以下為引用的內(nèi)容:

<?XML version="1.0" encoding="iso-8859-1" ?>
<?XML-stylesheet href="orders.xsl"?>

<order id="ord123456">
<customer id="cust0921">
<first-name>Dare</first-name>
<last-name>Obasanjo</last-name>
<address>
<street>One Microsoft Way</street>
<city>Redmond</city>
<state>WA</state>
<zip>98052</zip>
</address>
</customer>
<items>
<compact-disc>
<price>16.95</price>
<artist>Nelly</artist>
<title>Nellyville</title>
</compact-disc>
<compact-disc>
<price>17.55</price>
<artist>Baby D</artist>
<title>Lil Chopper Toy</title>
</compact-disc>
</items>

<!-- 要多走幾英里找到顧客 -->
<special-instructions XMLns:html="http://www.w3.org/1999/xhtml/">
<html:p>If customer is not available at the address then attempt
leave package at one of the following locations listed in order of
which should be attempted first
<html:ol>
<html:li>Next Door</html:li>
<html:li>Front Desk</html:li>
<html:li>On Doorstep</html:li>
</html:ol>
<html:b>Note</html:b> Remember to leave a note detailing where
to pick up the package.
</html:p>
</special-instructions>
</order>

文檔的開頭是可選的 XML 聲明,用以指定所使用的 XML 版本,然后是文檔所使用的字符編碼。接下來是 XML 樣式表處理指令,用來綁定樣式表。樣式表中包含的 XML 文檔的格式化指令可以用更生動(dòng)的方式在用戶應(yīng)用程序(例如 Web 瀏覽器)中呈現(xiàn) XML 文檔。處理指令通常用來在 XML 文檔中嵌入特定于應(yīng)用程序的信息。例如,處理以上文檔的大多數(shù)應(yīng)用程序都會(huì)忽略 XML 樣式表處理指令,而用于顯示 XML 文檔的應(yīng)用程序(例如 Web 瀏覽器)則會(huì)使用處理指令中的信息,以確定將包含了用于顯示文檔的特殊指令的樣式表定位在哪里。

Unicode 尖括號(hào) = 互操作

XML 1.0 語法是基于文本的,而且可以很容易地進(jìn)行分析,這使得 XML 在需要跨平臺(tái)進(jìn)行交互操作時(shí),成為首選的數(shù)據(jù)交換格式。在多種常用的操作系統(tǒng)中都可以使用 XML 分析器,因此,不同平臺(tái)上完全不同的部件在需要共享信息時(shí),可以很容易地進(jìn)行標(biāo)準(zhǔn)化,采用 XML 作為交換格式。

以 Unicode 為基礎(chǔ)的 XML 也適用于在全球網(wǎng)絡(luò)中共享信息,例如在 Web 上。

信息集 (Infoset) 和 XML 系列技術(shù)

盡管使用 XML 作為數(shù)據(jù)表示格式可以帶來一個(gè)極大的優(yōu)勢:通過使用基于文本的 XML 語法獲得平臺(tái)互操作性和可擴(kuò)展性,但這只是 XML 為應(yīng)用程序開發(fā)人員帶來的益處之一。使用 XML 的另一個(gè)主要好處在于,用戶可以訪問各種數(shù)據(jù)處理、構(gòu)建、轉(zhuǎn)換和查詢技術(shù)。

共3頁上一頁123下一頁
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 渝中区| 平阴县| 苍梧县| 罗平县| 五台县| 唐海县| 信宜市| 苏尼特左旗| 井研县| 榆社县| 永平县| 墨竹工卡县| 台山市| 盐池县| 苗栗县| 美姑县| 巫溪县| 大渡口区| 遂平县| 苍梧县| 太和县| 新兴县| 凭祥市| 安徽省| 东乡| 雷山县| 永靖县| 中方县| 米泉市| 正定县| 九江市| 郓城县| 盈江县| 翁源县| 宁阳县| 德庆县| 新沂市| 镇安县| 樟树市| 南澳县| 巴塘县|