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 ...
随机推荐
- 美国L1签证和B1,E2签证的区别
L1是跨国公司派驻工作人员到美国关联公司工作所需的签证.L1有两种: L1A是给管理人员的.L1B是给关键技术人员的.通过延期,L1A最长时间可达7年. L1B最长时间可达五年. 最初的L1申请,如果 ...
- 1002 GTY's birthday gift
GTY's birthday gift Time Limit ...
- Android(java)学习笔记106-1:深入分析Java ClassLoader原理
1. 前言: Android中的动态加载机制能更好的优化我们的应用,同时实现动态的更新,这就便于我们管理我们的应用,通过插件化来减轻我们的内存以及CPU消耗,在不发布新版本的情况下能更新某些模块. 当 ...
- Python 替换字符串
string类型是不可变的,因此不能采用直接赋值的方式.比如一个字符串 helloworld,想把o替换成z,那么只有先替换,然后再迭代. strings="helloworld" ...
- TextFiled 中输入金额
要求: 输入的金额不能超过六位, 小数点后面只能输入两位小数 如果 textFIled 中第一位输入的是0 ,后面必须输入小数点,否则禁止输入 用到 textfiled代理方法 #pragma ma ...
- HTML+CSS实例——漂亮的查询部件(一)
一.参考网址:www.kuhnsjewelers.com 二.效果: 三.HTML <div id="search-box"> <asp:TextBox ID=& ...
- 魔方阵算法及C语言实现
1 魔方阵概念 填充的,每一行.每一列.对角线之和均相等的方阵,阶数n = 3,4,5….魔方阵也称为幻方阵. 例如三阶魔方阵为: 魔方阵有什么的规律呢? 魔方阵分为奇幻方和偶幻方.而偶幻方又分为是4 ...
- LeetCode 274
H-Index Given an array of citations (each citation is a non-negative integer) of a researcher, write ...
- hdu 4585 set应用
#include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #i ...
- android Animation笔记
日历 公告 关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式: 1. Tween Animation:通过对场景里的对象不断做图 ...