xml基本筆記

一、簡(jiǎn)述

1:xml是用來(lái)傳輸和存儲(chǔ)數(shù)據(jù)的酿秸,焦點(diǎn)是數(shù)據(jù)的內(nèi)容

2灭翔、HTML用來(lái)顯示數(shù)據(jù),焦點(diǎn)是數(shù)據(jù)的外觀

3辣苏、xml變遷沒(méi)有被預(yù)定義肝箱,需要自行定義標(biāo)簽

4、例子:

<note>

<to>Tove</to>給誰(shuí)

<from>Jani</from>來(lái)自誰(shuí)<heading>Reminder</heading>標(biāo)題

<body>Don't forget me this weekend!</body>消息主體

</note>

二考润、用途

1狭园、把數(shù)據(jù)從html分離

2读处、簡(jiǎn)化數(shù)據(jù)共享

3糊治、簡(jiǎn)化數(shù)據(jù)傳輸

4、簡(jiǎn)化平臺(tái)變更

5罚舱、使數(shù)據(jù)更有用

6井辜、用于創(chuàng)建新的互聯(lián)網(wǎng)語(yǔ)言

三绎谦、xml的樹(shù)結(jié)構(gòu)

1、<?xml version="1.0" encoding="UTF-8"?>----------xml聲明粥脚,定義xml版本和使用的編碼

<note>----文檔的根元素窃肠,下邊的都是子元素

<to>Tove</to>

<from>Jani</from><heading>Reminder</heading>

<body>Don't forget me this weekend!</body>

</note>---根元素結(jié)尾

xml必須包含根元素。

四刷允、xml語(yǔ)法

1冤留、必須含有根元素

2、树灶、xml聲明可選纤怒,若存在,則放在文檔第一行

3天通、xml中泊窘,必須都必須存在關(guān)閉標(biāo)簽,不可省略和簡(jiǎn)寫(xiě)

4像寒、xml標(biāo)簽大小寫(xiě)敏感

5烘豹、嵌套情況需要注意,必須正確嵌套

6诺祸、屬性值必須加引號(hào)

? ? 例:<note date="12/11/2007">

7携悯、實(shí)體引用,及字符問(wèn)題,在xml中只有<和&是非法的

? ? xml中5個(gè)預(yù)定義實(shí)體引用

? ? < &lt筷笨;> &gt;& &amp;' &apos;" &quot

8蚌卤、注釋?zhuān)?lt;!--? ?-->

9、xml中奥秆,空格會(huì)被保留逊彭,長(zhǎng)空格會(huì)被合并成為一個(gè)

10、以LF存儲(chǔ)換行

在 Windows 應(yīng)用程序中构订,換行通常以一對(duì)字符來(lái)存儲(chǔ):回車(chē)符(CR)和換行符(LF)侮叮。

在 Unix 和 Mac OSX 中,使用 LF 來(lái)存儲(chǔ)新行悼瘾。

在舊的 Mac 系統(tǒng)中囊榜,使用 CR 來(lái)存儲(chǔ)新行。

XML 以 LF 存儲(chǔ)換行亥宿。

五卸勺、xml元素

1、xml元素是從(且包括)開(kāi)始標(biāo)簽直到(且包括)結(jié)束標(biāo)簽的部分烫扼。一個(gè)元素可以包括其他元素曙求,文本,屬性,或混合以上所有悟狱。

2静浴、xml命名規(guī)則:

? ? 名稱(chēng)可以包含字母,數(shù)字以及其他字符

? ? 不能以數(shù)字和標(biāo)點(diǎn)符號(hào)開(kāi)始

? ? 不能以字符xml(無(wú)論大小寫(xiě))開(kāi)始

? ? 不能包含空格

3挤渐、最佳命名習(xí)慣

? ? 具有描述性

? ? 簡(jiǎn)短苹享,簡(jiǎn)單

? ? 避免“-”字符

? ? 避免“.”字符

? ??éòá 等非英語(yǔ)字母是完全合法的,不過(guò)需要留意浴麻,您的軟件供應(yīng)商不支持這些字符時(shí)可能出現(xiàn)的問(wèn)題得问。

