XML数据的底层结构

XML数据的底层结构

ID:38581760

大小:326.00 KB

页数:52页

时间:2019-06-15

XML数据的底层结构_第1页
XML数据的底层结构_第2页
XML数据的底层结构_第3页
XML数据的底层结构_第4页
XML数据的底层结构_第5页
资源描述:

《XML数据的底层结构》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第3章XML数据的底层结构3.1有效的XML文件3.2如何检查XML文件的有效性3.3XML文件与DTD的匹配3.4XML文档类型定义文件DTD符合XML语法规则的XML文件称为规范的XML文件,也称为良构的XML文件。规范的XML文件再符合额外的一些约束,就称为有效的XML文件。3.1有效的XML文件(1)这些额外的约束就是DTD(DocumentTypeDefinition,文档类型定义)和XMLSchema。例如,下面的文件就是一个有效的XML文件:3.1有效的XML文件(2)

2、(persion*)>]>xiaowangmale25文件中的每一个标记都在DTD中做了定义,而且满足相应的约束条件。返回浏览器只是检查XML文件的规范性,并不能验证XML文件是否遵守其对应的约束文件中的约束条件。所以检查文件的有效性还需要通过解析器来

3、进行。本例通过DOM解析器来检验XML文件的有效性。文件MyHandler.java称为事件处理器,用于检验XML文件的有效性并处理XML文件的错误信息,具体代码如下:3.2如何检查XML文件的 有效性(1)importorg.xml.sax.helpers.DefaultHandler;importorg.xml.sax.SAXParseException;importorg.xml.sax.SAXException;publicclassMyHandlerextendsDefaultHandler{Stringem=null;publicvoiderror(SAXParseExcepti

4、one)throwsSAXException{em=e.getMessage();//一般性错误,一般为有效性错误System.out.println("一般错误"+em);}publicvoidfataError(SAXParseExceptione)throwsSAXException{em=e.getMessage();//严重错误,一般为规范性错误System.out.println("致命错误"+em);}}3.2如何检查XML文件的 有效性(2)//获得解析工厂DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInst

5、ance();//设置解析器支持有效性检查factory.setValidating(true);//创建DOM解析器DocumentBuilderbuilder=factory.newDocumentBuilder();//实例化事件处理器MyHandlerhandler=newMyHandler();//绑定处理器builder.setErrorHandler(handler);//解析并检验文件XML文件Documentdocument=builder.parse(newFile(file));//如果返回的错误信息为空,说明是一个有效的XML文件,否则是无效的if(handler.e

6、m==null){System.out.println("文件"+file+"是有效的XML文件。");}else{System.out.println("文件"+file+"是无效的XML文件。");}文件XMLValidate.java负责创建DOM解析器,分析XML文件,主要代码如下:3.2如何检查XML文件的 有效性(3)利用这个检验程序检验前面的XML文件,得到的结果如下图所示:如果去掉“”中的子标记“”,再进行有效性检验,得到的结果如下图所示:3.2如何检查XML文件的 有效性(4)如果利用了XML开发工具,会很方便的进行规范性及有效性的检验。例如使用

7、XMLWritwer。返回DTD文件的保存DTD文件需使用文本编辑器编写、保存。DTD文件的扩展名必须是“.dtd”,保存时所选择的编码必须和其关联的XML文件一致,比如,DTD所要约束的XML文件的编码为UTF-8,那么DTD文件也必须按着UTF-8编码保存。XML文件与DTD的匹配是指约束一个XML文件的DTD的来源,在XML文件中,通过文档类型声明来指定DTD的来源,按来源不同可分为内部DTD和外部DT

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。