在進(jìn)行XML文法分析之前,首先有必要了解XML語(yǔ)法的基本規(guī)則:
詞法特征:1)XML區(qū)分大小寫,如元素名在打開和關(guān)閉標(biāo)記中應(yīng)保持大小寫一致<mytag>…</mytag>,XML的保留詞串應(yīng)符合大小寫要求<?xml …> <!ENTITY>…。
2)XML保留標(biāo)記字符為:< > &,保留字符不允許出現(xiàn)在元素名、元素文本、屬性名、屬性值中,< 用戶打開標(biāo)記,>用于關(guān)閉標(biāo)記,&用于轉(zhuǎn)意,常見(jiàn)的轉(zhuǎn)意為 <生成<,>生成>,&生成&,&apos生成’,"生成”
3)元素名以下劃線或字母開始,可包含字母、數(shù)字、句點(diǎn)、連字符、下劃線、冒號(hào)和用于其他語(yǔ)言的擴(kuò)展字符,元素名中不能有空格符(分格符、跳格符、換行符、回車符),元素名可以由名域前綴。如:<mytag> <dt:mytag> 元素文本可以是除XML保留字符外的字符集合,如<mytag> my money is $2000 </mytag>
4)屬性名的規(guī)則同元素名,屬性值由單引號(hào)或雙引號(hào)括約其中,可由除XML保留字符以外的字符串組成,如:<mytag myprop=”proper value”>。屬性名有xmlns前綴,表明該屬性定義了一個(gè)名域,如:<mytag xmlns:ns=”http://www.myweb.com/myschema”>
句法特征:1)XML文檔由一個(gè)XML說(shuō)明、多個(gè)可選的文檔說(shuō)明、多個(gè)可選的XML指令、多個(gè)可選的XML注釋和一個(gè)根元素的數(shù)據(jù)體組成,此外還可以有嵌入語(yǔ)句中的CDATA段,如:
| 以下為引用的內(nèi)容: <?xml …?> /*XML說(shuō)明*/ <!DOCTYPE …> /*XML文檔說(shuō)明*/ <!-- … --> /*XML注釋*/ <?xml-stylesheet …?> /*XML指令*/ <root> /*根數(shù)據(jù)元素*/ <child> …<![CDATA[…]]> </child> </root> |
2)XML說(shuō)明由<?xml打開,由?>標(biāo)關(guān)閉,其中包含版本、編碼等可選說(shuō)明,如:<?xml version=”1.0” encoding=”UTF-9”?>
3)XML文檔說(shuō)明由<!和保留串打開,由>關(guān)閉,如:<!DOCTYPE mydoc SYSTEM “mydoc.dtd”>
4)XML指令由<?和保留串打開,由?>關(guān)閉,如:<?xml-stylesheet type=”text/xsl” href=”mystyle.xsl”?>
5)XML注釋由<! 主站蜘蛛池模板: 榆社县| 韶山市| 大田县| 寿光市| 遂昌县| 太湖县| 文昌市| 临泉县| 如东县| 德阳市| 延寿县| 双流县| 盘锦市| 肇庆市| 昭苏县| 体育| 杭锦旗| 光山县| 扶绥县| 红原县| 田林县| 上高县| 宿迁市| 和政县| 南江县| 潜山县| 鹤庆县| 大余县| 巴楚县| 上栗县| 马龙县| 寿宁县| 酉阳| 巢湖市| 慈利县| 缙云县| 达日县| 华亭县| 云梦县| 扶绥县| 中阳县|