4、xml元素是可擴(kuò)展的:可以在不中斷應(yīng)用程序的情況下進(jìn)行擴(kuò)展

六软免、xml屬性(提供有關(guān)元素的額外信息)

1椭赋、屬性通常提供不屬于數(shù)據(jù)組成部分的信息。

2或杠、xml屬性值必須被引號(hào)包圍(單引號(hào)雙引號(hào)都可以)(若屬性值本身包含雙引號(hào)哪怔,則可以使用單引號(hào))

例:<gangster name='George "Shotgun" Ziegler'>

3、xml中盡量避免使用屬性向抢,若信息看上去像數(shù)據(jù)认境,就是用元素吧,僅僅使用屬性提供與數(shù)據(jù)無(wú)關(guān)的信息

4挟鸠、因?qū)傩远鸬膯?wèn)題

? ? 屬性不能包含多個(gè)值(元素可以)

? ? 屬性不能包含樹(shù)結(jié)構(gòu)(元素可以)

? ? 屬性不容易擴(kuò)展

5叉信、 針對(duì)元數(shù)據(jù)的xml屬性:例:id

????元數(shù)據(jù)(有關(guān)數(shù)據(jù)的數(shù)據(jù))應(yīng)當(dāng)存儲(chǔ)為屬性,而數(shù)據(jù)本身應(yīng)當(dāng)存儲(chǔ)為元素艘希。

七硼身、xml驗(yàn)證(xml DTD)

1、形式良好的xml文件

? ? (前面寫(xiě)了覆享,現(xiàn)在再寫(xiě)一遍)

? ??XML 文檔必須有一個(gè)根元素

????XML元素都必須有一個(gè)關(guān)閉標(biāo)簽

????XML 標(biāo)簽對(duì)大小寫(xiě)敏感

????XML 元素必須被正確的嵌套

????XML 屬性值必須加引號(hào)

2佳遂、驗(yàn)證xml文檔:

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

<!DOCTYPE note SYSTEM "Note.dtd">-------DOCTYPE 聲明是對(duì)外部 DTD 文件的引用

<note>

<to>Tove</to>

<from>Jani</from>

<heading>Reminder</heading>

<body>Don't forget me this weekend!</body>

</note>

3、XML DTD:
? ? DTD的目的是定義xml文檔的結(jié)構(gòu)

4撒顿、XML Schema

? ??W3C 支持一種基于 XML 的 DTD 代替者丑罪,它名為 XML Schema:

八、XML驗(yàn)證器

1凤壁、xml錯(cuò)誤會(huì)終止程序

2吩屹、對(duì)xml進(jìn)行語(yǔ)法檢查

3、根據(jù)DTD來(lái)驗(yàn)證xml

<?xml version="1.0" ?>

