xml学习体会

一、XML简介
HTML用于显示的。XML被设计的宗旨是描述数据的。
  • XML的标签是用户自行定义的。
  • XML是可扩展标记语言。

1、XML的作用
描述有关系和层次结构的数据

2、XML的应用
a、描述数据
b、作为配置文件

注:在Java开发中,传统的配置文件是properties文件。
扩展名必须是properties,文件中的内容是以key=value的形式存在的。

例:db.properties;user=root;password=root;#url=...               注释

二、XML的语法
1、XML文档声明
必须出现在第1行。
语法:<?xml version="1.0"?>   注意:?与xml之间不能有空格
   *version可以称为属性:取值固定1.0
   *encoding属性:说明xml文档采用的编码。默认为utf-8

   注意:保存到磁盘上使用的编码要与XML声明中的编码一致。否则出现错误
   standalone:说明该xml文档是否独立存在。

2、元素

  1. 必须有结束标签。
  2. 如果没有主题内容,标签<tag1></tag1>可以写为<tag1/>
  3. 必须合理嵌套
  4. 一个XML文档中,有且只有一个根元素
  5. XML不会忽略文档中出现的空格、回车换行、制表符。
  6. 命名规范:只能包含字母、数字、下划线、减号和英文句点。
  7. 严格区分大小写;
3、元素的属性
元素的属性名不能重复
属性的取值必须用引号引起来(单或双)
属性可以用子元素的形式来替代。

4、注释
语法:<!--这是注释-->
注意:
声明前不能有注释
注释必须合理嵌套

5、CDATA区
CDATA:Character Data字符数据
作用: 把元素等看做普通字符串
语法:<![CDATA[内容]]>

6、XML中的特殊字符
要在元素内容中显示特殊字符本身,需要使用替代符号
&    &amp;
<    &lt;
>    &gt;
"    &quot;
'     &apos;
7、处理指令:PI
作用:用来指挥软件如何解析XML文档。
语法:<?开头 ?>结尾
常用的指令:xml-stylesheet引入样式
例:<?xml-stylesheet type="text/css"?>

三、约束DTD
      1、 约束其实就是规定了XML中能出现的元素、属性个数及顺序等内容
      2、格式良好的XML文档:遵循XML语法的XML文档
      3、有效的XML文档:遵循约束的XML文档
      4、有效的XML文档必定是格式良好的,但格式良好的并不一定是有效的。

DTD:Document Type Definition文档类型定义
作用:约束XML编写

DTD文件保存到磁盘上时必须使用utf-8
 
1、编写DTD的方式
      a、直接在XML文档中编写(没有编码要求)
      语法:
            <!DOCTYPE 根元素名称[
                //DTD定义
            ]>
     b、在单独的文件中编写(文件的扩展名是dtd,且保存时必须使用utf-8编码)
       引入外部定义的DTD文档:
         1、 DTD文档在本地:
             <!DOCTYPE 根元素名称 SYSTEM "DTD文档的存放路径">
         2、 DTD文档在公共网络上:
            <!DOCTYPE 根元素名称 PUBLIC "DTD名称" "DTD的URL">
2、DTD语法细节(能看懂DTD)
     *a、定义元素
语法:<!ELEMENT 元素名称 使用规则>

     使用规则:
  1. (#PCDATA):Parsed Character Data 表明该元素的主体内容是普通字符串
  2. EMPTY:表明该元素是空元素
  3. ANY:用于指示元素的主体内容为任意类型。
  4. (子元素):指示该元素有哪些孩子,如果子元素用逗号分开,说明必须按照声明顺序去编写XML文档,如果子元素用“|”分开,说明任选其一
  5. 可以使用*、?、+说明元素出现的次数
*:0次或一次或多次
?:0次或一次
+:至少一次
什么都没有:有且必须一次

*b、定义属性
语法:
1、<!ATTLIST 元素名称
属性名1 属性值类型 设置说明 
属性名2 属性值类型 设置说明>
2、属性值类型:
CDATA:取值是普通字符数据
ENUMERATED (DTD没有此关键字):表示枚举,只能从枚举列表中任选其一,如(鸡肉|牛肉|猪肉|鱼肉)
ID:表示属性的取值不能重复
3、设置说明:
#REQUIRED:该属性是必须的
#IMPLIED:可选的属性
#FIXED:属性的取值为一个固定值。  #FIXED "固定值"
直接值:表示属性的取值为该默认值



c、定义实体(了解)
1、引用实体:
特点:在DTD中定义实体,在XML中使用
语法:<!ENTITY 实体名称 "内容">
在XML中如何引用实体:
&实体名称;
2、参数实体:
特点:在DTD中定义实体,在DTD中使用
语法:<!ENTITY % 实体名称 "内容">
在DTD中如何使用:
%实体名称;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值