javaweb-day01-3(XML 的 dtd 约束)
2015-01-27 21:00
441 查看
XML 的约束方式有两种:dtd 和 schema
xml文档里面有中文时,记事本软件默认使用gb2312编码来保存到硬盘,所以我们在encoding里写gb2312来通知浏览器解析引擎使用gb2312来打开此XML文档。
DTD文件必须指定 UTF-8 或 Unicode 编码保存。
如果使用其他编码保存,那么使用这份dtd文档约束的所有XML文档将打不开。
2. IE浏览器没有自动校验功能,实际上IE5以上浏览器内置了XML解析工具:Microsoft.XMLDOM,可以编写javascript代码,利用这个解析工具装载xml文件,并对这个文件进行dtd验证。
创建解析器对象:var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
开启校验开关: xmldoc.validateOnParse = "true";
装载xml文档: xmldoc.load("book.xml");
获取错误信息: xmldoc.parseError.reason; xmldoc.parseError.line;
错误信息:
错误行号:0
DTD约束:
Document Type Definition 文档类型定义、文档类型界定。入门示例:
book.xml :
<?xml version="1.0" encoding="gb2312"?> <!DOCTYPE 书架 SYSTEM "book.dtd"> <书架> <书> <书名>Java就业培训教程</书名> <作者>张孝祥</作者> <售价>39.00元</售价> </书> <书> <书名>JavaScript网页开发</书名> <作者>张孝祥</作者> <售价>28.00元</售价> </书> </书架>
xml文档里面有中文时,记事本软件默认使用gb2312编码来保存到硬盘,所以我们在encoding里写gb2312来通知浏览器解析引擎使用gb2312来打开此XML文档。
book.dtd :
<!ELEMENT 书架 (书+)> <!ELEMENT 书 (书名,作者,售价)> <!ELEMENT 书名 (#PCDATA)> <!ELEMENT 作者 (#PCDATA)> <!ELEMENT 售价 (#PCDATA)>PCDATA :parse chracter data 可解析的字符串。
DTD文件必须指定 UTF-8 或 Unicode 编码保存。
如果使用其他编码保存,那么使用这份dtd文档约束的所有XML文档将打不开。
校验:
1. 用Google chrome 打开book.xml,可以校验此xml文档是否符合指定的dtd约束文档的规定,错误出在哪里都会有提示。2. IE浏览器没有自动校验功能,实际上IE5以上浏览器内置了XML解析工具:Microsoft.XMLDOM,可以编写javascript代码,利用这个解析工具装载xml文件,并对这个文件进行dtd验证。
创建解析器对象:var xmldoc = new ActiveXObject("Microsoft.XMLDOM");
开启校验开关: xmldoc.validateOnParse = "true";
装载xml文档: xmldoc.load("book.xml");
获取错误信息: xmldoc.parseError.reason; xmldoc.parseError.line;
validate.html :
<html> <head> <script> var xmldoc = new ActiveXObject("Microsoft.XMLDOM"); xmldoc.validateOnParse = "true"; xmldoc.load("book.xml"); document.write("错误信息:"+xmldoc.parseError.reason+"<br/>"); document.write("错误行号:"+xmldoc.parseError.line); </script> </head> <body> </body> </html>用IE浏览器打开此 validate.html 校验文档,会显示错误信息和行号:
错误信息:
错误行号:0
相关文章推荐
- javaWeb(1)-XML及DTD约束条件学习
- javaWeb系列之三(XML的简介与约束(DTD和Schema))
- XML-DTD约束
- 【代码笔记】XML深入学习:DTD约束与DTD语法(1)
- XML DTD与Schema约束
- xml约束之dtd约束和schema约束---3
- XML简介之DTD约束详解三
- xml语义约束:DTD和Schema
- XML文档数据库--DTD约束简单演示
- javaweb-day01-2(00:17:48 XML 的作用 和 语法)
- 【XML系列】----DTD约束(一)
- xml约束之dtd约束和schema约束---3
- xml约束和DTD校验
- xml约束DTD演示
- Java IDE__Eclipse、MyEclipse为XML添加DTD约束
- XML的约两种约束——DTD、Schema
- XML——DTD约束应用、DTD约束语法细节
- XML介绍之DTD约束语法详解四
- XML的约束技术DTD语法
- xml学习笔记2--DTD约束