首页 后端开发 XML/RSS教程 XML标记语言的基本概念及语法的入门教程介绍(图)

XML标记语言的基本概念及语法的入门教程介绍(图)

Mar 10, 2017 pm 08:04 PM
xml 入门 语法

这篇文章主要介绍了XML标记语言的基本概念及语法入门教程,XML同时也被广泛用作标记数据来作为XML数据交换格式,需要的朋友可以参考下


XML 表示可扩展标记语言。它是一种基于文本的标记语言,源自标准通用标记语言(SGML)。

XML 标签标识数据以及用于存储和组织数据,而不是指定如何显示它,像 HTML 一样用于显示数据。不久的将来 XML 并不会取代 HTML,但是它通过采用许多 HTML 中成功的特性引入了可能性。

这里有 XML 的三个重要特点,这使得它对各种各样的系统和解决方案都有用:

XML 是可扩展:XML 允许我们创建自己的适合应用程序的自描述标签或者语言。
XML 承载数据,但不呈现它:XML 允许我们存储数据,不管它会如何呈现。
XML 是一个公共标准:XML 有叫做万维网联盟(W3C)的组织开发,并且它可以作为一个开放标准。


XML 的用途
这个 XML 用途的简短列表说明了一切:

XML 可以在幕后工作以简化为大型网站创建 HTML 文档。
XML 可以用来在组织和系统之间交换信息。
XML 可以用来卸载和重新加载数据库。
XML 可以用来存储和整理数据,还可以自定义数据处理需求。
XML 很容易合并样式表创建几乎任何想要的输出。
实际上,任何类型的数据都可以被表示为 XML 文档。


什么是标记?
XML 是一种标记语言,它定义了一组按照人类可读和机器可读的格式编码文档的规则。那么究竟什么是标记语言? 标记就是添加给文档以某种方式改善其意义的信息,它标识部分以及彼此之间如何关联。更具体来说,标记语言就是一组符号,它可以放置到文档的文本中划分和标记文档的某些部分。

下面这个例子展示了嵌入一块文本的 XML 标记看起来是什么样子:

<message>
    <text>Hello, world!</text>
</message>
登录后复制

这个片段包含标记符号或者说是标签,比如 ...... 。标签 表示这个 XML 代码片段的开始和结束。标签 包裹着文本 Hello world!。

XML 是编程语言吗?
一门用于创建计算机程序的编程语言由语法规则和它自己的词汇表组成。这些程序指示计算机执行特定的任务。XML 并不具备成为一种编程语言的资格,因为它不执行任何计算或者算法。它通常存储在简单的文本文件中,并通过能够解释 XML 的特殊软件处理。

XML 语法
下面是一个完整的 XML 文档:

<?xml version="1.0"?>
<concat-info>
<name>Tanmay Patil</name>
<company>TutorialsPoint</company>
<phone>(011) 123-4567</phone>
</concat-info>
登录后复制

你可以注意到上面的例子中有两种类型的信息:

标记,比如
文本或者字符数据,比如 _Tutorials Point和(011) 123-4567_。
下图描述了在 XML 文档中编写不同类型标记和文本的语法规则:
XML标记语言的基本概念及语法的入门教程介绍(图)

我们来详细看看上图中的每个组成部分:

XML 声明
XML 文档可以有一个可选的 XML 声明。它可以写作如下形式:

<?xml version="1.0" encoding="UTF-8"?>
登录后复制


这里 version 就是 XML 版本,encoding 指定文档中使用的字符编码。

XML 声明的语法规则

XML 声明区分大小写,必须以 "" 开头,其中 "xml" 是小写的。
如果文档包含 XML 声明,那么它必须是 XML 文档的第一条语句。
XML 声明必须是 XML 文档的第一条语句。
可以使用一个 HTTP 协议覆盖 XML 声明中指定的 encoding 的值。


标签和元素
一个 XML 文件的结构由几个 XML 元素组成,也叫做 XML 节点或 XML 标签。XML 元素的名称使用尖括号 < > 闭合,如下所示:

<element>
登录后复制

标签和元素的语法规则

元素语法: 每个 XML 元素都必须闭合或者带有开始和结束元素,如下所示:

<element>....
登录后复制

或者简写形式,就像这样:

<element/>
登录后复制

元素嵌套: 一个 XML 元素可以包含多个 XML 元素作为它的子元素,但是子元素不能重叠。比如,一个元素的结束标签必须与最近匹配的开始标签具有相同的名称。

下面的例子展示了不正确的嵌套标签:

<?xml version="1.0"?>
<contact-info>
<company>TutorialsPoint   
<contact-info>
</company>
登录后复制

