XML简介

目录

XML是什么呢?

XML和HTML的区别是什么呢?

[W3C XML 规范和时间线](#W3C XML 规范和时间线)


XML是什么呢?

XML指可扩展标记语言(EXtensible Markup Language),是一种很类似HTML的标记语言。XML的设计宗旨是为了数据的传输而非显示数据。

XML具有自我描述性,标签没有被预定义,需要自行定义标签。

XML是结构化的纯文本文件

XML很类似与HTML,那么

XML和HTML的区别是什么呢?

XML与HTML的设计目的不同

XML是来用作数据的传输与储存。HTML则是来用作数据的显示。

XML是没有任何操作的,只是用来结构化的存储和传输信息。

自我描述性

以下便是一个用XML来存储CD数据的例子

XML 复制代码
<cd>
    <title>Dark Side of the Moon</title>
    <artist>Pink Floyd</artist>
    <country>UK</country>
    <company>Harvest</company>
    <price>15.99</price>
    <year>1973</year>
</cd>

上面便是自行定义标签的例子,给定了cd的相关信息(标题、作者等),体现了XML的自我描述性。

XML是对HTML的补充

XML不是HTML的替代,而是独立于软件和硬件的信息传输工具

W3C XML 规范和时间线

  • XML 1.0: 核心规范,1998年2月10日成为推荐标准,后续经历了第二版(2000年10月6日)和第三版(2004年2月4日)的修订,以修正错误和提供澄清。

  • XML 1.1: 为了解决XML 1.0中的一些限制,XML 1.1及其第二版分别在2004年2月4日和2006年8月16日发布,但实际应用较少。

  • XML Namespaces: 1999年1月14日确立,用于解决元素和属性名称冲突问题,后续也有修订版本。

  • XML Infoset: 一种对XML文档内容的抽象视图,2001年10月24日发布,帮助理解XML文档结构。

  • XML Base: 类似HTML中的base标签,定义了XML文档中相对URL的基础,2001年6月27日成为推荐标准。

  • XLink 和 XPointer: 分别定义了XML文档内部或跨文档的链接机制(2001年6月27日)和链接指向的具体位置(2003年3月25日),增强了XML文档的交互性。

  • XInclude: 提供了一种在XML文档间包含内容的方法,减少文档重复,2004年12月20日发布。

  • XML Processing Model: 介绍了处理XML文档的模型,虽然列出但具体发布时间可能需要进一步确认,反映了XML处理方式的标准化尝试。

  • XMLHttpRequest Object: 虽然不是直接的XML规范,但作为AJAX的核心,它促进了XML数据在Web应用中的异步传输,2010年8月3日的规范更新体现了XML在Web开发中的应用深化。

规范 草案/提议 推荐
XML 1.0 1998 年 2 月 10 日
XML 1.0 (2.Ed) 2000 年 10 月 6 日
XML 1.0 (3.Ed) 2004 年 2 月 4 日
XML 1.1 2004 月 2 月 4 日
XML 1.1 (2.Ed) 2006 年 8 月 16 日
XML 1.0 Namespaces 1999 年 1 月 14 日
XML 1.0 Namespaces SE 2004 年 3 月 4 日
XML 1.1 Namespaces 2004 年 3 月 4 日
XML 1.1 Namespaces SE 2006 年 8 月 16 日
XML Infoset 2001 年 10 月 24 日
XML Infoset (2.Ed) 2004 年 2 月 4 日
XML Base 2001 年 6 月 27 日
XLink 1.0 2001 年 6 月 27 日
XPointer Framework 2003 年 3 月 25 日
XPointer element() scheme 2003 年 3 月 25 日
XPointer xmlns() scheme 2003 年 3 月 25 日
XInclude 1.0 2004 年 12 月 20 日
XInclude 1.0 SE 2006 年 11 月 15 日
XML Processing Model 2004 年 4 月 5 日
XMLHttpRequest Object 2010 年 8 月 3 日
相关推荐
bjzhang75几秒前
使用Chrome浏览器时打开网页如何禁用缓存
前端·chrome·缓存
cdut_suye3 分钟前
STL之list篇(上)初识list容器,了解其核心机制,实例化对象进行分析
开发语言·c++·学习·算法·stl·list
南宫理的日知录4 分钟前
84、Python之鸭子类型:魔术方法&自定义类型也可以实现加减乘除
开发语言·python·学习·编程学习
夏天想16 分钟前
uni-app+vue3+pina实现全局加载中效果,自定义全局变量和函数可供所有页面使用
前端·javascript·uni-app
s_little_monster19 分钟前
【C++】继承(下)
开发语言·c++·经验分享·笔记·学习·学习方法
深情废杨杨26 分钟前
前端vue-form表单的验证
前端·javascript·vue.js
凭栏落花侧26 分钟前
源码解读的艺术:专家级心得与实践策略
经验分享·笔记·学习
Fenderisfine26 分钟前
使用 vite 快速初始化 shadcn-vue 项目
前端·css·vue.js·前端框架·postcss
星河漫漫l28 分钟前
0基础学习CSS(六)字体
前端·css·学习·html
多多*41 分钟前
OJ在线评测系统 前端开发整合开源组件 Monaco Editor 并且开发创建题目页面
服务器·前端·javascript·数据库·算法·开源