0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是XML?

汽车电子技术 来源: 码农与软件时代 作者:码农与软件时代 2023-02-14 15:19 次阅读

一、为什么出现XML?

还是从软件说起,其本质是信息处理以及对信息处理的自动化。在软件系统中,数据是信息的载体,是对客观事物所蕴含信息的抽象描述。软件对数据的处理包括:Define(定义)、Transfer(传递)、Transform(转换)、Store(存储)、Retrival(检索)和Show(展示)。

图片

数据可以以二进制的形式表示也可以以文本的形式表示。二进制文件是一个0和1的序列,通常需要专用的程序进行识别和解析,由于占用带宽较少,适用于网络传输,但对于用户来说很难理解。而文本文件是一个由字符组成的文件,方便用户理解,但文件通常较大。

图片

《杂谈:语言的鸿沟》一文中,我们曾讨论过人们总是在追求简单方便。同样地,在二进制文件和文本文件之间人们通常选择的是文本文件。但在文本文件中,人们还希望文本文件能够自表达所蕴含的意义,希望的是有格式的文本数据,于是就需要标记元数据以及所标识的原始数据。在这种情况下,SGML(Standard Generalized Markup Language,标准通用标记语言)以一种规范性的标准出现了,其官网简单示例如下所示:

图片

SGML允许人们使用标准的语法语义创建他们自已的标记语言,例如,HTML使用<>来标识元数据,并且在标记内可以增加定义。SGML具有的这种灵活性,同时也带来了复杂性,事实上,这使得SGML的解析及处理变得十分困难,很难在网络上进行广泛地应用。所以SGML需要改变,需要简化。这种情况下,XML(eXtensible Markup Language,可扩展标记语言)作为SGML的一个简化子集出现了。

二、什么是XML?

  1. 基础

1998年2月,W3C发布了XML的推荐标准,XML继承了SGML的灵活性,没有预定义的标签,标签是由XML的编写人员根据业务需求进行编写的,如下图所示,、、都是自定义的标签,且都有一个对应的关闭标签:

图片

一个基本的XML示例包含XML声明、根元素和子元素。其中,XML声明定义XML的版本和所用的编码;根元素是每个XML文档都必须包含的,并做为XML树的根而解析,如下所示:

图片

XML的解析就是其内容进行分解并重建,通常情况下将其抽象为DOM模型--使用树型结构表示,该模型提供了内存中访问和修改XML信息的方法。需要说明的是,DOM消耗的内存较大。

XML允许自定义标签,同时如果XML文档存在错误,那么程序就不应当继续处理这个文档。那么我们如何来验证XML文档是正确的呢?有两种方式:

  • DTD(document type definitions,文件类型定义)

图片

  • XML Schema

图片

2. 应用场景

在XML出现的前部分时间,XML使用得较少。随着互联网的发展,网络服务大量地接收和发送数据,但数据格式由于技术体系的不同而呈现出较大的差异,数据格式多且大部分都是专有的,开发人员需要做很多数据转换的工作。这就需要实现数据格式的通用性。XML作为对人机友好的文件格式,可提高数据的通用性,使不同组件间的数据交互更容易,并使得开发人员聚焦于业务逻辑的开发与创新。XML在数据交换领域并得到了广泛的应用。除此之外,XML还应用于:

  • 配置文件:许多应用或框架的配置文件都采用XML格式,如Struct、Spring等框架;
  • 数据库系统:大多数数据库系统都能保存XML格式的文件。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软件系统
    +关注

    关注

    0

    文章

    52

    浏览量

    9444
  • Transform
    +关注

    关注

    0

    文章

    3

    浏览量

    5610
  • define
    +关注

    关注

    0

    文章

    13

    浏览量

    3677
收藏 人收藏

    评论

    相关推荐

    XML在HarmonyOS中的生成,解析与转换(下)

    一、XML 解析 对于以 XML 作为载体传递的数据,实际使用中需要对相关的节点进行解析,一般包括解析 XML 标签和标签值、解析 XML 属性和属性值、解析
    的头像 发表于 02-18 10:07 450次阅读

    xml文件如何打开?怎样打开XML文件?

    XML是ExtensibleMarkupLanguage的简写,一种扩展性标识语言。现在教你打开xml文件的方法和软件。呵,其实最简单的就是用EXCEL表格打开了。。也可以用Netscape 6来
    发表于 07-04 17:56

    XML基础知识

    XML基础知识 XML简介 XML文档的组成 XML的语法规则 元素的语法 XML文档的有
    发表于 10-07 13:24

    xml dtd教程

    xml dtd教程 DTD简介 DTD语法 普通实体、参数实体 根据XML文档编写DTD 什么是DTD 
    发表于 10-07 13:26

    xml教程下载

     XML简介 XML文档的组成 XML的语法规则 元素的语法 XML文档的有效性  DTD简介 DTD语法&n
    发表于 10-07 13:06 0次下载

    xml教程pdf (XML终极教程下载)

    xml教程pdf (XML终极教程下载) Welcome to the XML Bible. After reading this book I hope you’ll agree with me
    发表于 10-07 14:15 0次下载

    XML Reference Material

    This appendix contains XML reference material. It isdivided into three main parts:1. XML BNF
    发表于 10-07 14:18 8次下载

    An Eagle’s Eye View of XML

    This first chapter introduces you to XML. It explains ingeneral what XML is and how it is used.
    发表于 10-07 14:22 18次下载

    An Introduction to XML Applica

    An Introduction to XML Applications In this chapter we’ll be looking at some examples
    发表于 10-07 14:23 13次下载

    Microsoft Core XML Services (M

    MSXML 6.0 (MSXML6) 提高了可靠性、安全性、与 XML 1.0 和 XML Schema 1.0 W3C 建议的符合性以及与 System.Xml 2.0 的兼容性。 Microsoft Core
    发表于 02-12 08:38 9次下载

    基于XML的开放式WebGIS的系统设计

    基于XML 的开放式WebGIS 的系统设计是解决传统WebGIS 数据共享、服务互操作问题的好方法。本文分析了基于XML 的开放式WebGIS 系统的设计目标,提出了一个基于XML 技术的WebGIS 系统设
    发表于 05-30 10:28 17次下载

    XML在银保通系统中的应用研究

    本文根据实际需求分析,采用自行定义的XML 标准作为银保通电子数据交换基础,构建了一整套基于XML 格式的银保通报文数据交换协议,通过XML 报文协议实现了与不同银行端银保
    发表于 08-12 09:38 7次下载

    MTK自带的XML解析

    现在大多数软件都用xml作为配置文件,MTK本身也带了XML文件的解析,在此我不评说自带XML的解析效率
    发表于 08-31 16:00 0次下载

    XML基础——XML必须知道的入门知识

    XML(Extensible Markup Language) 即可扩展标记语言。XML是Internet环境中跨平台的、依赖于内容的技术,是当前处理结构化文档信息的有力工具
    的头像 发表于 06-22 15:12 1970次阅读
    <b class='flag-5'>XML</b>基础——<b class='flag-5'>XML</b>必须知道的入门知识

    鸿蒙OS开发-(用xml写查询语句+xml使用)

    在C#中我们常用来当做一个小型的数据库来使用,我们可以将信息保存在XML文档中,或者从XML文档中获取数据。这样就必须使用到XML文档的数据读取。
    的头像 发表于 01-26 17:51 414次阅读