下面的例子展示了正确的嵌套标签:

<?xml version="1.0"?>
<contact-info>
<company>TutorialsPoint</company>
<contact-info>
登录后复制

根元素: 一个 XML 文档只有一个根元素。例如,下面是一个不正确的 XML 文档,因为 x 和 y 元素出现在顶层而没有一个根元素:

<x>...</x>
<y>...</y>
登录后复制

下面的例子展示了正确形式的 XML 文档:

<root>
    <x>...</x>
    <y>...</y>
</root>
登录后复制

区分大小写: XML 元素的名称区分大小写。这意味着元素的起始和结束标签大小写必须一样。

例如 和 __ 就不同。

属性
attribute 使用名/值对给元素指定一个属性(property)。一个 XML 元素可以有一个或多个属性(attributes)。例如:

<a href="http://www.php.cn/">Tutorialspoint!</a>
登录后复制

这里 href 就是属性名称,而 http://www.php.cn/ 就是属性值。

XML 属性的语法规则

XML 属性名区分大小写(和 HTML 不一样)。也就是说 HREF 和 href 会被认为是两个不同的 XML 属性。
在语法中相同的属性不能有两个。下面的例子展示了不正确的语法,因为属性 b 被指定了两次:

<a b="x" c="y" b="z">....</a>
登录后复制

属性名定义不带引号标记,而属性值必须显示在引号标记中。下面的例子演示了不正确的 XML 语法:

<a b=x>....</a>
登录后复制

在上面的语法中,属性值没有定义在引号标记中。

XML 引用
引用 通常允许我们在 XML 文档中添加或包含附加的文本。引用始终以符号 "&" 开始,这是一个保留字符,以符号 ";" 结尾。XML 中有两种类型的引用:

实体引用: 一个实体引用的起始和结束定界符之间包含一个名称。比如 &,其中 amp 就是名称。这个 name 通常指向一个预定义的文本字符串或标记。

字符引用: 这些包含引用比如 A 包含一个 hash 标记("#"),后面紧跟一个数字。这个数字始终指向一个字符的 Unicode 码。在这里,65 指向字母 "A"。

XML 文本
XML 元素和 XML 属性的名称区分大小写。这意味着元素的开始和结束标签大小写必须一致。
为了避免字符编码的问题,所有的 XML 文件都应该保存为 Unicode UTF-8 或者 UTF-16 文件。
空白字符,比如空格,制表符以及 XML 元素和 XML 属性之间换行符会被忽略。
有些字符是 XML 语法本身保留的。因此,不能直接使用它们。要使用它们,就要使用一些替代实体。下面列出了一些:
XML标记语言的基本概念及语法的入门教程介绍(图)


以上是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)

值得你花时间看的扩散模型教程,来自普渡大学 值得你花时间看的扩散模型教程,来自普渡大学 Apr 07, 2024 am 09:01 AM

Diffusion不仅可以更好地模仿,而且可以进行「创作」。扩散模型(DiffusionModel)是一种图像生成模型。与此前AI领域大名鼎鼎的GAN、VAE等算法,扩散模型另辟蹊径,其主要思想是一种先对图像增加噪声,再逐步去噪的过程。其中如何去噪还原原图像是算法的核心部分。最终算法能够从一张随机的噪声图像中生成图像。近年来,生成式AI的惊人增长将文本转换为图像生成、视频生成等领域的许多令人兴奋的应用提供了支持。这些生成工具背后的基本原理是扩散的概念,这是一种特殊的采样机制,克服了以前的方法中被

一键生成PPT!Kimi :让「PPT民工」先浪起来 一键生成PPT!Kimi :让「PPT民工」先浪起来 Aug 01, 2024 pm 03:28 PM

Kimi:一句话,十几秒钟,一份PPT就新鲜出炉了。PPT这玩意儿,可太招人烦了!开个碰头会,要有PPT;写个周报,要做PPT;拉个投资,要展示PPT;就连控诉出轨,都得发个PPT。大学更像是学了个PPT专业,上课看PPT,下课做PPT。或许,37年前丹尼斯・奥斯汀发明PPT时也没想到,有一天PPT竟如此泛滥成灾。吗喽们做PPT的苦逼经历,说起来都是泪。「一份二十多页的PPT花了三个月,改了几十遍,看到PPT都想吐」;「最巅峰的时候,一天做了五个PPT,连呼吸都是PPT」;「临时开个会,都要做个

