XML就可以扩展标记语言(eXtensible Markup Language)。标记是指计算机所能理解的信息符号,通过此种标记,计算机之间能够处理包括各种信息的文章等。怎样定义这些标记,既能够选择国际通用的标记语言,比方HTML,也能够使用象XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从SGML中简化改动出来的。它主要用到的有XML、XSL和XPath等。

上面这段是对XML的一个基本定义,一个被广泛接受的说明。简单说,XML就是一种数据的描写叙述语言,尽管它是语言,可是通常情况下,它并不具备常见语言的基本功能——被计算机识别并执行。仅仅有依靠还有一种语言,来解释它,使它达到你想要的效果或被计算机所接受。

假如你是刚接触XML的新手,那么可能并无法从定义上是了解XML是什么。或许,你能够换个角度来认识XML是什么;从应用面来认识XML,从XML能够做些什么来认识它,这应该能比那更空洞的定义对你更有帮助。

XML应用面主要分为两种类型,文档型和数据型。以下介绍一下几种常见的XML应用:

1、自己定义XML+XSLT=>HTML,最常见的文档型应用之中的一个。XML存放整个文档的XML数据,然后XSLT将XML转换、解析,结合XSLT中的HTML标签,终于成为HTML,显示在浏览器上。典型的样例就是CSDN上的帖子。

2、XML作为微型数据库,这是最常见的数据型应用之中的一个。我们利用相关的XML API(MSXML DOM、JAVA DOM等)对XML进行存取和查询。留言板的实现中,就常常能够看到用XML作为数据库。同一时候,这里要告诉一些新人,数据库和数据库系统,这两个概念是不同的。这里顺便提一下XML对数据库系统的影响。在新版本号的传统数据库系统中,XML成为了一种数据类型。和“传统”相对的就是一种新形态的数据库,全然以XML相关技术为基础的数据库系统。眼下比較知名的eXist。

3、作为信息传递的载体。为什么说是载体呢?由于这些应用尽管还是以XML为基本形态,可是都已经发展出具有特定意义的格式形态。最典型的就是WEB SERVICE,将数据包装成XML来传递,可是这里的XML已经有了特定的规格,即SOAP。只是这里还不得不说AJAX,AJAX的应用中,相信也有一部分的应用是以自己定义XML为数据,只是没有成为工业标准,这里不做详述。

4、应用程序的配置信息数据。最典型的就是J2EE配置WEBserver时用的web.XML。这个应用预计是非常easy理解的了。我们仅仅要将须要的数据存入XML,然后在我们的应用程序执行加载,依据不同的数据,做对应的操作。这里事实上和应用2,有点相似,所不同的在于,数据库中的数据变化是个常态,而配置信息往往是较为静态,缺少变化的。

5、其它一些文档的XML格式。如WORD、EXCEL等。

6、保存数据间的映射关系。如Hibernate。

这几种常见应用中,我们还能够依据其应用广泛程度,分为:自己定义XML和特定意义XML。在1和2就是属于自己定义XML的范畴;3至6则属于特定意义XML,或者说是XML的延伸。

这里介绍的6种应用,基本涵盖了XML的主要用途。总之,XML是一种抽象的语言,它不如传统的程序语言那么详细。要深入的认识它,应该先从它的应用入手,选择一种你须要的用途,然后再学习怎样使用。

如有转载请注明出处,谢谢。

作者:Sank Orange

