您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關什么是xml語法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
XML編程
Xml語法
DTD約束
PHP DOM
SIMPLEXML
一、 簡介
1、 發展
gml 通用標記語言 1969年 軟件如果想實現高度的移植性,必須要有一個統一的標準
sgml 標準通用標記語言1985年
html 超文本標記語言1993年,解決不同平臺,不同瀏覽器訪問同一網頁
xml可擴展標記語言 1998年
2、 關于xml的定義
extensible markup language ,用于標記電子文件使其具有結構性的標記語言,可以用來標記數據、定義數據類型,是一種允許用戶對自己的標記語言進行定義的源語言。
3、 xml和html的不同
html:顯示數據 <div> <font color=’red’
xml:保存數據
html標簽不能自定義,從標簽上不能達到“見詞知意”的目的
html:<table>武松</table>
xml:<表格>武松</表格>
html將數據與格式綁定在一起
<span>商品名</span>
不同瀏覽器解html不同:IE,火狐。
html語法要求不嚴格
<table><tr><td></td></table>
等等
4、 xml的主要用途
程序之間的相互通訊
作為程序的配置文件
存儲數據
規范數據格式
二、 xml快速入門
描述一個人的信息
<?xml version="1.0" encoding="UTF-8"?>
<!-- 這里有很多人的信息 -->
<persons>
<person id='s101'>
<name>張三</name>
<age>30</age>
</person>
</persons>
三、 xml語法
xml文件的構成
文檔聲明
元素
元素屬性
注釋
CDATA區
特殊字符
處理指令
文檔聲明:
需要先使用文檔聲明來聲明XML文檔
最簡單的語法:<?xml version=“1.0”encoding='字符集編碼' standalone='yes/no'?>
encoding
指定編碼格式
standalone
當前文檔是否獨立 yes/no
元素:
一個標簽分為起始和結束標簽(不能省略)
錯誤:<tr><td>內容</tr>
正確:<a></a>
一個標簽中可以嵌套若干子標簽,但所有標簽必須合理的嵌套,不允許有交叉嵌套
錯誤:<a><b></a></b>
正確:<a><b></b></a>
一個XML文檔必須有且僅有一個根標簽,其他標簽都是這個根標簽的子標簽
元素-命名:
元素(標簽)的名稱可以包含字母、數字、減號、下劃線和英文句點
嚴格區分大小寫;
<name>和</NAME>表示兩個標簽
只能以字母或下劃線開頭;
A123
_123
錯誤:12a
不能以xml(或XML、Xml等)開頭
錯誤:xmlabc
名稱字符之間不能有空格或制表符;
錯誤:<a b>,<ab>;正確:<a_b>
名稱字符之間不能使用冒號:錯誤:<a:b>
元素屬性
一個元素可以有多個屬性
<person id=’s101’ sex=’男’ ….. >
屬性值一定要用引號(單引號或雙引號)引起來
<person id=’s101’>
<person id=”s101”>
屬性名稱的命名規范與元素的命名規范相同
元素中的屬性是不允許重復的
錯誤 <person id=’s101’ id…
標簽屬性所代表的信息也可以被改成用子元素的形式來描述
<person id=’100’><name></name></person> 可以改成
<person><id>100</id></person>
注釋
<!—這是注釋-->
XML聲明之前不能有注釋
注釋不能嵌套,
錯誤<!--<!---->>
CDATA區:
CDATA:Character Data 字符數據
作用:把標簽當做普通文本內容
語法:<![CDATA[內容]]>
特殊字符:
對于一些特殊字符,若要在元素主體內容中顯示,必須進行轉義。
<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文檔。
語法:必須以“<?”作為開頭,以“?>”作為結尾。
常用處理指令:
xml指令
xml-stylesheet指令
#p#xml教程-xml的dtd約束#e#
DTD約束
一、 什么是約束
XML技術中,可以編寫一個文檔來約束一個XML的書寫規范,這個文檔稱之為約束,Xml約束文檔
約束文檔定義了在XML中允許出現的元素名稱、屬性及元素出現的順序等等。
格式良好的XML:遵循XML語法的XML
有效的XML:遵循約束文檔的XML
遵循xml語法的文檔稱之為合法的
遵循約束文檔的xml文檔稱之為合理的
合法的xml不一定是合理的
合理的一定是合法的
二、 常見的約束
XML DTD
XDR
SOX
XML Schema
三、 什么是dtd
l Document Type Definition 文檔類型定義
約束XML的書寫規范
四、 dtd存放的位置
文件中:可以將dtd約束放在當前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 元素名 使用規則>
使用規則:
(#PCDATA) :文本數據
EMPTY :空
ANY :任意
(子元素) :只出現一次
(子元素1,子元素2,……) :順序指定子元素
(子元素+) :至少出現一次
(子元素*) :子元素可以出現任意次數
(子元素?) :子元素出現0次或1次
(子元素1|子元素2) :任選其一
2、 定義屬性
語法:
<!ATTLIST 元素名稱 屬性名稱 屬性類型 默認值>
屬性類型:
CDATA :文本
(en1|en2|……) :值任選其一
ID :值為唯一
默認值:
#REQUIRED 非空 使用這個修飾的屬性必須要寫
#IMPLIED 可選 可寫可不寫
#FIXED 固定值 可以不指定,如果指定,只能使用這個值
值 默認值 如果指定值,則以指定值為標準,如果沒有指定,則使用默認值
3、 定義實體
定義實體就是為一段內容指定一個名稱,使用時通過這個名稱就可以引用其所代表的內容
內部實體
外部實體
定義內部實體
定義語法:
<!ENTITY 實體名稱 "實體的值">
引用語法:
&實體名;
定義外部實體
定義語法:
<!ENTITY 實體名稱 SYSTEM "URL">
引用語法:
&實體名
<img border="0" alt="xml教程" src="https://cache.yisu.com/upload/information/20200318/103/26679.jpg" width="554" height="104" />
看完上述內容,你們對什么是xml語法有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。