中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

JavaScript中怎么利用DTD操作XML-創(chuàng)新互聯(lián)

JavaScript中怎么利用DTD操作XML?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設,輪臺企業(yè)網(wǎng)站建設,輪臺品牌網(wǎng)站建設,網(wǎng)站定制,輪臺網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,輪臺網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

什么是DTD,為什么需要DTD?


DTD為英文Document Type Definition,中文意思為“文檔類型定義”。DTD肩負著兩重任務:一方面它幫助你編寫合法的代碼,另一方面它讓瀏覽器正確地顯示器代碼。

一個HTML文檔的基本結構可分為兩個主要部分:

<html>
  <head>
   頭部信息
  </head>
  <body>
   可視內(nèi)容
  </body>
</html>

一個DTD應該放在每一個文檔的第一行(包括空白).這樣正確地放置,你的DTD才能告訴瀏覽器的用的是什么標記語言。在通常情況下,如果你編寫的是正確代碼,并擁有一個合適的DTD,瀏覽器將會根據(jù)W3C的標準顯示你的代碼。
良好的xml文檔:符合xml的語法規(guī)則。
有效的xml文檔:符合xml語法規(guī)則的同時還需要符合DTD文檔類型定義。
有效(Valid)的XML文檔:
首先,XML文檔是個格式正規(guī)的(Well-formed)XML文檔;
其次,需要滿足DTD的要求,這樣的XML文檔稱為有效的(Valid)XML文檔。
利用DTD可以對xml文檔的各個節(jié)點進行約束定義,使開發(fā)遵循一套“標準”。
DTD可以約束xml文檔出現(xiàn)的元素,元素名稱,元素的先后順序,屬性等。

DTD文檔與XML文檔實例的關系

類與對象;
數(shù)據(jù)庫表結構與數(shù)據(jù)記錄;

有了DTD,每個XML文件可以攜帶一個自身格式的描述。
有了DTD,不同組織的人可以使用一個通用DTD來交換數(shù)據(jù)。
應用程序可以使用一個標準DTD校驗從外部世界接收來的XML數(shù)據(jù)是否有效。
可以使用DTD校驗自己的XML數(shù)據(jù)。

元素的定義

JavaScript中怎么利用DTD操作XML

DTD中的修飾符號:

JavaScript中怎么利用DTD操作XML

這部分符號可以聯(lián)系正則表達式的符號來記憶。重點內(nèi)容

如何生成DTD文檔

DTD文檔有三種應用形式:

1.內(nèi)部DTD文檔

<!DOCTYPE 根元素[定義內(nèi)容]>

2.外部DTD文檔

<!DOCTYPE 根元素 SYSTEM "DTD文件路徑">

3.內(nèi)外部DTD文檔結合

<!DOCTYPE 根元素 SYSTEM "DTD文件路徑" [定義內(nèi)容]>

JavaScript中怎么利用DTD操作XML

內(nèi)部DTD

一個內(nèi)部DTD的例子:
上半部分是DTD,下面是XML文檔,文檔要符合DTD。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE poem [
  <!ELEMENT poem (author, title, content)>
  <!ELEMENT author (#PCDATA)>
  <!ELEMENT title (#PCDATA)>
  <!ELEMENT content (#PCDATA)>
]>
<!--為元素poem定義了三個子元素author title content,
這三個元素必須要出現(xiàn)并且必須按照這個順序
少元素不行,多元素也不行
-->
<!--指明author,title,content里面的內(nèi)容是字符串類型-->
<poem>
  <author>王維</author>
  <title>鹿柴</title>
  <content>空山不見人,但聞人語聲。返景入深林,復照青苔上。</content>
</poem>

上面的文檔就是格式良好,并且有效的。

#PCDATA(Parsed Character Data) ,可解析的字符數(shù)據(jù),即字符串。

上面部分是DTD,在下面編寫XML文檔時,如果不符合其DTD規(guī)范,用XMLSpy做檢查的時候,是well-formed的,但是卻不是valid的。

比如根元素寫:

<Students>
</Students>

Validate檢查的時候就會報錯,根元素和DTD中的poem不符。

制作DTD約束校驗工具

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<script>
var doc = new ActiveXObject("Mircosoft.XMLDOM");
doc.validateOnParse = true;
doc.async = false;//同步校驗
function jiaoyan(){
  doc.load("./01.xml");//加載被校驗的文檔
  var rst = document.getElementById("result");
  rst.innerHTML += "錯誤信息:" + doc.parseError.reason + "<br />";//校驗的錯誤信息
  rst.innerHTML += "錯誤行數(shù):" + doc.parseError.line + "<br />";//出錯代碼的行數(shù)
  rst.innerHTML += "錯誤列數(shù):" + doc.parseError.linepos + "<br />";//出錯代碼的列數(shù)
  rst.innerHTML += "錯誤代碼:" + doc.parseError.errorCode + "<br />";//出錯代碼的編號
}
</script>
</head>
<body>
<input type=button value="校驗" onclick="jiaoyan()" />
<div id="result"></div>
</body>
</html>

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)網(wǎng)站建設公司,的支持。

網(wǎng)站名稱:JavaScript中怎么利用DTD操作XML-創(chuàng)新互聯(lián)
當前地址:http://www.rwnh.cn/article22/cegcjc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、網(wǎng)站策劃建站公司、商城網(wǎng)站搜索引擎優(yōu)化、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
宜川县| 宁远县| 华宁县| 涪陵区| 海安县| 铜鼓县| 巫溪县| 辽宁省| 南京市| 沿河| 龙江县| 峨边| 宣恩县| 鲜城| 通山县| 汤原县| 沙坪坝区| 类乌齐县| 喀喇| 彩票| 滁州市| 德昌县| 楚雄市| 鹤庆县| 米泉市| 六盘水市| 乐平市| 瑞丽市| 澄江县| 新巴尔虎左旗| 云霄县| 精河县| 旬阳县| 临邑县| 大新县| 庆阳市| 新昌县| 伊宁县| 伊春市| 勐海县| 饶平县|