XML学习

XML 可扩展性标记语言 

标签可·自己定义  

XML 主要用来存储数据 传输数据  是W3C 组织发布的技术  1.0 版本  1.1 版本不能兼容1.0

不同系统之间传递数据   用来表示生活中相关的数据  经常用在文件配置

XML 文档声明 

<?xml version="1.0“ encoding="utf-8"?>

XML标签  有且只有一个根标签

<person>

           <name>张三</name>

</person>

空格换行都会当做内容来解析  区分大小写  不能以数字和下划线开头  不能以XML xml 开头  标签不能包含空格和冒号  可以是中文

属性的定义  可以有多个属性

<person id1="aa" id2="bb">

           <name>张三</name>

</person>

注释  <!--     --> 不能嵌套

特殊字符  a<b  a &lt; b

CDATA   <![CDATA[内容]]>   内容里面的特殊字符不需要转义

PI 指令设置样式   <?xml-stylesheet type="text/css" href="1.css"?>  只对英文标签起作用


XML的约束

<person>

           <name>张三</name>

           <age>11</age>

           <猫>1000</猫>//约束不该出现的元素

</person>


dtd 文件写法

(1)XML 有多少个元素  就写多少个<!ELEMENT>

(2) 复杂元素  有子元素的元素

<!ELEMENT person(name,age)>

<!ELEMENT name(#PCDATA)>

<!ELEMENT age(#PCDATA)>

(3) XML引入dtd

<?DOCTYPE SYSTEM "dtd路径"?>

XML 约束的校验需要eclipse

dtd 定义元素   DTD 语法  

简单元素的约束  <!ELEMENT 元素  约束>

1、#PCDATA  只能是字符串    2、EMPTY  为空   3、ANY 任意  

复杂元素 <!ELEMENT person(name,age)>子元素是有序的

子元素出现次数   +  <!ELEMENT person(name+,age)>  子元素出现一次或者多次

?  0次或一次   *  表示  任意 0次 一次  多次

<!ELEMENT person(name+|age)>  元素只能出现 name 或者age

2、dtd 属性设置

<!ATTLIST 元素

     属性名称   类型  约束

 >

<!ATTLIST birthday

       ID1 CDATA #REUIRED

>

<!ATTLIST birthday

       ID2 (AA|BB|CC)  #REUIRED

>

<!ATTLIST birthday

       ID3  ID  #REUIRED 只能字母下划线开头

>

属性约束

 #REUIRED 必须有

#IMPLLED  可有可无  

#    FIXED   " abc"

直接值    ID4 CDATA ”www“

实体的定义

<!ENTITY TSET "hahah">

使用 &TEST;  写在内部dtd




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值