XML 學習筆記

2021-08-14 16:42:08 字數 3488 閱讀 8332

xml 被設計用來傳輸和儲存資料。

html 被設計用來顯示資料。

xml僅僅是純文字,可以發明自己的標籤!

乙個 xml 文件例項:

<?xml version="1.0" encoding="iso-8859-1"?>

george

john

reminder

don't forget the meeting!

第一行是 xml 宣告。它定義 xml 的版本 (1.0) 和所使用的編碼 (iso-8859-1 = latin-1/西歐字符集)。
所有 xml 元素都須有關閉標籤

注釋:您也許已經注意到 xml 宣告沒有關閉標籤。這不是錯誤。宣告不屬於xml本身的組成部分。它不是 xml 元素,也不需要關閉標籤。

xml 標籤對大小寫敏感、xml 必須正確地巢狀、xml 文件必須有根元素

在 xml 中,所有元素都必須彼此正確地巢狀.xml必須有根元素!

xml 的屬性值須加引號:例如

george

john

實體引用:

為了避免這個錯誤,請用

實體引用來代替特例字元,如":

在 xml 中,有 5 個預定義的實體引用:

小於大於

和號單引號

引號注釋:在 xml 中,只有字元 "

xml 中的注釋(在 xml 中編寫注釋的語法與 html 的語法很相似):

在 xml 中,文件中的空格不會被刪節!!!

xml 命名規則

xml 元素必須遵循以下命名規則:

可使用任何名稱,沒有保留的字詞。

最佳命名習慣:

使名稱具有描述性。使用

下劃線的名稱也很不錯。

名稱應當比較簡短,比如:,而不是:。

避免 "-" 字元。如果您按照這樣的方式進行命名:"first-name",一些軟體會認為你需要提取第乙個單詞。

避免 "." 字元。如果您按照這樣的方式進行命名:"first.name",一些軟體會認為 "name" 是物件 "first" 的屬性。

避免 ":" 字元。冒號會被轉換為命名空間來使用。

xml 文件經常有乙個對應的資料庫,其中的字段會對應 xml 文件中的元素。有乙個實用的經驗,即使用資料庫的名稱規則來命名 xml 文件中的元素。

非英語的字母比如 éòá 也是合法的 xml 元素名,不過需要留意當軟體開發商不支援這些字元時可能出現的問題。

xml 元素是可擴充套件的:(之後xml文件的作者可以向這個文件新增額外的資訊)

xml 元素可以在開始標籤中包含屬性,類似 html,屬性 (attribute) 提供關於元素的額外(附加)資訊。

(xml 屬性必須加引號:

單引號和雙引號均可)

"man

">

注釋:如果屬性值本身包含雙引號,那麼有必要使用單引號包圍它,就像這個例子:

或者可以使用實體引用:

在 html 中,屬性用起來很便利,但是在 xml 中,您應該盡量避免使用屬性。如果資訊感覺起來很像資料,那麼請使用子元素吧!!!

避免 xml 屬性?

因使用屬性而引起的一些問題:

請盡量使用元素來描述資料。而僅僅使用屬性來提供與資料無關的資訊。

針對元資料的 xml 屬性

有時候會向元素分配 id 引用。這些 id 索引可用於標識 xml 元素,它起作用的方式與 html 中 id 屬性是一樣的。這個例子向我們演示了這種情況:

george

john

reminder

don't forget the meeting!

john

george

re: reminder

i will not

上面的 id 僅僅是乙個識別符號,用於標識不同的便簽。它並不是便簽資料的組成部分。

在此我們極力向您傳遞的理念是:元資料(有關資料的資料)應當儲存為屬性,而資料本身應當儲存為元素。

元素可包含文字、其他元素或者是空的。空的 html 元素的例子是 "hr"、"br" 以及 "img"。

由於元素本身為空,它被乙個 " /" 關閉。如:

、、

所有 xml 文件中的文字均會被解析器解析。只有 cdata 區段(cdata section)中的文字會被解析器忽略。

關於 cdata 部分的注釋:

cdata 部分不能包含字串 "]]>"。也不允許巢狀的 cdata 部分。

標記 cdata 部分結尾的 "]]>" 不能包含空格或折行。

cdata 部分由 "

" 結束:

pcdata 是會被解析器解析的文字。這些文字將被解析器檢查實體以及標記。

文字中的標籤會被當作標記來處理,而實體會被展開。

不過,被解析的字元資料不應當包含任何 &、< 或者 > 字元;需要使用 &、< 以及 > 實體來分別替換它們。

cdata 是不會被解析器解析的文字。在這些文字中的標籤不會被當作標記來對待,其中的實體也不會被展開。

xml dom

在下面的例子中,我們使用 dom 引用從 元素中獲取文字:

xmldoc.getelementsbytagname("to")[0].childnodes[0].nodevalue

html dom

在下面的例子中,我們使用 dom 引用來改變 id="to" 的 html 元素的文字:

document.getelementbyid("to").innerhtml=

xml 文件可以包含非 ascii 字元,比如法語。

windows 記事本缺省會將檔案儲存為單位元組的 ansi (ascii)!!!

為了避免錯誤,需要規定 xml 編碼,或者將 xml 文件存為 unicode。

end資料。en不過,如果希望資料的可移植性更強,我們可以把資料儲存 xml 檔案中。

XML學習筆記

一 語法 1 使用標籤標記,可定議自己的標籤。二 合格的文件 1 該文件包含 乙個或多個元素。2 該文件只包含 乙個文件元素,用於包含其他元素。3 每個元素都應當正確的結束。如123456。如果開始和結束符之間沒有內容,則可以寫成 4 元素是區分大小寫的 5 屬性值總是用引號括起來,並且不能為空。6...

XML學習筆記

1.xml用途 1 用於配置檔案 2 用於資料交換 2.如果是專業研究xml,可以用工具xmlspy來寫xml,但一般情況下我們還是手寫 3.說明 宣告是個xml檔案,standalone為yes表示沒有配套的dtd,為no表示有可能有個配套的dtd 說明 引入xsl裝飾 說明 注釋 如何在肯德基白...

XML學習筆記( )

1 申明屬性 elementname 申明屬性名稱 attributename 屬性名稱 attributetype 指定屬性型別 defaule 屬性用法關鍵字 defaule項的可能設定 required 必須的屬性 它必須定義在元素的每個例項中 implied 可選的屬性 fixed 屬性具有...