首页 后端开发 XML/RSS教程 详细介绍xml的语法的使用和学习

详细介绍xml的语法的使用和学习

Mar 30, 2017 pm 01:46 PM

XML的语法规则既简单又严格,非常容易学习和使用。

正因为如此,编写读取和操作XML的软件也是相对容易的事情。

--------------------------------------------------------------------------------

一个XML文档的例子
XML文档使用了自描述的和简单的语法。

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>Lin</to>
<from>Ordm</from>
<heading>Reminder</heading>
<body>Don&#39;t forget me this weekend!</body>
</note>
登录后复制

文档的第1行:XML声明——定义此文档所遵循的XML标准的版本,在这个例子里是1.0版本的标准,使用的是ISO-8859-1 (Latin-1/West European)字符集

文档的第2行是根元素(就象是说“这篇文档是一个便条”):

<note>
登录后复制

文档的第3--6行描述了根元素的四个子节点(to, from, heading,和 body):

<to>Lin</to>
<from>Ordm</from>
<heading>Reminder</heading>
<body>Don&#39;t forget me this weekend!</body>
登录后复制

文档的最后一行是根元素的结束:

</note>
登录后复制

你能从这个文档中看出这是Ordm给Lin留的便条么?难道能不承认XML是一种美丽的自描述语言么?

--------------------------------------------------------------------------------

所有的XML文档必须有一个结束标记
在XML文档中, 忽略结束标记是不符合规定的。

HTML文档中,一些元素可以是没有结束标记的。下面的代码在HTML中是完全合法的:

<p>This is a paragraph
<p>This is another paragraph
登录后复制

但是在XML文档中必须要有结束标记,象下面的例子一样:

<p>This is a paragraph</p>
<p>This is another paragraph</p>
登录后复制

注意: 你可能已经注意到了,上面例子中的第一行并没有结束标记。这不是一个错误。因为XML声明并不是XML文档的一部分,他不是XML元素,也就不应该有结束标记。

--------------------------------------------------------------------------------

XML标记都是大小写敏感的
这与HTML不一样, XML标记是大小写敏感的。

在XML中, 标记与标记是两个不同的标记。

因此在XML文档中开始标记和结束标记的大小写必须保持一致。

<Message>This is incorrect</message>   //错误的
<message>This is correct</message>     //正确的
登录后复制

--------------------------------------------------------------------------------

所有的XML元素必须合理包含
在XML中不允许不正确的嵌套包含。

在HTML中,允许有一些不正确的包含,例如下面的代码可以被浏览器解析:

<b><i>This text is bold and italic</b></i>
登录后复制

在XML中所有元素必须正确的嵌套包含,上面的代码应该这样写:

<b><i>This text is bold and italic</i></b>
登录后复制

--------------------------------------------------------------------------------

所有的XML文档必须有一个根元素
XML文档中的第一个元素就是根元素。

所有XML文档都必须包含一个单独的标记来定义,所有其他元素的都必须成对的在根元素中嵌套。XML文档有且只能有一个根元素。

所有的元素都可以有子元素,子元素必须正确的嵌套在父元素中,下面的代码可以形象的说明:

<root>
<child>
<subchild>.....</subchild>
</child>
</root>
登录后复制

--------------------------------------------------------------------------------

属性值必须使用引号""
在XML中,元素的属性值没有引号引着是不符合规定的。

如同HTML一样,XML元素同样也可以拥有属性。XML元素的属性以名字/值成对的出现。XML语法规范要求XML元素属性值必须用引号引着。请看下面的两个例子,第一个是错误的,第二个是正确的。



<to>Lin</to>
<from>Ordm</from>
<heading>Reminder</heading>
<body>Don&#39;t forget me this weekend!</body>
</note>
登录后复制


Tove
Jani
Reminder
Don't forget me this weekend!
</note>
登录后复制

第一个文档的错误之处是属性值没有用引号引着。
正确的写法是: date="12/11/99". 不正确的写法: date=12/11/99.

--------------------------------------------------------------------------------

使用XML,空白将被保留
在XML文档中,空白部分不会被解析器自动删除

这一点与HTML是不同的。在HTML中,这样的一句话:

"Hello              my name is Ordm"
登录后复制

将会被显示成:

“Hello my name is Ordm”,
登录后复制

因为HTML解析器会自动把句子中的空白部分去掉。

--------------------------------------------------------------------------------

使用XML, CR / LF 被转换为 LF
使用 XML, 新行总是被标识为 LF(Line Feed,换行)。

