1.xml的文档声明
如果写了xml 第一步必须要有一个文档声明
格式:<?xml vertion="1.0" encoding="UTF-8"?>
文档声明必须在第一行第一列 前面有空格也不行。
属性 -- vertion 1.0 和 1.1 一般1.0
-- encoding xml编码
-- standalone 是否要依赖其他文件 yes/no
2.定义元素(标签)
<aa/> 如果没有主体 这样也是可以的
不能以数字和下划线开头
命名不能有空格和冒号
3.定义属性
4.注释
<!-- -->
5.特殊字符
特殊字符需要转义才能显示
& &
< < a<b = a<b;
> >
" "
' &apos
6.cdata区
可以把需要多个要转义的字符放进去这样就不需要一个一个转义了
写法: <![CDATA[ 内容 ]]>
把特殊字符当文本内容 而不是标签
7.pi指令
可以在xml中设置样式
<?xml-stylesheet type="text/css" href="css路径"?>
设置样式对中文的标签名称不起作用。
xml的约束
dtd的约束和schema约束
dtd快速入门
创建一个后缀为.dtd的文件
1.看xml中有多少元素 有几个就在dtd中写几个<!ELEMENT>
2.判断元素是简单元素还是复杂元素
- 简单就是没有子元素
<!ELEMENT 元素名称 (#PCDATA)>
- 复杂就是一子元素的元素
<!ELEMENT 元素名称 (子元素1,子元素2)>
3.需要在xml文件中引入dtd文件
<!DOCTYPE 根元素名称 SYSTEM "dad文件的路径">
浏览器只负责校验xml的语法 不负责校验约束 如想校验需用工具 myeclipse
内部dtd
<!DOCTYPE person [
<!ELEMENT person (name,age)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
]>
使用网路的dtd文件
<!DOCTYPE 根元素名称 PUBLIC "DTD名称" "DTD文档的URl">
dtd定义元素
语法 <!ELEMENT 元素名 约束>
简单元素and复杂元素
<!ELEMENT name (#PCDATA)>
EMPTY 元素为空(没有内容)
<!ELEMENT age EMPTY>
ANY 任意
复杂元素 表示子元素出现的次数
+ name后加+ 表示可以有好几个name 一个或多个最少一次
? 零次或者一次
* 表示零次或者多次
子元素用,隔开表示出现的顺序 用|表示只能出现一个
#PCDATA 字符串 EMPTY为空 ANY任意
<!DOCTYPE> 根节点
TVSCHEDULE 元素 CDATA字符串 #REQUIRED 必须要有 required
#IMPLIED 可有可无 implied
#FIXED 表示属性的值是一个固定值
如果写了xml 第一步必须要有一个文档声明
格式:<?xml vertion="1.0" encoding="UTF-8"?>
文档声明必须在第一行第一列 前面有空格也不行。
属性 -- vertion 1.0 和 1.1 一般1.0
-- encoding xml编码
-- standalone 是否要依赖其他文件 yes/no
2.定义元素(标签)
<aa/> 如果没有主体 这样也是可以的
不能以数字和下划线开头
命名不能有空格和冒号
3.定义属性
4.注释
<!-- -->
5.特殊字符
特殊字符需要转义才能显示
& &
< < a<b = a<b;
> >
" "
' &apos
6.cdata区
可以把需要多个要转义的字符放进去这样就不需要一个一个转义了
写法: <![CDATA[ 内容 ]]>
把特殊字符当文本内容 而不是标签
7.pi指令
可以在xml中设置样式
<?xml-stylesheet type="text/css" href="css路径"?>
设置样式对中文的标签名称不起作用。
xml的约束
dtd的约束和schema约束
dtd快速入门
创建一个后缀为.dtd的文件
1.看xml中有多少元素 有几个就在dtd中写几个<!ELEMENT>
2.判断元素是简单元素还是复杂元素
- 简单就是没有子元素
<!ELEMENT 元素名称 (#PCDATA)>
- 复杂就是一子元素的元素
<!ELEMENT 元素名称 (子元素1,子元素2)>
3.需要在xml文件中引入dtd文件
<!DOCTYPE 根元素名称 SYSTEM "dad文件的路径">
浏览器只负责校验xml的语法 不负责校验约束 如想校验需用工具 myeclipse
内部dtd
<!DOCTYPE person [
<!ELEMENT person (name,age)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT age (#PCDATA)>
]>
使用网路的dtd文件
<!DOCTYPE 根元素名称 PUBLIC "DTD名称" "DTD文档的URl">
dtd定义元素
语法 <!ELEMENT 元素名 约束>
简单元素and复杂元素
<!ELEMENT name (#PCDATA)>
EMPTY 元素为空(没有内容)
<!ELEMENT age EMPTY>
ANY 任意
复杂元素 表示子元素出现的次数
+ name后加+ 表示可以有好几个name 一个或多个最少一次
? 零次或者一次
* 表示零次或者多次
子元素用,隔开表示出现的顺序 用|表示只能出现一个
#PCDATA 字符串 EMPTY为空 ANY任意
<!DOCTYPE> 根节点
TVSCHEDULE 元素 CDATA字符串 #REQUIRED 必须要有 required
#IMPLIED 可有可无 implied
#FIXED 表示属性的值是一个固定值