<!DOCTYPE note [

? <!ELEMENT note (to,from,heading,body)>

? <!ELEMENT to? ? ? (#PCDATA)>

? <!ELEMENT from? ? (#PCDATA)>

? <!ELEMENT heading (#PCDATA)>

? <!ELEMENT body? ? (#PCDATA)>

]>

<note>

<to>Tove</to>

<from>Jani</from>

<heading>Reminder</heading>

<message>Don't forget me this weekend!</message>

</note>

九拧抖、查看xml文件

1煤搜、XML 文檔將顯示為代碼顏色化的根以及子元素。通過(guò)點(diǎn)擊元素左側(cè)的加號(hào)(+)或減號(hào)( - )唧席,可以展開(kāi)或收起元素的結(jié)構(gòu)擦盾。要查看原始的 XML 源(不包括 + 和 - 符號(hào))嘲驾,選擇"查看頁(yè)面源代碼"或從瀏覽器菜單"查看源文件"。

2厌衙、查看無(wú)效的xml文件

? ??如果一個(gè)錯(cuò)誤的XML文件被打開(kāi)距淫,瀏覽器會(huì)報(bào)告錯(cuò)誤绞绒。

3婶希、大多數(shù)瀏覽器僅僅把xml文檔顯示為源代碼

十、xml css

1蓬衡、使用css顯示xml

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

<?xml-stylesheet type="text/css" href="cd_catalog.css"?>--------把xml文件鏈接到css文件中

<CATALOG>

<CD>

<TITLE>Empire Burlesque</TITLE>

<ARTIST>Bob Dylan</ARTIST>

<COUNTRY>USA</COUNTRY>

<COMPANY>Columbia</COMPANY>

<PRICE>10.90</PRICE>

<YEAR>1985</YEAR>

</CD>

<CD>

<TITLE>Hide your heart</TITLE>

<ARTIST>Bonnie Tyler</ARTIST>

<COUNTRY>UK</COUNTRY>

<COMPANY>CBS Records</COMPANY>

<PRICE>9.90</PRICE>

<YEAR>1988</YEAR>

</CD>

.

.

.

</CATALOG>

不是常用方法喻杈,推薦使用XSLT

十一、XML XSLT

1狰晚、使用XSLT顯示XML:XSLT在瀏覽器西安市XML文件之前筒饰,現(xiàn)把它轉(zhuǎn)化為HTML

2、在服務(wù)器上通過(guò)XSLT轉(zhuǎn)換

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末壁晒,一起剝皮案震驚了整個(gè)濱河市瓷们,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌秒咐,老刑警劉巖谬晕,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異携取,居然都是意外死亡攒钳,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)雷滋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)不撑,“玉大人,你說(shuō)我怎么就攤上這事晤斩』烂剩” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵澳泵,是天一觀的道長(zhǎng)揩页。 經(jīng)常有香客問(wèn)我,道長(zhǎng)烹俗,這世上最難降的妖魔是什么爆侣? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮幢妄,結(jié)果婚禮上兔仰,老公的妹妹穿的比我還像新娘。我一直安慰自己蕉鸳,他們只是感情好乎赴,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布忍法。 她就那樣靜靜地躺著,像睡著了一般榕吼。 火紅的嫁衣襯著肌膚如雪饿序。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天羹蚣,我揣著相機(jī)與錄音原探,去河邊找鬼。 笑死顽素,一個(gè)胖子當(dāng)著我的面吹牛咽弦,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播胁出,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼型型,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了全蝶?” 一聲冷哼從身側(cè)響起闹蒜,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎抑淫,沒(méi)想到半個(gè)月后绷落,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡丈冬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年嘱函,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片埂蕊。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡往弓,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出蓄氧,到底是詐尸還是另有隱情函似,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布喉童,位于F島的核電站撇寞,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏堂氯。R本人自食惡果不足惜蔑担,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望咽白。 院中可真熱鬧啤握,春花似錦、人聲如沸晶框。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至蹲蒲,卻和暖如春番甩,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背届搁。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工缘薛, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人咖祭。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓掩宜,卻偏偏與公主長(zhǎng)得像蔫骂,于是被迫代替她去往敵國(guó)和親么翰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • XML基礎(chǔ) 眾所周知码耐,xml常用于數(shù)據(jù)存儲(chǔ)和傳輸,文件后綴為 .xml溶其; 它是可擴(kuò)展標(biāo)記語(yǔ)言(Extensible...
    帥豬佩奇閱讀 2,678評(píng)論 0 1
  • XML 指可擴(kuò)展標(biāo)記語(yǔ)言骚腥。標(biāo)記指計(jì)算機(jī)所能理解的信息符號(hào),通過(guò)此種標(biāo)記瓶逃,計(jì)算機(jī)之間可以處理包含各種信息的文章等束铭。 ...
    神齊閱讀 774評(píng)論 0 3
  • XML筆記 首先:學(xué)習(xí)XML需要有一定的HTML和JavaScript的基礎(chǔ) 一、什么是XML XML是可擴(kuò)展標(biāo)記...
    _Bless_0e06閱讀 1,255評(píng)論 0 16
  • xml經(jīng)典總結(jié) XML(eXtensible Markup Language)是萬(wàn)維網(wǎng)聯(lián)盟(World Wide ...
    java日記閱讀 951評(píng)論 0 2
  • 經(jīng)過(guò)兩天的奮戰(zhàn)厢绝,終于把xml簡(jiǎn)略的過(guò)了一遍契沫。 1.1XML介紹 xml是Extensible Markup lan...
    Ystrator閱讀 814評(píng)論 0 2