xml学习笔记1--XML语法
来源:互联网 发布:东升博展集团 知乎 编辑:程序博客网 时间:2024/06/05 21:05
XML语法:
一、文档声明
二、元素
三、属性
四、注释
五、CDATA区、特殊字符
六、处理指令(processing instruction)
一、文档声明(没有声明的xml文档成为格式不良好的xml文档)
在编写xml文档时,需要先使用文档声明,声明xml文档的类型。
最简单的声明语法:
<?xml version="1.0"?>
用encoding属性说明文档的字符编码:
<?xml version="1.0" encoding="GB2312"?>(如果有中文一定要声明)
用standalone属性说明文档的是否独立(ie不关注此属性)
<?xml version="1.0" encoding="GB2312" standalone="yes"?>
二、元素 (element)
xml元素指xml文件中出现的标签,一个标签分为开始标签和结束标签,一个标签如下几种书写形式,
例如:
包含标签体:<a>www.baidu.com</a>
不含标签体:<a></a> 简写:<a/>
一个标签中也可以嵌套若干子标签。但是所有标签必须合理嵌套,绝对不允许交叉嵌套,例如:
<a>welcome to <b>www.baidu.com</a></b>
格式良好的xml文档必须有且仅有一个个标签,其他标签都是这个跟标签的子孙标签。
对于xml标签中出现的所有空格和换行,xml解析程序都会当做标签内容进行处理。例如:下面两段内容的意义是不一样的。
第一段: 第二段:
<网址>www.baidu.com<\网址> <网址>
www.baidu.com
<\网址>
由于在xml中,空格和换行都作为原始内容被处理,所以,
在编写xml时,使用换行和缩进等方式来让源文件中的内容
清晰可读的"良好"书写习惯可能被迫改变。
一个xml元素可以包含字母、数字以及其他一些可见字符,但必须遵循下面的一些规范:
(1)区分大小写,例如:<P>和<p>是两个不同的标记
(2)不能以数字和"_"(下划线)开头。
(3)不能以xml(或XML、或Xml等)开头。
(4)不能包含空格
(5)名称中间不能包含冒号(:)。
三、属性
一个标签可以有多个属性,每个属性都有他自己的名称和取值,例如:
<input name="text">
属性值一定要用双引号("")或是单引号(')引起来
定义属性必须遵循与标签相同的命名规范
多学一招:
在xml技术中,标签属性所代表的信息,也可以被改成用子元素的形式来描述,例如
<input>
<name>text</name>
</input>
四、注释
Xml文件中的注释采用<!-- 注释 -->
注意:
xml声明之前不能有注释
注释不能嵌套,例如:
<!-- 大段注释
……
<!--局部注释 -->
……
-->
五.1、CDATA区
(1)在编写xml文件时,有些内容可能不想让解析引擎解析执行
,而是当做原始内容处理。
(2)遇到此种情况,可以把这些内容放在CDATA区里,
对于CDATA区域内的内容,xml解析程序不会处理,
而是直接原封不动的输出。
(3)语法:
<![CDATA[内容]]>
<![CDATA[
<nihao>
<\br>
</nihao>
]]>
五.2、转义字符
对于一些单个字符,若想显示其原始样式,也可以使用转义字符形予以处理。
特殊字符 替代符号
& &
< <
> >
" "
' '
六、处理指令(processing instruction)
简称PI(processing instruction)。处理指令用来指挥解析引擎如何解析xml文档内容。
例如:在xml文档中可以使用xml-stylessheet指定,
通知xml解析引擎,应用css文件显示xml文档内容。
<?xml-stylesheet type="text/css" href="1.css"?>
处理指定必须以<?作为开头,以?>作为结尾,
xml声明语句就是最常见的一种处理指令。
注:使用IE打开xml文档可以使用检测格式是否正常
常见错误:
1.全角符号(比如全角空格)
乱码:
问题:用记事本保存<?xml version="1.0" encoding="UTF-8"?>的xml文档,
用IE打开出现乱码问题。
分析:记事本保存时是按照系统默认的编码方式保存的,中文xp为gb2312,IE按照文档声明的UTF-8打开时出现乱码。
解决:
1.将xml文档说明改成<?xml version="1.0" encoding="GB2312"?>
2.记事本保存时,选择"另存为"指定特殊码表utf-8
3.使用Eclipse随意修改xml的编码方式,不会出现乱码问题,因为它会自动识别编码,保存文件。
- xml学习笔记(1)xml语法
- xml学习笔记1--XML语法
- XML语法---学习笔记
- java学习【2】xml语法笔记【1】
- Xml学习笔记(一):xml语法格式
- xml学习笔记—语法
- Chap 5 学习笔记-XML语法介绍
- XML学习笔记(一)---概述及语法
- JavaWeb学习笔记(四)---XML技术之XML语法
- XML学习笔记(一):XML基础及语法
- XML学习笔记 -- day01 XML语法和约束
- XML学习02-XML语法
- xml语法笔记
- xml学习笔记---1
- XML学习笔记1
- XML学习笔记(1)
- XML学习笔记1
- XML语法学习
- POJ 2482 线段树 扫描线
- 来去匆匆的你别忘记在互联网世界里留下你的印记
- 搞笑的10T微云
- 哈希表
- Social Psychology -exam
- xml学习笔记1--XML语法
- VC++程序常见错误 提示(3)---gyy整理
- ETL----源业务系统数据库跟踪报告
- numeric_limits::max()和windows.h冲突的解决方法
- 多媒体开发——闹钟与铃声设置
- 窗口 暂时出现——消失
- UVa 10664 Luggage (0-1背包)
- 设计模式总结
- Ubuntu Linux 3D桌面完全教程,显卡驱动安装方法,compiz特效介绍,常见问题解答