XML基本概念入门学习指南

简介: XML(eXtensible Markup Language)是一种可扩展的标记语言,和HTML语言语法类似,同属于标记语言。

一、XML与HTML

XML(eXtensible Markup Language)是一种可扩展的标记语言,和HTML语言语法类似,同属于标记语言。那到底如何区分它们呢?

1、设计区别
XML被设计为传输和保存数据,其焦点是数据的内容。而HTML被设计用来显示数据,其焦点是数据的外观。可以说HTML旨在显示信息,XML旨在传输信息。

2、语法区别
(1)HTML的格式多样,其中有些标记可以不成对出现,XML要求所有的标记都必须成对出现;
(2)HTML的标签是固定的样式有限,XML可以进行任何扩展,标签类型可以自己定义;
(3)HTML可以有多个标记头,XML只允许有一个标记头;
(4)HTML标记不区分大小写,XML区分大小写。

二、XML详解

曾记否在开发系统时使用的系统配置文档,是的它就是xml文档。作为系统的配置文件是xml的主要应用,同时它也可以用在Ajax或Web Services中传输数据。
1、XML历史

在详细了解XML基本用法前,我们先来看看标记语言的发展历史。
XML的前身是SGML(The Standard Generalized Markup Language),它同时也是在HTML的基础上优化得到的。SGML是GML整理规范后的一种标准,但是SGML是一种非常严谨的文本描述法,过于庞大复杂,难以理解。同时W3C(万维网联盟)也发现了HTML的问题,如:不能解释类似影音文件、化学公式等其它形式的内容,且性能较差不易于扩展、弹性差等问题。为了解决上述问题,专家们使用SGML简易制作,并依照HTML的发展经验开发了XML。
2、XML用法

先看一个XML实例
image.png
2.1 声明

格式良好的XML文件,要以XML声明开始,即上面示例中的<?xml version="1.0" encoding="utf-8"?>,它提供了关于文档的基本信息。其中encoding表示XML文件呢使用的字符编码方式,要保存的XML文档编码格式必须是encoding属性值。

2.2 元素

元素是开始标签、结束标签及两者之间的所有内容。
和HTML基本组成相同,XML也是有基本的标签构成,其中标签的格式和HTML标签相同,不同的是XML标签有开始标签就必须要有结束标签,而且严格区分大小写。它允许标签格式嵌套,但必须正确嵌套。
XML结构上是一种树状结构,它的内容必须只有一个根元素,其它的元素必须嵌套在根元素内。如:上例中的即为根元素。

2.3实体引用

实体引用即使用特定的格式在XML文档中打印出一些特殊的符号,类似于下面要说的CDATA中的文本。
image.png
2.5 杂烩

(1)XML文档用图整理出来其实是一种树状结构,在显示时常使用IE打开;
(2)XML标签中属性的值必须使用引号括起来(单引号或双引号,但必须保证一致);
(3)在含有复杂内结构的XML文档中可以使用xsl格式美化xml的显示,格式:<?xml-stylesheet type='text/xsl' href='需要转换的XML文档名称.xsl'?>。

三、注意

1、要有声明:<?xml version="" encoding=""?>;
2、在保存时要根据encoding中的编码类型保存成相应的类型,在保存时别忘记选择保存类型;
3、只有一个顶元素;
4、大小写敏感;
5、属性的值必须使用引号括起来(单引号或双引号);
6、要有始有终;
7、嵌套形式要正确。

上面对XML的基本应用进行了讨论,XML很简单吧。是不是XML就这些内容了呢?当然不是,从它的基本名字中可以看出它也是一种编程语言,那就应该具有编程语言的一些特性,如一些语言中的模板或者Java中的API。是的,XML也可以定义自己的语法结构,可以向编程语言一样编写模板函数,只是在XML中它叫做合法的XML,即是大家所说的经DTD或Schema验证的合法的XML。

相关文章
|
6月前
|
XML SQL 数据处理
学习 XQuery:XML数据查询的关键
XQuery是用于查询XML数据的语言,类似SQL对数据库的操作。它基于XPath构建,用于从XML文档中提取和排序元素。FLWOR表达式(For, Let, Where, Order by, Return)是其核心,用于处理和过滤数据。例如,示例代码展示了如何选取&quot;books.xml&quot;中价格大于30的书籍并按标题排序。XQuery还可用于Web服务、生成报告、XML到XHTML转换及搜索文档等场景。了解XPath能帮助更好地掌握XQuery,两者有相似的数据模型和函数。
102 0
|
6月前
|
XML 存储 JSON
Python学习 -- 常用数据交换格式(CSV、XML、JSON)
Python学习 -- 常用数据交换格式(CSV、XML、JSON)
88 0
|
XML 存储 JSON
Python学习 -- 常用数据交换格式(CSV、XML、JSON)
Python学习 -- 常用数据交换格式(CSV、XML、JSON)
105 0
|
6月前
|
XML Java Maven
第1次Spring源码学习之@Bean、@Configuration、xml、分析
第1次Spring源码学习之@Bean、@Configuration、xml、分析
67 0
|
2月前
|
XML 存储 JSON
Twaver-HTML5基础学习(19)数据容器(2)_数据序列化_XML、Json
本文介绍了Twaver HTML5中的数据序列化,包括XML和JSON格式的序列化与反序列化方法。文章通过示例代码展示了如何将DataBox中的数据序列化为XML和JSON字符串,以及如何从这些字符串中反序列化数据,重建DataBox中的对象。此外,还提到了用户自定义属性的序列化注册方法。
45 1
|
3月前
|
XML Java 数据格式
Spring5入门到实战------7、IOC容器-Bean管理XML方式(外部属性文件)
这篇文章是Spring5框架的实战教程,主要介绍了如何在Spring的IOC容器中通过XML配置方式使用外部属性文件来管理Bean,特别是数据库连接池的配置。文章详细讲解了创建属性文件、引入属性文件到Spring配置、以及如何使用属性占位符来引用属性文件中的值。
Spring5入门到实战------7、IOC容器-Bean管理XML方式(外部属性文件)
|
5月前
|
XML Java 数据格式
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
Spring5系列学习文章分享---第一篇(概述+特点+IOC原理+IOC并操作之bean的XML管理操作)
46 1
|
5月前
|
XML Java 数据库连接
MyBatis入门——MyBatis XML配置文件(3)
MyBatis入门——MyBatis XML配置文件(3)
71 6
|
1月前
|
XML Java 应用服务中间件
tomcat学习一:tomcat 目录及配置文件学习 server.xml 等
这篇文章是关于Apache Tomcat服务器的目录结构、配置文件(特别是server.xml)的详细介绍和学习指南。
57 0
tomcat学习一:tomcat 目录及配置文件学习 server.xml 等
|
3月前
|
XML Java 数据格式
Spring5入门到实战------11、使用XML方式实现AOP切面编程。具体代码+讲解
这篇文章是Spring5框架的AOP切面编程教程,通过XML配置方式,详细讲解了如何创建被增强类和增强类,如何在Spring配置文件中定义切入点和切面,以及如何将增强逻辑应用到具体方法上。文章通过具体的代码示例和测试结果,展示了使用XML配置实现AOP的过程,并强调了虽然注解开发更为便捷,但掌握XML配置也是非常重要的。
Spring5入门到实战------11、使用XML方式实现AOP切面编程。具体代码+讲解