以上是详细介绍xml的语法的使用和学习的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1677
14
CakePHP 教程
1431
52
Laravel 教程
1334
25
PHP教程
1280
29
C# 教程
1257
24
能否用PowerPoint打开XML文件 能否用PowerPoint打开XML文件 Feb 19, 2024 pm 09:06 PM

XML文件可以用PPT打开吗?XML,即可扩展标记语言(ExtensibleMarkupLanguage),是一种被广泛应用于数据交换和数据存储的通用标记语言。与HTML相比,XML更加灵活,能够定义自己的标签和数据结构,使得数据的存储和交换更加方便和统一。而PPT,即PowerPoint,是微软公司开发的一种用于创建演示文稿的软件。它提供了图文并茂的方

C#开发中如何处理XML和JSON数据格式 C#开发中如何处理XML和JSON数据格式 Oct 09, 2023 pm 06:15 PM

C#开发中如何处理XML和JSON数据格式,需要具体代码示例在现代软件开发中,XML和JSON是广泛应用的两种数据格式。XML(可扩展标记语言)是一种用于存储和传输数据的标记语言,而JSON(JavaScript对象表示)是一种轻量级的数据交换格式。在C#开发中,我们经常需要处理和操作XML和JSON数据,本文将重点介绍如何使用C#处理这两种数据格式,并附上

您如何在PHP中解析和处理HTML/XML? 您如何在PHP中解析和处理HTML/XML? Feb 07, 2025 am 11:57 AM

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储

如何使用 PHP 函数处理 XML 数据? 如何使用 PHP 函数处理 XML 数据? May 05, 2024 am 09:15 AM

使用PHPXML函数处理XML数据:解析XML数据:simplexml_load_file()和simplexml_load_string()加载XML文件或字符串。访问XML数据:利用SimpleXML对象的属性和方法获取元素名称、属性值和子元素。修改XML数据:使用addChild()和addAttribute()方法添加新元素和属性。序列化XML数据:asXML()方法将SimpleXML对象转换为XML字符串。实战案例:解析产品馈送XML,提取产品信息,转换并将其存储到数据库中。

lambda 表达式的语法和结构有什么特点? lambda 表达式的语法和结构有什么特点? Apr 25, 2024 pm 01:12 PM

Lambda表达式是无名称的匿名函数,其语法为:(parameter_list)->expression。它们具有匿名性、多样性、柯里化和闭包等特点。实际应用中,Lambda表达式可用于简洁地定义函数,如求和函数sum_lambda=lambdax,y:x+y,并通过map()函数应用于列表来进行求和操作。

在Java中使用Jackson库将POJO转换为XML? 在Java中使用Jackson库将POJO转换为XML? Sep 18, 2023 pm 02:21 PM

Jackson是一个基于Java的库,它对于将Java对象转换为JSON以及将JSON转换为Java对象非常有用。JacksonAPI比其他API更快,需要更少的内存区域,并且适合大型对象。我们使用XmlMapper类的writeValueAsString()方法将POJO转换为XML格式,并且需要将相应的POJO实例作为参数传递给此方法。语法publicStringwriteValueAsString(Objectvalue)throwsJsonProcessingException示例imp

XML 解析的 Java 库对比:寻找最佳解决方案 XML 解析的 Java 库对比:寻找最佳解决方案 Mar 09, 2024 am 09:10 AM

简介XML(可扩展标记语言)是一种用于存储和传输数据的流行格式。在Java中解析XML是许多应用程序的一个必要任务,从数据交换到文档处理。为了有效地解析XML,开发人员可以使用各种Java库。本文将比较一些最流行的XML解析库,重点关注它们的特性、功能和性能,以帮助开发人员做出明智的选择。DOM(文档对象模型)解析库JavaXMLDOMAPI:由oracle提供的标准DOM实现。它提供了一个对象模型,允许开发人员访问和操作XML文档。DocumentBuilderFactoryfactory=D

PHP中的HTML/XML解析器简介和用法 PHP中的HTML/XML解析器简介和用法 Sep 10, 2023 pm 08:49 PM

PHP中的HTML/XML解析器简介和用法引言在开发Web应用程序时,经常需要处理HTML或XML文档。PHP作为一种流行的服务器端脚本语言,提供了强大的HTML/XML解析器,使处理这些文档变得更加简单和高效。本文将介绍PHP中常用的HTML/XML解析器及其用法。PHP中的HTML解析器:DOMDocumentDOMDocument是PHP的一个内置类,

See all articles