CVPR 2024全部奖项公布!近万人线下参会,谷歌华人研究员获最佳论文奖 CVPR 2024全部奖项公布!近万人线下参会,谷歌华人研究员获最佳论文奖 Jun 20, 2024 pm 05:43 PM

北京时间6月20日凌晨,在西雅图举办的国际计算机视觉顶会CVPR2024正式公布了最佳论文等奖项。今年共有10篇论文获奖,其中2篇最佳论文,2篇最佳学生论文,另外还有2篇最佳论文提名和4篇最佳学生论文提名。计算机视觉(CV)领域的顶级会议是CVPR,每年都会吸引大量研究机构和高校参会。据统计,今年共提交了11532份论文,2719篇被接收,录用率为23.6%。根据佐治亚理工学院对CVPR2024的数据统计分析,从研究主题来看,论文数量最多的是图像和视频合成与生成(Imageandvideosyn

从裸机到700亿参数大模型,这里有份教程,还有现成可用的脚本 从裸机到700亿参数大模型,这里有份教程,还有现成可用的脚本 Jul 24, 2024 pm 08:13 PM

我们知道LLM是在大规模计算机集群上使用海量数据训练得到的,本站曾介绍过不少用于辅助和改进LLM训练流程的方法和技术。而今天,我们要分享的是一篇深入技术底层的文章,介绍如何将一堆连操作系统也没有的「裸机」变成用于训练LLM的计算机集群。这篇文章来自于AI初创公司Imbue,该公司致力于通过理解机器的思维方式来实现通用智能。当然,将一堆连操作系统也没有的「裸机」变成用于训练LLM的计算机集群并不是一个轻松的过程,充满了探索和试错,但Imbue最终成功训练了一个700亿参数的LLM,并在此过程中积累

AI在用 | AI制作独居女孩生活Vlog,3天狂揽上万点赞量 AI在用 | AI制作独居女孩生活Vlog,3天狂揽上万点赞量 Aug 07, 2024 pm 10:53 PM

机器之能报道编辑:杨文以大模型、AIGC为代表的人工智能浪潮已经在悄然改变着我们生活及工作方式,但绝大部分人依然不知道该如何使用。因此,我们推出了「AI在用」专栏,通过直观、有趣且简洁的人工智能使用案例,来具体介绍AI使用方法,并激发大家思考。我们也欢迎读者投稿亲自实践的创新型用例。视频链接:https://mp.weixin.qq.com/s/2hX_i7li3RqdE4u016yGhQ最近,独居女孩的生活Vlog在小红书上走红。一个插画风格的动画,再配上几句治愈系文案,短短几天就能轻松狂揽上

技术入门者必看:C语言和Python难易程度解析 技术入门者必看:C语言和Python难易程度解析 Mar 22, 2024 am 10:21 AM

标题:技术入门者必看:C语言和Python难易程度解析,需要具体代码示例在当今数字化时代,编程技术已成为一项越来越重要的能力。无论是想要从事软件开发、数据分析、人工智能等领域,还是仅仅出于兴趣学习编程,选择一门合适的编程语言是第一步。而在众多编程语言中,C语言和Python作为两种广泛应用的编程语言,各有其特点。本文将对C语言和Python的难易程度进行解析

细数RAG的12个痛点,英伟达高级架构师亲授解决方案 细数RAG的12个痛点,英伟达高级架构师亲授解决方案 Jul 11, 2024 pm 01:53 PM

检索增强式生成(RAG)是一种使用检索提升语言模型的技术。具体来说,就是在语言模型生成答案之前,先从广泛的文档数据库中检索相关信息,然后利用这些信息来引导生成过程。这种技术能极大提升内容的准确性和相关性,并能有效缓解幻觉问题,提高知识更新的速度,并增强内容生成的可追溯性。RAG无疑是最激动人心的人工智能研究领域之一。有关RAG的更多详情请参阅本站专栏文章《专补大模型短板的RAG有哪些新进展?这篇综述讲明白了》。但RAG也并非完美,用户在使用时也常会遭遇一些「痛点」。近日,英伟达生成式AI高级解决

VSCode入门指南:初学者必读,快速掌握使用技巧! VSCode入门指南:初学者必读,快速掌握使用技巧! Mar 26, 2024 am 08:21 AM

VSCode(VisualStudioCode)是一款由微软开发的开源代码编辑器,具有强大的功能和丰富的插件支持,成为开发者们的首选工具之一。本文将为初学者们提供一个入门指南,帮助他们快速掌握VSCode的使用技巧。在本文中,将介绍如何安装VSCode、基本的编辑操作、快捷键、插件安装等内容,并为读者提供具体的代码示例。1.安装VSCode首先,我们需

See all articles