XML語言基本介紹

2021-07-24 03:54:21 字數 1744 閱讀 1810

怎麼解釋呢,拿我們平時熟悉的html語言來說,html就是一種規定了特定標籤的語言,而xml語言則沒有規定特定的標籤(可能有一些基本的?目前我還沒有學習到,以後學習到了來補充),所以說xml語言是一種元語言,利用xml可以創造新的語言,換個角度來說,即xml是一種檔案標準,是一種約束和規則。

以下這段話引自《計算機是怎樣跑起來的》

那麼是xml規定了這些標籤嗎?答案是否定的。xml本身並不會限定標籤的種類,反倒是允許xml的使用這隨心所欲的建立標籤。也就是說,在』』之間的單詞可以是任意的。這就是所謂的「可擴充套件」。在html中,我們只能使用由html定義出的那若干種標籤,因此html是固定的標記語言。與此相對,xml是可擴充套件的標記語言。

xml僅僅限定了進行標記時標籤的書寫格式(書寫風格)。也就是說通過定義要使用的標籤種類,就可以創造出一門新的標記語言通常把這種用於創造語言的語言稱作「元語言」。

通常把遵循xml約束、正確標記了的文件稱作「格式良好的xml文件」。換言之,只要能通過xml解析器的解析,就是格式良好的xml文件。

這句話如何理解呢,比如我們寫乙個網頁中的**,我們可以通過如下的方式:

商品名重量

**阿炳

12010

小雞10011

如上,我們通過**上方的標題,例如阿炳的120是重量,10是他的**,小雞的重量是100,**11。

但是如果我們如下

阿炳120

10小雞

10011

那麼請問你,你知道阿炳的120是什麼含義嗎。顯然不能夠分清120和10的含義,我們甚至不能分清「阿炳」這個詞語的含義。

總結來說,html雖然能呈現**,但是不能用標籤來展示**內部的含義(這個不能展示是相對於計算機來說的,即上方的120和10我們都用

>

和d>

包含起來,並沒有用可以代表資訊的

ice>

和rice

>

類似的標籤來包含)。

因此,我們無法用程式或者說用程式從乙個html檔案的源**中提取相關**和重量類似的資訊是非常繁瑣的。但是我們使用xml定義新的標籤,那麼乙個檔案使用了這種新的標籤之後就可以很輕鬆地通過計算機來識別**、重量這些類似的資訊了。 因為這些數字代表的含義已經被包含它的標籤給標識出來了。

計算機是處理資料的,因此資料交換必不可少。那麼不同廠商之間的應用程式和同乙個廠商的不同應用程式之間進行資料交換時就可以使用xml檔案。某乙個程式可以通重載入另乙個程式儲存的xml檔案來得到並使用資料。另外還有csv(comma separated value,即逗號分隔符)也作為通用的資料交換格式沿用至今。csv檔案較小,但是只是含有資訊,而且沒有為各個資訊賦予含義,但是因為含有總資訊量的減少,從資訊理論的角度來講,檔案大小比xml檔案小。microsoft excel2002使用了csv和xml兩種資料交換格式。

前面我們講到可以通過設定標籤為xml裡面的資訊賦予含義,那麼必然會出現幾個人或者幾個組織為各自的資料設定了相同標籤的狀況。解決這種情況的辦法就是設定命名空間。即使是相同的標籤,只要命名空間不同,那麼就可以通過規定命名空間來解決這種衝突。

xml檔案儲存了資訊,那麼要想解析出xml檔案中的資訊,我們當然想要使用現成的工具,dom和sax元件就是用來解析xml檔案的。

最後附乙個soap使用xml技術進行分布式計算的示意圖幫助理解:

XML基本語法介紹

第一部分 文件宣告 文件宣告必須在xml文件的第一行,按照嚴格的xml語法,宣告語句前面不應該有空行。編輯的原始檔應該儲存為utf 8,gbk,gb2312其中乙個編碼。在xml宣告中encoding屬性值要和第一點中選擇的編碼相同。如果儲存為utf 8,可以不用在xml宣告中宣告,解析器會自動解析...

go語言基本介紹

golang發展歷史 1.誕生歷史 a.誕生與2006年1月2號下午15點4分5秒 b.2009發布並正式開源 c.2012年第乙個正式版本go 1.0發布 d.截至到2017年8月24號go 1.9版本正式 a.開啟 址 b.根據作業系統選擇對應的安裝包 c.點選安裝包進 安裝 linux直接解壓...

XML 架構介紹

xml 架構介紹 xml 架構是用於定義和驗證 xml 資料的內容和結構的文件,就像資料庫架構定義和驗證組成資料庫的表 列和資料型別一樣。xml 架構通過 xml 架構定義 xsd 語言定義和描述某些 xml 資料型別。xml 架構元素 元素 屬性 型別和組 用於定義某些 xml 資料型別的有效結構...