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;
 

7. schema
* 扩展名:*.xsd
* schema文档来说是基于xml
* schema文档,根元素是schema,在http://www.w3.org/2001/XMLSchema定义
* 要求:(作业)
* 通过别人书写的schema文档,写出相应的XML文档(w3cschool.chm)
** 通过xml文档书写相应的schema文档(PPT5片段)【可选】

DOM解析的更多相关文章

  1. Android之DOM解析XML

    一.DOM解析方法介绍 DOM是基于树形结构的节点或信息片段的集合,允许开发人员使用DOM API遍历XML树,检索所需数据.分析该结构通常需要加载整个文档和构造树形结构,然后才可以检索和更新节点信息 ...

  2. dom解析和sax解析的区别及优缺点

    dom解析一开始就将文档所有内容装入内存,每个元素(标签)都作为一个element对象存储,形成对象树,缺点是对内存占用大,不能解析数据量很大的文档:优点是方便进行crud操作. sax解析,逐行解析 ...

  3. JAVA中使用DOM解析XML文件

    XML是一种方便快捷高效的数据保存传输的格式,在JSON广泛使用之前,XML是服务器和客户端之间数据传输的主要方式.因此,需要使用各种方式,解析服务器传送过来的信息,以供使用者查看. JAVA作为一种 ...

  4. Java Dom解析的三个实例

    概述 Dom解析的文章已经烂大街了.在这里,只举三个场景下如何编码的例子: xml内有多个同名节点,获取这多个同名节点 已获取到某个节点,生成这个节点的xml描述 修改节点某属性的值 详细的讲解看官请 ...

  5. 简单谈谈dom解析xml和html

    前言 文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口.html,xml都是基于这个模型构造的.这也是一个W3C推出的标准.j ...

  6. 用java操作XML文件(DOM解析方式)

    XML 可扩展标记语言(Extensible Markup Language),是独立于软件和硬件的传输工具. XML的作用: (1)用作配置文件 (2)简化数据共享 (3)简化数据传输 XML DO ...

  7. DOM解析XML文件

    1.首先把第三方代码拖进工程 GDataXMLNode.h和GDataXMLNode.m这两个文件放进工程里面 2.引入libxml2库文件 3.将GDataXMLNode.h文件中的这两个东西在工程 ...

  8. Java从零开始学四十二(DOM解析XML)

    一.DOM解析XML xml文件 favorite.xml <?xml version="1.0" encoding="UTF-8" standalone ...

  9. XML文件解析DOM解析和SAX解析

    解析一个XML文档有哪些内容解析有:dom和sax两种dom:把整个XML文档放入内存,适合XML随机访问,占用内存资源大sax:事件驱动型的XML解析方式,顺序读取,不用一次装载整个文件,遇到标签会 ...

  10. xml语法、DTD约束xml、Schema约束xml、DOM解析xml

    今日大纲 1.什么是xml.xml的作用 2.xml的语法 3.DTD约束xml 4.Schema约束xml 5.DOM解析xml 1.什么是xml.xml的作用 1.1.xml介绍 在前面学习的ht ...

随机推荐

  1. Linux open函数

    Linux open函数 open 函数用于打开和创建文件.以下是 open 函数的简单描述 #include <fcntl.h> int open(const char *pathnam ...

  2. jquery插件jquery.LightBox.js之点击放大图片并左右点击切换图片(仿相册插件)

    该插件乃本博客作者所写,目的在于提升作者的js能力,也给一些js菜鸟在使用插件时提供一些便利,老鸟就悠然地飞过吧. 此插件旨在实现目前较为流行的点击放大图片并左右点击切换图片的效果,您可以根据自己的实 ...

  3. My租房网

    阶段一:采用分页top关键字进行查询 实现6条~~10条出租信息 阶段2:查询指定客户发布的租房信息 查询客户张三的信息,使用连接查询实现. 阶段3:按区县制作房屋出租清单

  4. Jquery局部刷新小案列

    /* 调用showTest()方法去后台拿到处理数据后返回到part.jsp页面,main.jsp再调用html()方法 和显示的结果集show()方法把part.jsp显示到当前的页面,实现局部页面 ...

  5. 关于JQuery设置checkbox checked 的问题

    近日做一个关于JQuery表单验证,有一个比较奇葩的要求,即checkbox是为必填项,textbox不是必填的. 而checkbox与textbox又是相关的,填写了textbox,则其上方的che ...

  6. CKPT进程工作机制

    CKPT进程工作示意图 2.CKPT进程工作机制 检查点进程被触发的条件为: a> 当发生日志组切换时: b>  用户提交了事务时(commit): c>  Redo log buf ...

  7. hadoop-1.2.1安装配置

    1.准备三台节点 hnd1  hnd2  hnd3 下载 hadoop 下载地址:http://apache.fayea.com/hadoop/common/ API文档:http://hadoop. ...

  8. javascript 百度地图

    官方地址 http://lbsyun.baidu.com/index.php?title=jspopular 示例地址 http://developer.baidu.com/map/jsdemo.ht ...

  9. Devexpress TreeList控件绑定显示父子节点对像

    今天一位同事咨询Devexpress TreeList控件绑定自动显示父子节点对像,但结果是不会显示带父子节点关系,而是将所有的节点作为父节点显示出来了,对像类的代码如下 public class I ...

  10. as关键词还有另外一个用途,那就是修改 方法 的访问控制

    PHP是单继承的语言,在PHP 5.4 Traits出现之前,PHP的类无法同时从两个基类继承属性或方法.php的Traits和Go语言的组合功能类似,通过在类中使用use关键字声明要组合的Trait ...