XML(可扩展标记语言)

XML的特点:

XML是一种标记语言,适合跨平台、跨语种信息交互
XML被用于存储、传输数据
XML可扩展性良好,没有预定义标签,需要用户自定义标签
XML具有自我描述性
XML采用树状结构存储,是一种信息的对象化语言
XML是纯文本的

XML常用场景:

数据交换
数据库支持
配置文件

XML语法:

示例:

<?xml version="1.0" encoding="utf-8">
<!-- 学生信息 -->
<student>
<name>Halen</name>
<hometown>unknown</hometown>
<age>ninteen</age>
</student>

语法规则:

XML文档第一行必须以文档的声明语句开头:
 <?xml version="1.0" encoding="utf-8">
 version表示XML版本信息
 encoding表示文档采用的编码格式

XML注释:

写法:<!-- 注释内容 -->

XML元素:

<name>Halen</name> 
元素定义:<开始标记 属性1="属性值"...>数据内容</结束标记>
XML元素内可以嵌套其他元素,但嵌套元素的标记不能重叠
    <student><name></student></name> (错误)
XML文档至少有一个元素,有且只有一个根元素

元素名规则:

不能以数字或标点符号开头且不能含空格,对大小写敏感
名称不能以xml(XML、XmL...)开头

空元素写法:

<name></name>
<name/>  (常用)

XML属性:

<student id="001" name="halen">unknown</student>
XML元素属性定义:<开始标记 属性1="属性值"...>数据内容</结束标记>
属性名规则与元素名规则一致
XML属性值必须加引号,如果属性值内容出现单引号,则用双引号括起来,反之亦然

使用属性的缺点:

属性不易扩展
属性不能描述结构(树状结构)
属性很难被程序代码处理
属性很难通过DTD进行测试
属性难以阅读、维护

注意:

<student>
<name>Halen</name>
<age>five</age>
</student> <student name="Halen" age="five"></student>
元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素

实体引用:

在XML中有些符号具有特殊含义,如:< 若果将这些符号放在XML元素中会出现错误
为了避免此错误,可以采用实体引用

XML中的预定义实体引用:

&lt;   < 小于
&gt;   > 大于
&amp;  & 和号
&apos; ' 单引号
&quot; " 引号
示例:<name>HK'KK</name>  -->  <name>HK&apos;KK</name>

CDATA区段:

包含在CDATA区段中的内容能够当做纯文本数据进行处理,解析器不会解析CDATA区段
中的任何符号和标记
定义格式:
<![CDATA[数据内容]]>
注意:CDATA区段要放在元素中使用,且不能嵌套
 

补充:
XML编辑器:文本编辑器或专门的XML阅读编辑工具
XML解析器:根据XML语法规则,检查XML文档的规范性及有效性

XML语法笔记的更多相关文章

  1. XML学习笔记

    XML学习笔记 第一部分:XML简介 我们经常可以听到XML.HTML.XHTML这些语言,后两者比较清楚,一直不是很明白XML是什么,这里做一个总结. XML(eXtensible Markup L ...

  2. day0203 XML 学习笔记

    day02, 03 1. xml语言和作用 2. xml语法详解 2.1 xml 语法声明 2.1.1 encoding 属性 2.1.2 standalone 属性 2.2 xml 元素(Eleme ...

  3. delphi操作xml学习笔记 之一 入门必读

    Delphi 对XML的支持---TXMLDocument类       Delphi7 支持对XML文档的操作,可以通过TXMLDocument类来实现对XML文档的读写.可以利用TXMLDocum ...

  4. SQL基础语法笔记教程整理

    PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...

  5. mybatis-config.xml简单笔记

    mybatis-config.xml简单笔记 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ...

  6. applicationContext.xml简单笔记

    applicationContext.xml简单笔记 <?xml version="1.0" encoding="UTF-8"?> <bean ...

  7. xml语法、DTD约束xml、Schema约束xml、DOM解析xml

    今日大纲 1.什么是xml.xml的作用 2.xml的语法 3.DTD约束xml 4.Schema约束xml 5.DOM解析xml 1.什么是xml.xml的作用 1.1.xml介绍 在前面学习的ht ...

  8. 【风马一族_xml】xml语法

    xml语法 文档声明 用来声明xml的属性,用来指挥解析引擎如何去解析当前xml 通常一个xml都要包含并且只能包含一个文档声明 xml的文档必须在整个xml的最前面,在文档声明之前不能有任何内容 & ...

  9. XML学习笔记(1)--XML概述

    XML基本概念 XML—extensible Markup Language(可扩展标记语言) XML最基本的三个概念 1)XML语言---描述事物本身(可扩展) 2)XSL语言---展现事物表现形式 ...

随机推荐

  1. js中取绝对值的2种方法!

    1.abs() var aaa=-20; var bbb=Math.abs(aaa); 2.加减法 var aaa=-20; var bbb=-aaa

  2. OSPF 一 基础

    本节介绍ospf路由选择协议    为链路状态  路由选择协议 一  分类 open shortest path first   开放最短路优先   公有协议 单区域的ospf实施  运行在一个自治系 ...

  3. Leetcode 394.字符串编码

    字符串编码 给定一个经过编码的字符串,返回它解码后的字符串. 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次.注意 k 保证为正 ...

  4. .NET重构(三):在注册和充值中,触发器的使用

    导读:机房做到注册和充值了,有两个关键点:在注册的时候,同时给该用户写入充值记录:在充值的时候,给该用户更改余额信息.第一次做的时候,是一条一条的写,那时候师傅就说了触发器和存储过程的使用,现在终于用 ...

  5. C# 方法冒号this的用法

    public Class1(string host, int port, string password = null):this() { this.Host=host; this.Port=port ...

  6. MySQL5.7 服务 crash 后无法启动

    事发背景 测试环境更换数据盘,直接采取在线将数据目录暴力拷贝到新盘,然后将原服务关闭,启用新盘. 服务是可以正常启动的,但是没多会开发就反应服务down了,错误日志输出 -- :: InnoDB: F ...

  7. 【Luogu】P3052摩天大楼里的奶牛(状压DP)

    参见ZHT467的题解. f[i]表示在i这个集合下的最少分组数和当前组最少的容量. 从1到(1<<n)-1枚举i,对于每个i枚举它的子奶牛,然后重载运算符计算. 代码如下 #includ ...

  8. BZOJ 1007 [HNOI2008]水平可见直线 ——半平面交 凸包

    发现需要求一个下凸的半平面上有几个交点. 然后我们把它变成凸包的问题. 好写.好调.还没有精度误差. #include <map> #include <ctime> #incl ...

  9. HDU 3949 XOR ——线形基 高斯消元

    [题目分析] 异或空间的K小值. 高斯消元和动态维护线形基两种方法都试了试. 动态维护更好些,也更快(QAQ,我要高斯消元有何用) 高斯消元可以用来开拓视野. 注意0和-1的情况 [代码] 高斯消元 ...

  10. Spring-IOC源码解读3-依赖注入

    当容器已经载入了BeanDefinition的信息完成了初始化,我们继续分析依赖注入的原理,需要注意的是依赖注入是用户第一次向IOC容器获取Bean的时候发生的,这里有个例外,那就是如果用户在Bean ...