xml学习总结(一)
xml DTD
定义元素<!ELEMENT 元素名 元素类型描述 >
(1)元素类型描述:任意类型,字符串型,空元素,包含子元素,混合类型
任意类型:
<?xml version="1.0" encoding="GB2312" standalone="yes"?>
<!DOCTYPE 书籍列表[
<!ELEMENT 书籍列表 ANY>
]>
<书籍列表>
书籍列表
</书籍列表>
<?xml version="1.0" encoding="GB2312" standalone="yes"?>
<!DOCTYPE 书籍列表[
<!ELEMENT 书籍列表 ANY>
]>
<书籍列表/>
字符串类型:
<?xml version="1.0" encoding="GB2312" standalone="yes"?>
<!DOCTYPE 书籍列表[
<!ELEMENT 书籍列表 (#PCDATA)>
]>
<书籍列表>描述</书籍列表>
空类型
<?xml version="1.0" encoding="GB2312" standalone="yes"?>
<!DOCTYPE 书籍列表[
<!ELEMENT 书籍列表 EMPTY>
]>
<书籍列表/>
混合类型
<?xml version="1.0" encoding="GB2312"?>
<!ELEMENT 喜欢的游戏 (#PCDATA | 游戏)*>
<!ELEMENT 游戏 (#PCDATA | 游戏名称 | 游戏类型)*>
<!ELEMENT 游戏名称 (#PCDATA)>
<!ELEMENT 游戏类型 (#PCDATA)>
<?xml version="1.0" encoding="GB2312"?>
<!DOCTYPE 喜欢的游戏 SYSTEM
"mixed.dtd">
<喜欢的游戏>
游戏和编程是类似的,都是一种兴趣
<游戏>
<游戏类型>动作格斗</游戏类型>
<游戏名称>侍魂</游戏名称>
适合释放紧张的、沉闷的感觉
</游戏>
<游戏>
放松、舒缓心情的好游戏。
<游戏名称>雷电</游戏名称>
<游戏类型>飞行射击</游戏类型>
</游戏>
<游戏>
<游戏名称>雷电</游戏名称>
</游戏>
<游戏>
<游戏名称>雷电</游戏名称>
<游戏名称>侍魂</游戏名称>
</游戏>
</喜欢的游戏>
(2)定义子元素
有序子元素-----使用英文(,)作为子元素之间的分割符
<?xml version="1.0" encoding="GB2312"?>
<!ELEMENT 书籍列表 (计算机书籍)*>
<!ELEMENT 计算机书籍 (书名,作者,价格,简要介绍)>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
<!ELEMENT 简要介绍 (#PCDATA)>
互斥------使用(|)隔开
<?xml version="1.0" encoding="GB2312"?>
<!ELEMENT 书籍列表 (计算机书籍)*>
<!ELEMENT 计算机书籍 (书名|作者|价格)>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
子元素出现的频率
+:可以出现一次货多次
*:可以出现零次或多次
?:可以出现零次或一次
<?xml version="1.0" encoding="GB2312"?>
<!ELEMENT 书籍列表 (计算机书籍)*>
<!ELEMENT 计算机书籍 (书名|作者*|价格+|简要介绍?)>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
<!ELEMENT 简要介绍 (#PCDATA)>
组合子元素
<?xml version="1.0" encoding="GB2312"?>
<!ELEMENT 书籍列表 (计算机书籍)*>
<!ELEMENT 计算机书籍 ((书名+,作者)|(价格,简要介绍))>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
<!ELEMENT 简要介绍 (#PCDATA)>
无序子元素
<?xml version="1.0" encoding="GB2312"?>
<!ELEMENT 书籍列表 (计算机书籍)*>
<!ELEMENT 计算机书籍 (书名|作者|价格)+>
<!ELEMENT 书名 (#PCDATA)>
<!ELEMENT 作者 (#PCDATA)>
<!ELEMENT 价格 (#PCDATA)>
(3)定义属性
<!ATTLIST 属性所属的元素 属性名 属性类型 [元素对属性的约束] [默认值]>
属性约束:
->#REQUIRED:必须为该元素提供该属性
->#IMPLIED:该属性值可有可无
->#FIXED:必须为该属性值指定默认值
属性类型:
CDATA ------------------属性值只能是字符串数据
(en1|en2)--------------枚举类型
ID------------------------属性的有效标示符(唯一)
IDREF--------------------引自另一个已有的ID属性值
IDREFS-------------------引自多个ID,之间用空格分隔
ENTITY-------------------一个外部实体,例如图片文件
ENTITIES-----------------多个外部实体,多实体之间用空格隔开
XML:--------------------预定义的XML值
xml学习总结(一)的更多相关文章
- XML 学习介绍 收藏
XML学习总结(一)——XML介绍 一.XML概念 Extensible Markup Language,翻译过来为可扩展标记语言.Xml技术是w3c组织发布的,目前推荐遵循的是W3C组织于2000发 ...
- XML学习笔记
XML学习笔记 第一部分:XML简介 我们经常可以听到XML.HTML.XHTML这些语言,后两者比较清楚,一直不是很明白XML是什么,这里做一个总结. XML(eXtensible Markup L ...
- SQL SERVER XML 学习总结
SQL SERVER XML 学习总结 最新的项目任务要做一个数据同步的功能,这些天都在做技术准备,主要是用到了微软的Service Broker技术,在熟悉使用该技术的同时,又用到了Sql s ...
- XML学习笔记(2)--dom4j操作XML
1. 介绍(四种方式的比较这部分转载自:http://www.blogjava.net/xcp/archive/2010/02/12/312617.html) 1)DOM(JAXP Crimson解析 ...
- XML学习笔记(1)--XML概述
XML基本概念 XML—extensible Markup Language(可扩展标记语言) XML最基本的三个概念 1)XML语言---描述事物本身(可扩展) 2)XSL语言---展现事物表现形式 ...
- XML学习总结(二)——XML入门
XML学习总结(二)——XML入门 一.XML语法学习 学习XML语法的目的就是编写XML 一个XML文件分为如下几部分内容: 文档声明 元素 属性 注释 CDATA区 .特殊字符 处理指令(proc ...
- XML学习教程
XML学习进阶1-- 什么是XML. 为什么使用 XML?... 什么是 XML?... 数据的结构表示... XML 文档... 数据是从表示和处理中分离出来的... 使XML数据自描述... XM ...
- Robot framework--内置库xml学习(一)
Using lxml By default this library uses Python's standard ElementTree module for parsing XML, but it ...
- Java第三阶段学习(十、XML学习)
一.XML学习 1.模拟Servlet执行 在学习完前端及java与数据库后,将进行WEB编程阶段的学习.在WEB编程中,可以通过浏览器访问WEB服务器上的数据.这时WEB服务器就相当于另一台计算机. ...
- [python xml 学习篇][0]
tree = ET.parse("Result.xml")root = tree.getroot()print type(root)print root.tag # 得到root ...
随机推荐
- jQuery之父:每天都写点代码
去年秋天,我的“兼职编程项目”遇到了一些问题:要不是从 Khan Academy 的项目里挪出时间来的话,我根本没办法将不理想的进度弥补上. 这些项目遇到了一些严重的问题.之前的工作我主要是在周末,有 ...
- android 编写动画
1.在编写动画的时候需要新建一个xml 新建的步骤是选中res单击右键选择Android resource file 然后弹出一个框 ,然后再Resource Type 里面选择Animation 然 ...
- 包加载失败 未能正确加载包“xxx”...
打开vs2008或者2005如果弹出一个警告对话框 包加载失败 未能正确加载包“xxx” ...... 的字样,就可以用以下方法解决. 在cmd下运行带参数的devenv.exe: "d(盘 ...
- Linux下文件的三个时间(Atime,Mtime,Ctime)
文件的三个时间 我们已经很熟悉windows系统了,那么我们在windows下新建一个文件,我们知道它在保存的时候肯定是会保存一下文件的创建时间之类的信息的,那么我们来看看windows下的一个文件保 ...
- angularjs页面传参
例如:路由配置如下: $stateProvider.state('admin.userList', { url: '/listUser?type&role', //参数必须先在 ...
- 2012蓝桥杯C组本科决赛答案
题目: 脱氧核糖核酸即常说的DNA,是一类带有遗传信息的生物大分子.它由4种主要的脱氧核苷酸(dAMP.dGMP.dCMT和dTMP)通过磷酸二酯键连接而成.这4种核苷酸可以分别记为:A.G.C.T. ...
- Servlet & JSP - Servlet API Overview
Servlet & Generic & HttpServlet 类图 Servlet 的生命周期 init.service 和 destroy 是 servlet 的生命周期方法,它们 ...
- Jersey(1.19.1) - Sub-resources
@Path may be used on classes and such classes are referred to as root resource classes. @Path may al ...
- Lombok(1.14.8) - @Synchronized
@Synchronized @Synchronized,实现同步. package com.huey.lombok; import java.util.Date; import lombok.Sync ...
- POi写入大批量数据
直接贴代码: package jp.co.misumi.mdm.batch.common.jobrunner; import java.io.File; import java.io.FileNotF ...