溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

XML與HTML有哪些區(qū)別

發(fā)布時(shí)間:2021-09-17 14:18:55 來源:億速云 閱讀:108 作者:小新 欄目:編程語言

小編給大家分享一下XML與HTML有哪些區(qū)別,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一、XML與HTML

XML(eXtensible Markup Language)是一種可擴(kuò)展的標(biāo)記語言,和HTML語言語法類似,同屬于標(biāo)記語言。那到底如何區(qū)分它們呢?

1、設(shè)計(jì)區(qū)別
XML被設(shè)計(jì)為傳輸和保存數(shù)據(jù),其焦點(diǎn)是數(shù)據(jù)的內(nèi)容。而HTML被設(shè)計(jì)用來顯示數(shù)據(jù),其焦點(diǎn)是數(shù)據(jù)的外觀??梢哉fHTML旨在顯示信息,XML旨在傳輸信息。

2、語法區(qū)別
(1)HTML的格式多樣,其中有些標(biāo)記可以不成對(duì)出現(xiàn),XML要求所有的標(biāo)記都必須成對(duì)出現(xiàn);
(2)HTML的標(biāo)簽是固定的樣式有限,XML可以進(jìn)行任何擴(kuò)展,標(biāo)簽類型可以自己定義;
(3)HTML可以有多個(gè)標(biāo)記頭,XML只允許有一個(gè)標(biāo)記頭;
(4)HTML標(biāo)記不區(qū)分大小寫,XML區(qū)分大小寫。

二、XML詳解

曾記否在開發(fā)系統(tǒng)時(shí)使用的系統(tǒng)配置文檔,是的它就是xml文檔。作為系統(tǒng)的配置文件是xml的主要應(yīng)用,同時(shí)它也可以用在Ajax或Web Services中傳輸數(shù)據(jù)。
XML與HTML有哪些區(qū)別

1、XML歷史

在詳細(xì)了解XML基本用法前,我們先來看看標(biāo)記語言的發(fā)展歷史。
XML的前身是SGML(The Standard Generalized Markup Language),它同時(shí)也是在HTML的基礎(chǔ)上優(yōu)化得到的。SGML是GML整理規(guī)范后的一種標(biāo)準(zhǔn),但是SGML是一種非常嚴(yán)謹(jǐn)?shù)奈谋久枋龇?,過于龐大復(fù)雜,難以理解。同時(shí)W3C(萬維網(wǎng)聯(lián)盟)也發(fā)現(xiàn)了HTML的問題,如:不能解釋類似影音文件、化學(xué)公式等其它形式的內(nèi)容,且性能較差不易于擴(kuò)展、彈性差等問題。為了解決上述問題,專家們使用SGML簡易制作,并依照HTML的發(fā)展經(jīng)驗(yàn)開發(fā)了XML。    
XML與HTML有哪些區(qū)別

2、XML用法

先看一個(gè)XML實(shí)例

XML/HTML Code復(fù)制內(nèi)容到剪貼板
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/xsl' href='content.xsl'?>
<book>
    <書籍列表>
        <計(jì)算機(jī)書籍>
            <bookname isbn="xxx1234567"><<XML應(yīng)用大全>></bookname>
            <price>39.00</price>
        </計(jì)算機(jī)書籍>
    </書籍列表>
<!-- 我加上的注釋 -->
    <書籍列表>
        <計(jì)算機(jī)書籍>
            <bookname><![CDATA[Oracle應(yīng)用大全《《《》》》‘’;;‘’“”]]></bookname>
            <price>39.00</price>
        </計(jì)算機(jī)書籍>
        <計(jì)算機(jī)書籍>
            <bookname>Java應(yīng)用大全</bookname>
            <price>39.00</price>
        </計(jì)算機(jī)書籍>
    </書籍列表>
</book>

2.1 聲明

