首页 > 代码库 > DOM解析

DOM解析

1.xml可扩展标记语言(Extensible Makeup Language)

最简单的声明语法:

  <?xml version="1.0" ?>

用encoding属性说明文档的字符编码:

  <?xml version="1.0" encoding="GB2312" ?> 

用standalone属性说明文档是否独立:

  <?xml version="1.0" encoding="GB2312"  standalone="yes" ?>

格式良好的XML文档必须有且仅有一个根标签,其它标签都是这个根标签的子孙标签

 

2.在编写XML文件时,有些内容可能不想让解析引擎解析执行,而是当作原始内容处理。
遇到此种情况,可以把这些内容放在CDATA区里,对于CDATA区域内的内容,XML解析程序不会处理,而是直接原封不动的输出。
语法:<![CDATA[ 内容 ]]>

  <![CDATA[

  <itcast>

  <br/>

  </itcast>

  ]]>

3.

文件清单:book.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE books SYSTEM "book.dtd"><books>    <book>        <name>Java Thinking</name>        <author>Bruce</author>        <price>68</price>    </book>    <book>        <name>Java Core</name>        <author>Gray</author>        <price>79</price>    </book></books>

文件清单:book.dtd

文件清单:book.dtd<!ELEMENT books (book+)>    <!ELEMENT book (name,author,price)>    <!ELEMENT name (#PCDATA)>    <!ELEMENT author (#PCDATA)>    <!ELEMENT price (#PCDATA)>

验证XML文档的范例代码1(会用)

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title><script type="text/javascript">function initXml(){var xmldoc = new ActiveXObject("Microsoft.XMLDOM");xmldoc.validateOnParse = "true";/**********修改成自己的xml文件*****************/xmldoc.load("book.xml");/***************************************************************/document.write("<br>Error Code: ");document.write(xmldoc.parseError.errorCode);document.write("<br>Error Reason: ");document.write(xmldoc.parseError.reason);document.write("<br>Error Line: ");document.write(xmldoc.parseError.line);}</script></head><body onload="initXml();"></body></html>
DTD约束即可以作为一个单独的文件编写,也可以在XML文件内编写
XML文件使用 DOCTYPE 声明语句来指明它所遵循的DTD文件
关联方式
•使用内部DTD
  格式:<!DOCTYPE 书架 […具体规范内容…]>
•使用外部DTD
  格式:<!DOCTYPE 文档根结点 SYSTEM "DTD文件的URL">
  例如: <!DOCTYPE books SYSTEM “book.dtd”>
•使用公共DTD
  格式:
  <!DOCTYPE 文档根结点 PUBLIC "DTD名称" "DTD文件的URL">
  例如:
  <!DOCTYPE web-app PUBLIC

    "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN“

     "http://java.sun.co.m/dtd/web-app_2_3.dtd">

4.实体(相当于变量)

•引用实体主要在 XML 文档中被应用
•语法格式:
•<!ENTITY 实体名称 “实体内容” >
•引用方式:
•&实体名称;
•举例:
•<!ENTITY copyright “I am a programmer">
•……
•&copyright;
5.内部实体
•参数实体被 DTD 文件自身使用
•语法格式:
•<!ENTITY % 实体名称 "实体内容" >
•引用方式:
•%实体名称;
•举例:
•<!ENTITY %TAG_NAMES "姓名 | EMAIL | 电话 | 地址">
•<!ELEMENT 个人信息 (%TAG_NAMES; | 生日)>
•<!ELEMENT 客户信息 (%TAG_NAMES; | 公司名)>
6.外部实体
l语法格式:
•<!ENTITY 实体名称 SYSTEM "URI/URL">
l引用方式:
•&实体名称;
l举例:
•<!ENTITY info SYSTEM "part.xml">
•……
•& info;