xml学习

一、xml Exdtensible Markup Language

1.
XML--可扩展的标记语言
HTML--超文本标记语言

IBM内部的文档格式
SGML--标准通用的标记语言
HTML,XML W3C

2.XML的语法


二、xml组成部分:
1. PI---<?xml version="1.0"?>
2.元素
3.属性
4.注释<!--注释内容-->
5.实体定义
在XML 中,有 5 个预定义的实体引用:
< < 小于
> > 大于
& & 和号
&apos; ' 单引号
" " 引号

6.CDATA

<![CDATA[此处写文本内容]]>

三、XML文档语法要求:
1.一个根元素
2.开始标签必须有结束标签<name></name>或<name/>
3.<name></Name> 大小写敏感
4.属性定义在开始标签中,属性值必须用引号
5.同一标签不能有同名属性
6.元素正确嵌套,标签名不能有空格

定义xml文档,描述个人信息(姓名,年龄,性别,
联系方式,教育经历)

四、xml作用
1.xml用于显示(xml+xslt=html),XSLT是扩展样式表转换语言(Extensible Stylesheet Language Transformations)的简称。

2.xml做配置文件
config.properties
3.xml用于通信,数据交换

五。命名空间
解决标签名冲突的问题,增加前缀
xmlns:book=URI
<book:name></book:name>

URI--统一资源标识符(URL,URN)
URL--统一资源定位符
URN--统一资源命名
缺省空间:xmlns=URI

命名空间URI可以是虚拟的,不一定真实存在。


六,DTD 文档类型定义 (Document Type Definition)
对XML文档的约束

语法:
对元素:
<!ELEMENT 元素名 内容模型>
例:
<!ELEMENT 个人信息 (基本信息,教育背景*,工作经历*)>
表示元素“个人信息”,含有子元素“基本信息”、“教育背景”和“工作经历”,其中子元素“教育背景”和“工作经历”可以有0个或若干个。

内容模型:
EMPTY---元素内容模型为空
#PCDATA---元素内容是文本内容
子元素---有哪些子元素组成
混合模型---内容模型由文本内容或者子元素构成

, ---逗号分隔,子元素出现的顺序
* ---元素出现的次数是0或者多次
+ ---元素出现的次数是1或者多次
? ---元素出现的次数是0或者1次
| ---或者
无符号 ---必须出现,并且只能一次


对属性:
<!ATTLIST 元素名 属性名 属性类型 缺省值>

属性类型:
CDATA -- 普通文本内容
NMTOKEN --有限制的文本,只能有字符,数字,下划线,-,:组成
NMTOKENS --多个NMTOKEN组成,空格分开
ID -- 属性值唯一
IDREF -- 属性值只能引用类型为ID的元素值
IDREFS -- 多个类型为IDREF组成,空格分开
枚举 --

缺省值:
#REQUIRED -- 属性必须出现
#IMPLIED -- 属性可有可无
#FIXED -- 固定值
缺省值 -- 默认值

<!ENTITY 实体名称 实体内容>
引用:&实体名称;

<!ENTITY 实体名称 SYSTEM URI>
引用:&实体名称;


例:
<!ELEMENT 教育背景 (学校)>
<!ELEMENT 学校 (#PCDATA)>
<!ATTLIST 学校 入学日期 CDATA #REQUIRED
毕业日期 CDATA #IMPLIED>


七,引用DTD

1.内部声明,写在xml文档中
<!DOCTYPE 根元素名[
<!ELEMENT book (#PCDATA)>
]>

2.外部声明
约束语法保存文档,扩展名 .dtd
在xml中引入dtd
<!DOCTYPE 根元素名 SYSTEM "**.dtd">
例:
<!DOCTYPE 个人信息 SYSTEM "person.dtd">

3.引用网络资源
<!DOCTYPE 根元素名 PUBLIC "描述" "dtd文件网络路径">

例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
此为网页html文件头,表示引用网络资源。


xml文档:
1.良构
2.有效

练习:
定义DTD,基本信息(姓名,年龄,联系电话),
教育背景(起始年月,终止年月,学校)
工作经历(入职日期,离职日期,公司)
根据DTD,定义有效的XML


八,xsd XSD是指XML结构定义(XML Schemas Definition)
XML Schema 是DTD的替代品。XML Schema语言也就是XSD。
XML Schema描述了XML文档的结构。可以用一个指定的XML Schema来验证某个XML文档,以检查该XML文档是否符合其要求。文档设计者可以通过XML Schema指定一个XML文档所允许的结构和内容,并可据此检查一个XML文档是否是有效的。XML Schema本身是一个XML文档,它符合XML语法结构。可以用通用的XML解析器解析它。
一个XML Schema会定义:文档中出现的元素、文档中出现的属性、子元素、子元素的数量、子元素的顺序、元素是否为空、元素和属性的数据类型、元素或属性的默认和固定值。
XSD是DTD替代者的原因,一是据将来的条件可扩展,二是比DTD丰富和有用,三是用XML书写,四是支持数据类型,五是支持命名空间。
XSD文件的后缀名为.xsd。
XML Schema的优点:
1) XML Schema基于XML,没有专门的语法
2) XML可以象其他XML文件一样解析和处理
3) XML Schema支持一系列的数据类型(int、float、Boolean、date等)
4) XML Schema提供可扩充的数据模型。
5) XML Schema支持综合命名空间
6) XML Schema支持属性组。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值