溫馨提示×

溫馨提示×

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

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

什么是xml語法

發(fā)布時間:2020-07-13 10:52:23 來源:億速云 閱讀:125 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關(guān)什么是xml語法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

                                                           XML編程

Xml語法

DTD約束

PHP DOM

SIMPLEXML

一、 簡介

1、 發(fā)展

gml  通用標(biāo)記語言 1969年 軟件如果想實現(xiàn)高度的移植性,必須要有一個統(tǒng)一的標(biāo)準(zhǔn)

sgml  標(biāo)準(zhǔn)通用標(biāo)記語言1985年

html   超文本標(biāo)記語言1993年,解決不同平臺,不同瀏覽器訪問同一網(wǎng)頁

xml可擴展標(biāo)記語言 1998年

2、 關(guān)于xml的定義

extensible markup language ,用于標(biāo)記電子文件使其具有結(jié)構(gòu)性的標(biāo)記語言,可以用來標(biāo)記數(shù)據(jù)、定義數(shù)據(jù)類型,是一種允許用戶對自己的標(biāo)記語言進行定義的源語言。

3、 xml和html的不同

html:顯示數(shù)據(jù)   <div> <font color=’red’

xml:保存數(shù)據(jù)

html標(biāo)簽不能自定義,從標(biāo)簽上不能達到“見詞知意”的目的

html:<table>武松</table>

xml:<表格>武松</表格>

html將數(shù)據(jù)與格式綁定在一起

<span>商品名</span>

不同瀏覽器解html不同:IE,火狐。

html語法要求不嚴格

<table><tr><td></td></table>

等等

4、 xml的主要用途

程序之間的相互通訊

作為程序的配置文件

存儲數(shù)據(jù)

規(guī)范數(shù)據(jù)格式

二、 xml快速入門

描述一個人的信息

<?xml version="1.0" encoding="UTF-8"?>
<!-- 這里有很多人的信息 -->
<persons>
   <person id='s101'>
       <name>張三</name>
       <age>30</age>
   </person>
</persons>

三、 xml語法

xml文件的構(gòu)成

文檔聲明

元素

元素屬性

注釋

CDATA區(qū)

特殊字符

處理指令

文檔聲明:

需要先使用文檔聲明來聲明XML文檔

最簡單的語法:<?xml version=“1.0”encoding='字符集編碼' standalone='yes/no'?>

encoding

指定編碼格式

standalone

當(dāng)前文檔是否獨立  yes/no

元素:

一個標(biāo)簽分為起始和結(jié)束標(biāo)簽(不能省略)

錯誤:<tr><td>內(nèi)容</tr>

正確:<a></a>

一個標(biāo)簽中可以嵌套若干子標(biāo)簽,但所有標(biāo)簽必須合理的嵌套,不允許有交叉嵌套

錯誤:<a><b></a></b>

正確:<a><b></b></a>

一個XML文檔必須有且僅有一個根標(biāo)簽,其他標(biāo)簽都是這個根標(biāo)簽的子標(biāo)簽

元素-命名:

元素(標(biāo)簽)的名稱可以包含字母、數(shù)字、減號、下劃線和英文句點

嚴格區(qū)分大小寫;

<name>和</NAME>表示兩個標(biāo)簽

只能以字母或下劃線開頭;

A123

_123

錯誤:12a

不能以xml(或XML、Xml等)開頭

錯誤:xmlabc

名稱字符之間不能有空格或制表符;

錯誤:<a b>,<ab>;正確:<a_b>

名稱字符之間不能使用冒號:錯誤:<a:b>

元素屬性

一個元素可以有多個屬性

<person id=’s101’ sex=’男’ ….. >

屬性值一定要用引號(單引號或雙引號)引起來

<person id=’s101’>

<person id=”s101”>

屬性名稱的命名規(guī)范與元素的命名規(guī)范相同

元素中的屬性是不允許重復(fù)的

錯誤 <person id=’s101’ id…

標(biāo)簽屬性所代表的信息也可以被改成用子元素的形式來描述

<person id=’100’><name></name></person> 可以改成

<person><id>100</id></person>

注釋

<!—這是注釋-->

XML聲明之前不能有注釋

注釋不能嵌套,

錯誤<!--<!---->>

CDATA區(qū):

CDATA:Character Data    字符數(shù)據(jù)