格式良好的XML文件,要以XML聲明開始,即上面示例中的<?xml version="1.0" encoding="utf-8"?>,它提供了關(guān)于文檔的基本信息。其中encoding表示XML文件呢使用的字符編碼方式,要保存的XML文檔編碼格式必須是encoding屬性值。

2.2 元素

元素是開始標(biāo)簽、結(jié)束標(biāo)簽及兩者之間的所有內(nèi)容。
和HTML基本組成相同,XML也是有基本的標(biāo)簽構(gòu)成,其中標(biāo)簽的格式和HTML標(biāo)簽相同,不同的是XML標(biāo)簽有開始標(biāo)簽就必須要有結(jié)束標(biāo)簽,而且嚴(yán)格區(qū)分大小寫。它允許標(biāo)簽格式嵌套,但必須正確嵌套。
XML結(jié)構(gòu)上是一種樹狀結(jié)構(gòu),它的內(nèi)容必須只有一個(gè)根元素,其它的元素必須嵌套在根元素內(nèi)。如:上例中的<book></book>即為根元素。


2.3實(shí)體引用

實(shí)體引用即使用特定的格式在XML文檔中打印出一些特殊的符號(hào),類似于下面要說的CDATA中的文本。

XML/HTML Code復(fù)制內(nèi)容到剪貼板
<book>
    <書籍列表>
        <計(jì)算機(jī)書籍>
            <bookname isbn="xxx1234567"><<XML應(yīng)用大全>></bookname>
            <price>39.00</price>
        </計(jì)算機(jī)書籍>
    </書籍列表>
</book>
<!-- 使用IE打開上面的代碼查看下結(jié)果 -->

基本的實(shí)體引用不在詳述。

2.4 特殊標(biāo)簽

CDATA是特殊的標(biāo)簽,它能夠使在其內(nèi)的所有內(nèi)容以文本的形式打印輸出。形式如下:

XML/HTML Code復(fù)制內(nèi)容到剪貼板
<![CDATA[文本內(nèi)容]]>
<?xml version='1.0' encoding='utf-8'?>
<書籍列表>
        <計(jì)算機(jī)書籍>
            <bookname><![CDATA[Oracle應(yīng)用大全《《《》》》‘’;;‘’“”]]></bookname>
            <price>39.00</price>
        </計(jì)算機(jī)書籍>
<書籍列表>

2.5 雜燴

(1)XML文檔用圖整理出來其實(shí)是一種樹狀結(jié)構(gòu),在顯示時(shí)常使用IE打開;
(2)XML標(biāo)簽中屬性的值必須使用引號(hào)括起來(單引號(hào)或雙引號(hào),但必須保證一致);
(3)在含有復(fù)雜內(nèi)結(jié)構(gòu)的XML文檔中可以使用xsl格式美化xml的顯示,格式:<?xml-stylesheet type='text/xsl' href='需要轉(zhuǎn)換的XML文檔名稱.xsl'?>。

三、注意

1、要有聲明:<?xml version="" encoding=""?>;
2、在保存時(shí)要根據(jù)encoding中的編碼類型保存成相應(yīng)的類型,在保存時(shí)別忘記選擇保存類型;
3、只有一個(gè)頂元素;
4、大小寫敏感;
5、屬性的值必須使用引號(hào)括起來(單引號(hào)或雙引號(hào));
6、要有始有終;
7、嵌套形式要正確。

上面對(duì)XML的基本應(yīng)用進(jìn)行了討論,XML很簡單吧。是不是XML就這些內(nèi)容了呢?當(dāng)然不是,從它的基本名字中可以看出它也是一種編程語言,那就應(yīng)該具有編程語言的一些特性,如一些語言中的模板或者Java中的API。是的,XML也可以定義自己的語法結(jié)構(gòu),可以向編程語言一樣編寫模板函數(shù),只是在XML中它叫做合法的XML,即是大家所說的經(jīng)DTD或Schema驗(yàn)證的合法的XML。

以上是“XML與HTML有哪些區(qū)別”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI