一、什么是XML语言?

  • XML 指可扩展标记语言(Extensible Markup Language)

    Xml是独立于软件和硬件的信息传输工具

  • XML 是一种很像HTML的标记语言。

    但xml不是html的替代,是对html的补充。

  • XML 的设计宗旨是传输数据,而不是显示数据。

    Xml被设计用来传输和存储数据,主要是数据的内容。

    html被设计用来显示数据,主要是数据的外观。

  • XML 标签没有被预定义。您需要自行定义标签。

    Xml没有预定义标签,我们可以自定义标签,如<to>和<from>标签。

    在html中使用的标签是预定义的,如<p>和<h1>标签。

  • XML 被设计为具有自我描述性。

    没有任何行为的xml,xml是不作为的。

    下面是 John 写给 George 的便签,存储为 XML:

<note>

<to>George</to>

<from>John</from>

<heading>Reminder</heading>

<body>Don't forget the meeting!</body>

</note>

    上面的这条便签具有自我描述性。它拥有标题以及留言,同时包含了发送者和接受者的信息。

但是,这个 XML 文档仍然没有做任何事情。它仅仅是包装在 XML 标签中的纯粹的信息。我们需要编写软件或者程序,才能传送、接收和显示出这个文档。

  • XML 是 W3C 的推荐标准

    可扩展标记语言 (XML) 于 1998 年 2 月 10 日成为 W3C 的推荐标准。

二、XML的语法

1.文档声明,作用:为了声明文档类型

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

Xml是以哪种码表保存的,在xml文档中就应该设置相应的encoding属性,用来通知解析器(浏览器)以相应的编码打开。

2.元素(标签)

  • 所有xml元素都必须有关闭标签

<p>This is another paragraph</p>

注释:您也许已经注意到 XML 声明没有关闭标签。这不是错误。声明不属于XML本身的组成部分。它不是 XML 元素,也不需要关闭标签。

  • Xml必须正确嵌套

<b><i>This text is bold and italic</i></b>

  • Xml文档必须有根元素

XML 文档必须有一个元素是所有其他元素的父元素。该元素称为根元素。

<root>

<child>

<subchild>.....</subchild>

</child>

</root>

  • 实体引用

在 XML 中,有 5 个预定义的实体引用:

&lt;

<

小于

&gt;

>

大于

&amp;

&

和号

&apos;

'

单引号

&quot;

"

引号

  • 在xml中空格和换行会被保留

    在xml文件中的标签里面出现的空格和换行,xml解析程序都会当标签内容处理。

3.属性

  • Xml标签对大小写敏感

标签<Letter>和标签<letter>是不同的。

  • Xml的属性值须加引号

<note date="08/08/2008">

<to>George</to>

<from>John</from>

</note>

  • 我最喜欢的方式

    下面的三个 XML 文档包含完全相同的信息:

    第一个例子中使用了 date 属性:

<note date="08/08/2008">

<to>George</to>

<from>John</from>

<heading>Reminder</heading>

<body>Don't forget the meeting!</body>

</note>

第二个例子中使用了 date 元素:

<note>

<date>08/08/2008</date>

<to>George</to>

<from>John</from>

<heading>Reminder</heading>

<body>Don't forget the meeting!</body>

</note>

第三个例子中使用了扩展的 date 元素(这是我的最爱):

<note>

<date>

<day>08</day>

<month>08</month>

<year>2008</year>

</date>

<to>George</to>

<from>John</from>

<heading>Reminder</heading>

<body>Don't forget the meeting!</body>

</note>

在 XML 中,您应该尽量避免使用属性。如果信息感觉起来很像数据,那么请使用子元素吧。

4.xml中的注释

在 XML 中编写注释的语法与 HTML 的语法很相似。

<!-- This is a comment -->

注释不能够在文档声明之前。

5.CDATE区

格式:<![CDATE[内容]]>

字符数据区:希望我们的标签不被解析出来。

6.处理指令:

让解释器如何解析xml文件内容。