作用:把標(biāo)簽當(dāng)做普通文本內(nèi)容

語法:<![CDATA[內(nèi)容]]>

特殊字符:

對于一些特殊字符,若要在元素主體內(nèi)容中顯示,必須進行轉(zhuǎn)義。

<img border="0" alt="xml教程" src="https://cache.yisu.com/upload/information/20200318/103/26578.jpg" width="585" height="164" />

<img border="0" alt="xml教程" src="https://cache.yisu.com/upload/information/20200318/103/26620.jpg" width="554" height="65" />

處理指令:

作用:用來指揮軟件如何解析XML文檔。

語法:必須以“<?”作為開頭,以“?>”作為結(jié)尾。

常用處理指令:

xml指令

xml-stylesheet指令

#p#xml教程-xml的dtd約束#e#

DTD約束

一、 什么是約束

XML技術(shù)中,可以編寫一個文檔來約束一個XML的書寫規(guī)范,這個文檔稱之為約束,Xml約束文檔

約束文檔定義了在XML中允許出現(xiàn)的元素名稱、屬性及元素出現(xiàn)的順序等等。

格式良好的XML:遵循XML語法的XML

有效的XML:遵循約束文檔的XML

遵循xml語法的文檔稱之為合法的

遵循約束文檔的xml文檔稱之為合理的

合法的xml不一定是合理的

合理的一定是合法的

二、 常見的約束

XML DTD

XDR

SOX

XML Schema

三、 什么是dtd

l Document Type Definition 文檔類型定義

約束XML的書寫規(guī)范

四、 dtd存放的位置

文件中:可以將dtd約束放在當(dāng)前xml文件中

外部文件:也可以將約束放到一個外部的.dtd的文檔中

五、 dtd快速入門

六、 如何檢測我們xml文檔是否符合dtd約束???

程序

ActiveXObject("Microsoft.XMLDOM")  //實例化xmldom對象

doc.validateOnParse //是否開啟檢驗

doc.async //是否異步

doc.load() //加載

doc.parseError.reason //錯誤信息

doc.parseError.line //錯誤行號

軟件 iexmltls  這個小插件可以在ie下檢測你寫的文檔是否是有效的xml'文檔。

七、 如何引用外部dtd

DOCTYPE聲明:

<!DOCTYPE 根元素 SYSTEM “DTD文檔路徑”> //外部引入dtd文檔

<img border="0" alt="xml教程" src="https://cache.yisu.com/upload/information/20200318/103/26640.jpg" width="535" height="116" />

八、 dtd語法

定義元素

定義屬性

定義實體

1、 定義元素

語法:

<!ELEMENT 元素名 使用規(guī)則>

使用規(guī)則:

(#PCDATA) :文本數(shù)據(jù)

EMPTY :空

ANY :任意

(子元素) :只出現(xiàn)一次

(子元素1,子元素2,……) :順序指定子元素

(子元素+) :至少出現(xiàn)一次

(子元素*) :子元素可以出現(xiàn)任意次數(shù)

(子元素?) :子元素出現(xiàn)0次或1次

(子元素1|子元素2) :任選其一

2、 定義屬性

語法:

<!ATTLIST 元素名稱 屬性名稱 屬性類型 默認值>

屬性類型:

CDATA :文本

(en1|en2|……) :值任選其一

ID :值為唯一

默認值:

#REQUIRED 非空   使用這個修飾的屬性必須要寫

#IMPLIED 可選   可寫可不寫

#FIXED 固定值   可以不指定,如果指定,只能使用這個值

值 默認值   如果指定值,則以指定值為標(biāo)準(zhǔn),如果沒有指定,則使用默認值

3、 定義實體

定義實體就是為一段內(nèi)容指定一個名稱,使用時通過這個名稱就可以引用其所代表的內(nèi)容

內(nèi)部實體

外部實體

定義內(nèi)部實體

定義語法:

<!ENTITY 實體名稱 "實體的值">

引用語法:

&實體名;

定義外部實體

定義語法:

<!ENTITY 實體名稱 SYSTEM "URL">

引用語法:

&實體名

<img border="0" alt="xml教程" src="https://cache.yisu.com/upload/information/20200318/103/26679.jpg" width="554" height="104" />

看完上述內(nèi)容,你們對什么是xml語法有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

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

AI