XML是什么,它能够做什么?——写给XML入门者的更多相关文章

  1. 帮你彻底解决eclipse(myeclipse)中写struts.xml配置文件

    其实,在自己写struts.xml的时候,竟然没有代码提示功能.让我非常的烦恼,其实解决这个问题的关键还是system不知道他的dtd的规则无法提示配置信息 很简单,那就让它知道就OK了!!! 道理明 ...

  2. 将应用程序中的一些参数写到xml配置文件中

    最近碰到一个问题,需要将程序中的一些基本参数写到xml文件中,虽然网上有好多现成的代码,但是觉得对xml不熟悉,果断就研究了一下.先说一下大体思路吧,我设计了一个用来读取和回填的类,然后定义了一个接口 ...

  3. 根据Schema写出XML文档四部曲

    Schema约束文档本身就是一个XML文档,扩展名为xsd 难点:XML文档的根元素怎么写? 如下4步曲: a.首先看Schema文档,找到根元素 <?xml version="1.0 ...

  4. 写一个xml文件到磁盘的方法

    /** * 往磁盘上写一个xml文件 * * <?xml version="1.0" encoding="UTF-8" standalone=" ...

  5. testng入门教程16数据驱动(把数据写在xml)

    testng入门教程16数据驱动(把数据写在xml) testng入门教程16数据驱动(把数据写在xml)把数据写在xml文件里面,在xml文件右键选择runas---testng执行 下面是case ...

  6. 在Android中把内容写到XML文件中

    在Android中把内容写到XML文件中 saveXmlButton.setOnClickListener(new OnClickListener() { @Override public void ...

  7. C# 二进制序列化(BinaryFormatter),Xml序列化(XmlSerializer),自己模拟写一个Xml序列化过程。

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  8. 十六、JSONObject与JSONArray使用-不刷新页面做回写显示

    需要导入:json-lib-2.2.2-.jar包 1.json:就是一个键对应一个值,超级简单的一对一关系.对于json嵌套,只要记住符号“:”前是键,符号后是值大括号成对找. String arr ...

  9. 用pytorch做手写数字识别,识别l率达97.8%

    pytorch做手写数字识别 效果如下: 工程目录如下 第一步  数据获取 下载MNIST库,这个库在网上,执行下面代码自动下载到当前data文件夹下 from torchvision.dataset ...

  10. java解析xml汇总(转自倾城幻影-Java解析xml汇总,链接:http://www.cnblogs.com/jiugehuanying/archive/2012/01/12/2320058.html)

    [引言] 目前在Java中用于解析XML的技术很多,主流的有DOM.SAX.JDOM.DOM4j,下文主要介绍这4种解析XML文档技术的使用.优缺点及性能测试. [一.基础知识--扫盲] sax.do ...

随机推荐

  1. Linux进程笔记

    进程及作业管理 Uninterruptible sleep: 不可中断的睡眠Interruptible sleep:可中断睡眠 kernel:init: COW: Copy On Write, 写时复 ...

  2. 行变列 pivot

    SELECT p.City , [临时] , [会员] , VIPFROM ( SELECT c.CustomerID , c.City , CASE WHEN COUNT(o.OrderID) &l ...

  3. A Simple Problem with Integers(100棵树状数组)

    A Simple Problem with Integers Time Limit: 5000/1500 MS (Java/Others)    Memory Limit: 32768/32768 K ...

  4. HDU2093 字符串2种不错的读入思路

    <span style="font-family: 'Times New Roman'; font-size: 12px; background-color: rgb(255, 255 ...

  5. apache如何在虚拟主机中实现用户验证

    1,在相应的虚拟主机配置文件段,加入<Directory  /data/www.admin.php>                AllowOverride AuthConfig     ...

  6. centos 6 编译安装httpd-2.4

    centos6 yum安装的apr版本已经不适用httpd-2.4版本了.所以,需要源码编译apr以及apr-util 1. 下载源码: cd /usr/local/src/ wget http:// ...

  7. SQL Server 强行Insert包含自增列值的记录

    SET IDENTITY_INSERT 表 ON INSERT INTO 表 ([ID] ,[SequenceNumber] ,[EnumCode] ,[Description]) VALUES ( ...

  8. Email Cover Letter Format

    http://jobsearch.about.com/od/sampleletters/ig/Sample-Letter-Formats/Email-Message-Format.htm   Copy ...

  9. Intent中的重要属性详解

    Intent中的四个重要属性主要有四个,分别是Action.Data.Category.Extras. Intent作为联系各Activity,BroadcaseReciver,Service之间的纽 ...

  10. XML及PullParser解析

    一.什么是XML 1.概念:extensive markup language(可扩展的标记语言) XML是一种通用的数据存储和交换格式,与平台无关,与编程语言无关,与操作系统无关.给数据集成和交互提 ...