XML

一、什么是XML?

XML指可擴(kuò)展標(biāo)記語(yǔ)言
XML是一種標(biāo)記語(yǔ)句,很類似HTML
XML標(biāo)簽沒(méi)有被預(yù)定義,需要自行定義標(biāo)簽

二、XML和HTML的差異:

1.XML為不同的目的而設(shè)計(jì)
2.XML被設(shè)計(jì)為傳輸和存儲(chǔ)數(shù)據(jù),其焦點(diǎn)是數(shù)據(jù)的內(nèi)容,HTML被設(shè)計(jì)用來(lái)顯示數(shù)據(jù), 其焦點(diǎn)是數(shù)據(jù)的外觀
3.XML意在傳輸信息,而HTML意在顯示信息

三、XML的特點(diǎn)

1.XML可以自定義標(biāo)簽

<note>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>

上例中的標(biāo)簽沒(méi)有在任何XML標(biāo)準(zhǔn)中定義過(guò),比如<to><from>這些標(biāo)簽都是有作者自己發(fā)明的

2.XML必須包含根元素
XML 文檔必須有一個(gè)元素是所有其他元素的父元素。該元素稱為根元素。

<?xml version="1.0" encoding="UTF-8" ?>
<note>
    <to>George</to>
    <from>John</from>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
</note>

如上所示,XML文件的根元素為note,剩下的4行描述的是根的子元素
所有的XML標(biāo)簽都必須有關(guān)閉標(biāo)簽,在XML中省略標(biāo)簽是非法的,所有的元素都必須有關(guān)閉標(biāo)簽。
如下所示:

<p>This is a paragraph</p>
<p>This is another paragraph</p>  

3.XML標(biāo)簽對(duì)大小寫敏感
XML 標(biāo)簽對(duì)大小寫敏感。在 XML 中,標(biāo)簽 <Letter> 與標(biāo)簽 <letter> 是不同的。
必須使用相同的大小寫來(lái)編寫打開標(biāo)簽和關(guān)閉標(biāo)簽:

<Message>這是錯(cuò)誤的。</message>
<message>這是正確的。</message> 

XML必須正確的嵌套:如下所示:由于 <i> 元素是在 <b> 元素內(nèi)打開的,那么它必須在 <b> 元素內(nèi)關(guān)閉。

<b><i>This text is bold and italic</i></b>

4.XML 的屬性值須加引號(hào)
與 HTML 類似,XML 也可擁有屬性(名稱/值的對(duì))。
在XML 中,XML的屬性值須加引號(hào)。請(qǐng)研究下面的兩個(gè)XML文檔。第一個(gè)是錯(cuò)誤的,第二個(gè)是正確的:

 <note date=08/08/2008>
 <to>George</to>
 <from>John</from>
 </note> 
 <note date="08/08/2008">
 <to>George</to>
 <from>John</from>
 </note> 

在第一個(gè)文檔中的錯(cuò)誤是,note 元素中的 date 屬性沒(méi)有加引號(hào)。

5.標(biāo)簽可以自由命名
6.標(biāo)簽成對(duì)出現(xiàn)
7.標(biāo)簽可以重名

四、XML 中的注釋

在 XML 中編寫注釋的語(yǔ)法與 HTML 的語(yǔ)法很相似:

<!-- This is a comment --> 

五、什么是 XML 元素?

XML 元素指的是從(且包括)開始標(biāo)簽直到(且包括)結(jié)束標(biāo)簽的部分。
元素可包含其他元素、文本或者兩者的混合物。元素也可以擁有屬性。

<bookstore>
<book category="CHILDREN">
  <title>Harry Potter</title> 
  <author>J K. Rowling</author> 
  <year>2005</year> 
  <price>29.99</price> 
</book>
<book category="WEB">
  <title>Learning XML</title> 
  <author>Erik T. Ray</author> 
  <year>2003</year> 
  <price>39.95</price> 
</book>
</bookstore> 

在上例中,<bookstore> 和 <book> 都擁有元素內(nèi)容,因?yàn)樗鼈儼似渌亍?lt;author> 只有文本內(nèi)容,因?yàn)樗鼉H包含文本。
在上例中,只有 <book> 元素?fù)碛袑傩?(category="CHILDREN")。

六、XML 命名規(guī)則

XML 元素必須遵循以下命名規(guī)則:

名稱可以含字母、數(shù)字以及其他的字符
名稱不能以數(shù)字或者標(biāo)點(diǎn)符號(hào)開始
名稱不能以字符 “xml”(或者 XML、Xml)開始
名稱不能包含空格

七、XML讀取文本

from xml.dom import minidom

打開文件

root =minidom.parse(filepath)
firstnode =root.getElementsByTagName(onenode)[0]
secondnode=firstnode.getElementsByTagName(twonodee)[0].firstChild.data
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、什么是XML? XML指可擴(kuò)展標(biāo)記語(yǔ)言XML是一種標(biāo)記語(yǔ)句,很類似HTMLXML標(biāo)簽沒(méi)有被預(yù)定義,需要自行定義...
    c_dab5閱讀 433評(píng)論 0 0
  • 什么是 XML? XML 指可擴(kuò)展標(biāo)記語(yǔ)言(EXtensible Markup Language) XML 是一種...
    05ea6e176933閱讀 6,754評(píng)論 0 0
  • 1.xml簡(jiǎn)介 1.extensible Markup Language 可擴(kuò)展標(biāo)記型語(yǔ)言 標(biāo)記型語(yǔ)言:html都...
    AitHim19閱讀 1,315評(píng)論 0 0
  • 一.XML概念和體系 1.XML 概念 XML 指可擴(kuò)展標(biāo)記語(yǔ)言(EXtensible Markup La...
    珂and超閱讀 315評(píng)論 0 0
  • 1.定義 XML 指可擴(kuò)展標(biāo)記語(yǔ)言(EXtensibleMarkupLanguage) XML 是一種標(biāo)記語(yǔ)言,很...
    竹子bupt閱讀 206評(píng)論 0 0

友情鏈接更多精彩內(nèi)容