XML语言1.简介和语法的更多相关文章

  1. javaweb学习总结七(XML语言作用、语法)

    一:XML语言的概念以及作用 1:xml概念:extensible Markup language,可扩展行标记语言,因为html的语法比较混乱,不够严谨. 用html写的系统不好维护,所以w3c组织 ...

  2. Xml语言

    一.XML是什么?作用是什么? l  XML ( eXtensible Markup Language )语言是一种可扩展的标记语言.其中的可扩展是相对HTML来说的.因为XML标签没有被预定义,需要 ...

  3. XML.01-语法简介

    body,td { font-family: calibri; font-size: 10pt }   XML.01-语法简介 文档声明 元素(标签) 属性 注释 特殊字符 CDATA区域 处理指令 ...

  4. XML语言:可扩展的标记语言;

    作用:1. 解决跨语言的数据交换,C#与Javascript 语言的数据交换:. 2.XML:用于数据的存储以及传输:1.新建方法: 在解决方案资源管理器----选中网站名---右击添加新建项---- ...

  5. 四、XML语言学习(1)

    XML语言 1.XML是什么?XML是指可扩展标记语言XML是指可扩展标记语言(eXtensible Markup Language),它是一种标记语言,很类似HTML.它被设计的宗旨是传输数据,而非 ...

  6. 2.XML语言

    XML语言 常见应用: XML技术除用于 /*保存有关系的数据*/之外,它还经常作软件配置文件,以描述程序模块之间的关系. 在一个系统软件中,为提高系统的灵活性,它所启动的模块通常由其配置文件决定 例 ...

  7. XML代码生成器——XMLFACTORY 简介(四)

    XML代码生成器——XMLFACTORY 简介(四) 这一篇我们讲“类属性”页签的配置功能,您将了解到:如何为元素子值指定类属性的名称,数据类型,及容器类型. 如果,你没看过这个系列的第一篇文章,请先 ...

  8. XML代码生成器——XMLFACTORY 简介(三)

    XML代码生成器——XMLFACTORY 简介(三) 这一篇我们讲“类名称”页签 的配置功能,您将了解到:如何为Xml元素指定对应的类名称及脱壳功能. 如果,你没看过这个系列的第一篇文章,请先去看这篇 ...

  9. XML代码生成器——XMLFACTORY 简介(一)

    XML代码生成器——XMLFACTORY 简介(一) 软件开发中经常要和第三方应用交互数据,特别是在银行.电信行业,这种需求更是必不可少,往往一个系统要和三五个其它系统交互数据,而数据交换的报文经常采 ...

随机推荐

  1. Asp.net Mvc 与WebForm 混合开发

      根据项目实际需求,有时候会想在项目中实现Asp.net Mvc与Webform 混合开发,比如前台框架用MVC,后台框架用WebForm.其实要是实现也很简单,如下: (1)在MVC 中使用Web ...

  2. 【转】Oracle之索引

    简介 1.说明 1)索引是数据库对象之一,用于加快数据的检索,类似于书籍的目录.在数据库中索引可以减少数据库程序查询结果时需要读取的数据量,类似于在书籍中我们利用目录可以不用翻阅整本书即可找到想要的信 ...

  3. vue 双向数据绑定的实现学习(二)- 监听器的实现

    废话:上一篇https://www.cnblogs.com/adouwt/p/9928278.html 提到了vue实现的基本实现原理:Object.defineProperty() -数据劫持 和  ...

  4. MySQL之CONCAT()的用法

    mysql CONCAT()函数用于将多个字符串连接成一个字符串,是最重要的mysql函数之一,下面就将为您详细介绍mysql CONCAT()函数,供您参考 mysql CONCAT(str1,st ...

  5. sublime text3输出窗口中文显示乱码问题解决方案

    1 前言 略 2 方案 修改Python3.sublime-build内容为 { "cmd": ["C:/Users/Administrator/AppData/Loca ...

  6. 提高github代码下载速度的小技巧

    1.打开如下路径: C:\Windows\System32\drivers\etc 2.将此处的HOSTS文件复制到其他地方,比如桌面.(此处大概率是没有编辑权限的) 3.用记事本打开HOSTS文件, ...

  7. openwrt查看flash、RAM、CPU信息

    1.查看Flash容量大小(存储空间,可以理解为电脑的硬盘) root@OpenWrt:/# dmesg |grep spi |grep Kbytes  #查看Flash容量[    0.660000 ...

  8. ASP.NET Core快速入门学习笔记(第3章:依赖注入)

    课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务16:介绍 1.依赖注入概念详解 从UML和软件建模来理解 从单元测试来理 ...

  9. MyBatis异常:元素内容必须由格式正确的字符数据或标记组成

    今天在写接口查询SQL时,报了一个异常,如下: Cause: org.apache.ibatis.builder.BuilderException: Error creating document i ...

  10. 《物联网框架ServerSuperIO教程》- 23.动态数据接口增加缓存,提高数据输出到OPCServer和(实时)数据库的效率

     22.1   概述及要解决的问题 设备驱动有DeviceDynamic接口,可以继承并增加新的实时数据属性,每次通讯完成后更新这些属性数据.原来是通过DeviceDynamic接口实体类反射的方式获 ...