XML是什么,它能够做什么?——写给XML入门者
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入门者的更多相关文章
- 帮你彻底解决eclipse(myeclipse)中写struts.xml配置文件
其实,在自己写struts.xml的时候,竟然没有代码提示功能.让我非常的烦恼,其实解决这个问题的关键还是system不知道他的dtd的规则无法提示配置信息 很简单,那就让它知道就OK了!!! 道理明 ...
- 将应用程序中的一些参数写到xml配置文件中
最近碰到一个问题,需要将程序中的一些基本参数写到xml文件中,虽然网上有好多现成的代码,但是觉得对xml不熟悉,果断就研究了一下.先说一下大体思路吧,我设计了一个用来读取和回填的类,然后定义了一个接口 ...
- 根据Schema写出XML文档四部曲
Schema约束文档本身就是一个XML文档,扩展名为xsd 难点:XML文档的根元素怎么写? 如下4步曲: a.首先看Schema文档,找到根元素 <?xml version="1.0 ...
- 写一个xml文件到磁盘的方法
/** * 往磁盘上写一个xml文件 * * <?xml version="1.0" encoding="UTF-8" standalone=" ...
- testng入门教程16数据驱动(把数据写在xml)
testng入门教程16数据驱动(把数据写在xml) testng入门教程16数据驱动(把数据写在xml)把数据写在xml文件里面,在xml文件右键选择runas---testng执行 下面是case ...
- 在Android中把内容写到XML文件中
在Android中把内容写到XML文件中 saveXmlButton.setOnClickListener(new OnClickListener() { @Override public void ...
- C# 二进制序列化(BinaryFormatter),Xml序列化(XmlSerializer),自己模拟写一个Xml序列化过程。
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 十六、JSONObject与JSONArray使用-不刷新页面做回写显示
需要导入:json-lib-2.2.2-.jar包 1.json:就是一个键对应一个值,超级简单的一对一关系.对于json嵌套,只要记住符号“:”前是键,符号后是值大括号成对找. String arr ...
- 用pytorch做手写数字识别,识别l率达97.8%
pytorch做手写数字识别 效果如下: 工程目录如下 第一步 数据获取 下载MNIST库,这个库在网上,执行下面代码自动下载到当前data文件夹下 from torchvision.dataset ...
- 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 ...
随机推荐
- grep, egrep, fgrep笔记
grep, egrep, fgrep grep: 根据模式搜索文本,并将符合模式的文本行显示出来.Pattern: 文本字符和正则表达式的元字符组合而成匹配条件 grep [options] PATT ...
- error LNK2019
error LNK2019: 无法解析的外部符号 "public: virtual __thiscall Fruit::~Fruit(void)" (??1Fruit@@UAE@X ...
- HBase的基本操作
1.输入hbase shell进入HBase shell
- APPCAN学习笔记004---AppCan与Hybrid,appcan概述
APPCAN学习笔记004---AppCan与Hybrid,appcan概述 技术qq交流群:JavaDream:251572072 本节讲了appcan的开发流程,和开发工具 笔记不做具体介绍了,以 ...
- Windows Mobile 6 sdk installation error, COM3 in use,please check the implementation
问题:Windows Mobile 6 sdk installation error, COM3 in use,please check the implementation 1. Windows-& ...
- 【熊猫】POS销售
select a.itemcode,b.itemname,b.spec,b.unit,b.rprice,sum(a.rqty) rqtyfrom tm_possale_detail a,sys_ite ...
- 转:C#整数三种强制类型转换int、Convert.ToInt32()、int.Parse()的区别
1.int适合简单数据类型之间的转换,C#的默认整型是int32(不支持bool型); 2.int.Parse(string sParameter)是个构造函数,参数类型只支持string类型; 3. ...
- Windows Server 2008 R2 IIS重装
背景描述: 在一个刚睡醒午觉后的下午,忽然收到客户反馈,说昨天开始应用特别卡,各种卡各种不好用,忽然想到上次说要优化服务器IIS配置还一直没弄,然后迷迷糊糊的就开始进行客户现场服务器IIS配置优化,涉 ...
- 从汇编看c++多重继承中this指针的变化
先来看一下下面的c++源码: #include <iostream> using namespace std; class X { public: virtual void print1( ...
- Spring 系列: Spring 框架简介(转载)
Spring 系列: Spring 框架简介 http://www.ibm.com/developerworks/cn/java/wa-spring1/ Spring AOP 和 IOC 容器入门 在 ...