今天學習了一些xml相關知識,現將其分享出來,留作筆記,以備日后查看。
xml可擴展標記語言
XML與HTML區別
1、HTML用來顯示數據,XML描述數據性質和結構
2、HTML不區分大小寫,XML嚴格區分
3、HTML可有多個根元素,XML只能有一個
4、XML屬性值必須用引號
xml語法結構:xml文檔聲明;<?xml version="1.0"encoding="utf-8"standalone="yes"?>
必須在第一行第一列encoding默認utf-8 xml文檔中含有中文字符必須用gb2312standalone獨立文檔聲明 默認no元素<a></a> 空元素</a>屬性
只能出現在開始標簽中
屬性值必須用引號
注釋<!-- -->字符串-不能出現在注釋中注釋不能嵌套使用
注釋不能出現在標記中
轉義字符和CDATA段特殊字符< <> >" "' '& &CDATA段 character data 字符數據<![CDATA[ ]]>注意大小寫
約束
DTD約束
例
<!ELEMENT 書架(書+)><!ELEMENT...>定義元素 元素名書架 (書+)元素中含有多個書元素
<!ELEMENT 書(書名,作者,售價)>(書名,作者,售價)子元素,按順序出現
<!ELEMENT 書名(#PCDATA)>(#PCDATA)表普通文本字符串
<!ELEMENT作者(#PCDATA)>
<!ELEMENT 售價(#PCDATA)>
DTD文件引入
<!DOCTYPE 根元素名稱 SYSTEM "DTD文件URL">本地DTD文件
<!DOCTYPE 根元素名稱 PUBLIC "DTD名稱" "DTD文件URL">公共DTD文件
元素內容
(1)#PCDATA普通文本字符串
(2)()子元素
(3)混合內容 例<!ELEMENT 書(#PCDATA|書名)*>
(4)EMPTY 例 <!ELEMENT br EMPTY>
(5)ANY
定義元素時,元素內容中可以包含一些符號
?表該對象可以出現0或1次
*表該對象可以出現0或多次
+表該對象可以出現1或多次
|表該對象中選擇一個
,表對象必須按照指定順序出現
()用于給元素進行分組
屬性定義
<!ALLLIST 元素名 屬性名 屬性類型 設置說明>
屬性類型CDATAEnumerated(枚舉)
設置說明 #REQUIRED 必須的
#IMPLIED 可選
#FIXED 固定值 不可修默認值 可修
ID ID類型屬性唯一標識XML文檔一個元素
IDREF 建立一對一關系
IDREFS建立一對多關系,可引用多個ID類型的屬性值,用空格分隔
NMTOKEN表示由一個或多個字母數字。-_組成的名稱,一種列表類型
NMTOKENS
NOTATION XML無法處理的數據
ENTITY實體
實體定義
引用實體
<!ENTITY 實體名稱 “實體內容”>
<!ENTITY 實體名稱 SYSTEM "外部URL">
引用方法 &實體名稱;
參數實體
<!ENTITY % 實體名稱 “實體內容”>
引用方法 %實體名稱;
|
新聞熱點
疑難解答