目录
1、XML概念
定义:XML为可扩展标记性语言。
作用:
1、保存具有自我描述性的数据。
2、为项目或模块配置文件。
3、作为网络传输数据格式。
现阶段XML使用的地方较多,轻量级数据传输会用到JSON,XML是为了替代HTML被提出来的,因为语法比较严格。
以下例子为XML存储书籍,首先新建标签books(复数),内部采用book标签进行每一本书的存储。
2、XML语法
2.1文档声明
<?xml version="1.0" encoding="utf-8" ?>
<!-- xml声明 version是版本的意思 encoding是编码 -->
2.2元素(标签)
XML元素是指从(且包括)开始标签到(包括)结束标签的部分,元素可以包括其它元素、文本混合物。元素也可以拥有属性。
<books> <!-- 这是xml注释 -->
<book id="SN123123413241"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>人工智能</name> <!-- name标签描述 的是图书 的信息 -->
<author>斯蒂芬孙</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>9.9</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
<book id="SN12341235123"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>Java编程</name> <!-- name标签描述 的是图书 的信息 -->
<author>新海诚</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>99</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
</books>
2.3XML命名规则
2.3.1命名要求
名称可以含有字母、数字以及其它字符
例如:
<book id="SN15151545454">
<author>作者</author>
<name>安徒生的童话</name>
<price>939</price>
</book>
名称不能以数字或者标点符号开始或包含空格。
错误示范:
以数字或者标点符号开头:
<books> <!-- 这是xml注释 -->
<121book id="SN123123413241"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>人工智能</name> <!-- name标签描述 的是图书 的信息 -->
<author>斯蒂芬孙</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>9.9</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
<book id="SN12341235123"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>Java编程</name> <!-- name标签描述 的是图书 的信息 -->
<author>新海诚</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>99</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
</books>
不能空格开头或有空格:
<bo oks> <!-- 这是xml注释 -->
<121book id="SN123123413241"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>人工智能</name> <!-- name标签描述 的是图书 的信息 -->
<author>斯蒂芬孙</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>9.9</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
<book id="SN12341235123"> <!-- book标签描述一本图书 id属性描述 的是图书 的编号 -->
<name>Java编程</name> <!-- name标签描述 的是图书 的信息 -->
<author>新海诚</author> <!-- author单词是作者的意思 ,描述图书作者 -->
<price>99</price> <!-- price单词是价格,描述的是图书 的价格 -->
</book>
</bo oks>
对大小写很敏感,格式要求比较规范。
错误示范:
<books>
·········<错误写法>
</BOOKS>
2.3.2格式要求
所有XML元素必须含有关闭标签。
<books>
标签必须正确嵌套。
<books>
<book>
·········<错误写法>
</BOOKS></book>
必须具有根元素。
根元素是顶级元素,根元素是没有父标签的顶级元素。
<books>
·········<错误写法>
</books>
</mybooks>
2.4文本区域(CDATA区)
遇到不需要XML解析的纯文本内容可以使用CDATA格式。
<![CDATA[这里属于原始文字]]>
2.4.1单标签和双标签
双标签在内部添加元素:
<book id="SN15151545454">
<author>作者</author>
<name>安徒生的童话</name>
<price>939</price>
</book>
单标签整合为一条XML标签:
<book id="SN15151545454" name = "安徒生童话"/>
2.4.2特殊符号
比如要在Markdown或者XML中写小于号<和大于号>。使用<
表示<。使用>
表示>,注意要切换到英文输入法。
<test>
<spe><书籍></spe>
</test>
在实际中显示为大于号和小于号。
3、XML属性
属性必须用引号表示,否则会报错。属性为元素中的内容,元素是一条标签。