XML的语法规则既简单又严格,非常容易学习和使用。
正因为如此,编写读取和操作XML的软件也是相对容易的事情。
--------------------------------------------------------------------------------
一个XML文档的例子
XML文档使用了自描述的和简单的语法。
<?xml version="1.0" encoding="ISO-8859-1"?> <note> <to>Lin</to> <from>Ordm</from> <heading>Reminder</heading> <body>Don'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'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中, 标记f8ed5fdd9e04cae1b683dd2635e1e6f2与标记fabba62f13d4f8f2d3adb807e335e152是两个不同的标记。
因此在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'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中文网其他相关文章!

如何用PHP和XML实现网站的分页和导航导言:在开发一个网站时,分页和导航功能是很常见的需求。本文将介绍如何使用PHP和XML来实现网站的分页和导航功能。我们会先讨论分页的实现,然后再介绍导航的实现。一、分页的实现准备工作在开始实现分页之前,需要准备一个XML文件,用来存储网站的内容。XML文件的结构如下:<articles><art

一、XML外部实体注入XML外部实体注入漏洞也就是我们常说的XXE漏洞。XML作为一种使用较为广泛的数据传输格式,很多应用程序都包含有处理xml数据的代码,默认情况下,许多过时的或配置不当的XML处理器都会对外部实体进行引用。如果攻击者可以上传XML文档或者在XML文档中添加恶意内容,通过易受攻击的代码、依赖项或集成,就能够攻击包含缺陷的XML处理器。XXE漏洞的出现和开发语言无关,只要是应用程序中对xml数据做了解析,而这些数据又受用户控制,那么应用程序都可能受到XXE攻击。本篇文章以java

当我们处理数据时经常会遇到将XML格式转换为JSON格式的需求。PHP有许多内置函数可以帮助我们执行这个操作。在本文中,我们将讨论将XML格式转换为JSON格式的不同方法。

Pythonxmltodict对xml的操作xmltodict是另一个简易的库,它致力于将XML变得像JSON.下面是一个简单的示例XML文件:elementsmoreelementselementaswell这是第三方包,在处理前先用pip来安装pipinstallxmltodict可以像下面这样访问里面的元素,属性及值:importxmltodictwithopen("test.xml")asfd:#将XML文件装载到dict里面doc=xmltodict.parse(f

xml中node和element的区别是:Element是元素,是一个小范围的定义,是数据的组成部分之一,必须是包含完整信息的结点才是元素;而Node是节点,是相对于TREE数据结构而言的,一个结点不一定是一个元素,一个元素一定是一个结点。

使用nmap-converter将nmap扫描结果XML转化为XLS实战1、前言作为网络安全从业人员,有时候需要使用端口扫描利器nmap进行大批量端口扫描,但Nmap的输出结果为.nmap、.xml和.gnmap三种格式,还有夹杂很多不需要的信息,处理起来十分不方便,而将输出结果转换为Excel表格,方面处理后期输出。因此,有技术大牛分享了将nmap报告转换为XLS的Python脚本。2、nmap-converter1)项目地址:https://github.com/mrschyte/nmap-

1.在Python中XML文件的编码问题1.Python使用的xml.etree.ElementTree库只支持解析和生成标准的UTF-8格式的编码2.常见GBK或GB2312等中文编码的XML文件,用以在老旧系统中保证XML对中文字符的记录能力3.XML文件开头有标识头,标识头指定了程序处理XML时应该使用的编码4.要修改编码,不仅要修改文件整体的编码,还要将标识头中encoding部分的值修改2.处理PythonXML文件的思路1.读取&解码:使用二进制模式读取XML文件,将文件变为

Scrapy是一款强大的Python爬虫框架,可以帮助我们快速、灵活地获取互联网上的数据。在实际爬取过程中,我们会经常遇到HTML、XML、JSON等各种数据格式。在这篇文章中,我们将介绍如何使用Scrapy分别爬取这三种数据格式的方法。一、爬取HTML数据创建Scrapy项目首先,我们需要创建一个Scrapy项目。打开命令行,输入以下命令:scrapys


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

Atom编辑器mac版下载
最流行的的开源编辑器

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

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能