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 ...
随机推荐
- CSS code snip enjoy.
<!-- information-total得是动态获取吧. --> <div class="information-mod"> <div class ...
- 8张图带你理解Java整个只是网络(转载)
8张图带你理解Java整个只是网络 一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选.如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟. 1.字符 ...
- Linux文件与目录管理之ls的使用
来源:鸟哥的私房菜 查看文件与目录 ls ls [-aAdfFhilnrRSt] 目录名 ls [--color={never,auto,always}] ls [--full-time] 目录名 选 ...
- HTTP重定向服务器
程序基本流程如下: 代码组织结构如下: HTTP重定向服务主线程: package com.server; import java.io.IOException; import java.net.Se ...
- HDU 1978 How many ways (DP)
How many ways Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- 关于同步VSS服务器上的代码发生Eclipse里面的项目全部不见了
有次在同步VSS服务器上的代码的时候突然发生了错误(同步的代码的项目竟然消失了)....如下图 Could not open the editor: The file does not exist. ...
- poj 2749 2-SAT问题
思路:首先将hate和friend建边求其次2-SAT问题,判断是否能有解,没解就输出-1,否则用二分枚举最大的长度,将两个barn的距离小于mid的看做是矛盾,然后建边,求2-SAT问题.找出最优解 ...
- C#使用HttpHelper万能框架,重启路由器
首先声明,不是所有路由器都可以通过下面的代码来让路由器执行重启. 下面的代码测试的路由器是(TP-LINK TD-W89841N增强型).要根据自己的路由器来写代码. using CsharpHttp ...
- less-2
样式内嵌: 生成css: 样式运算: 生成的css文件:
- 每天一道LeetCode--206. Reverse Linked List
Reverse a singly linked list. package cn.magicdu; import cn.magicdu.extra.ListNode; public class _20 ...