XML 入门必读
1.什么是XML?
XML 开发者们会告诉你,事实上XML并不是一种语言,而是一种用来定义其它语言的系统。可能你已经听过,或许甚至自己尝试过一些这样的语言??比如微软为推(push)技术所推出的频道定义格式(Channel Definition Format)。
W3C是互连网上一些公用标准的开发者,他推出了一系列和XML相关的标准和草案。他们把XML描叙成“一种用来表达结构化数据的通用语法”。所谓结构化数据是指被标签(tags)定义了其内容,意义和用法的数据。例如,在HTML的定义中,<H1>标签所定义的文本,将会用一种特定的字体和大小所显示出来。一个XML标签会明确的确定一种信息: <AUTHOR>标签可能表示的是文档的作者,而<PRICE>则可能包含了产品的价格。与HTML中标签所不同的是:XML标签的含义是自定义的,如果你愿意,可以用<PRICE>来表示作者信息,而用<AUTHOR>来表示产品价格。虽然这看起来会很别扭,但绝对是正确的。
通过分离结构和数据,一份XML文档能够一经写出,就能应用在多种不同的用途:在计算机屏幕上显示出来,或者显示在手机屏幕上,又或者被转到为盲人设计的语音设备上,等等,诸多功用,不一而足。它几乎能够工作在任何可能的通讯设备上。这时候,一个XML文档的作用,已经远远超出了当初你所以为的那样,仅仅是用来显示内容的简单文档了。这样,XML就能够在除了互连网的其它地方也能够一展身手。
在一些大型的文档制作商中,SGML是他们用了很多年的语言,但是它实在是太复杂了,仅仅是定义就有400多页。XML的出现也为他们创造了一些契机。事实上XML是SGML的一个精简了的子集,SGML的大部分工作都可以由XML来完成,而XML比起SGML来却是简单了许多。
当然,平台无关的XML最初是为Web所设计的,它也将在在Web上产生最大的影响。
DOM(Domument Object Model)是一个编程接口,他定义了在一个文档中如何进行数据存取的机制。XML能够为Web所做的,很大程度上取决于它是如何同DOM(文档对象模型)进行交互。
使用DOM,程序员可以用一种标准的方法来动态的操作文档的内容和相关的一些属性。换句话说,程序员可以让在一个浏览器的文档对象树中的一段内容进行一些特定的动作。例如:当把鼠标移到一小段文字上面时,它会改变颜色。网景的Navigator和微软 Internet Explorer都定义了个不相容的DOM,但是这两个公司都宣布在他们下一个版本的浏览器中会支持W3C的标准DOM
相关文档:
USE Test
--Create 2 tables as an example
CREATE TABLE ExampleTable
(
[ID] int PRIMARY KEY
,[Name] nvarchar(256)
)
CREATE TABLE ExampleTable2
(
[ID] int PRIMARY KEY
,[Name] nvarchar(256)
)
----way1
SELECT *
from sys.objects [table]
WHERE
[Name] LIKE 'ExampleTable%'
FOR XML AUTO, ROOT ......
这是一个用c#控制台程序下, 用XmlDocument 进行XML操作的的例子,包含了查询、增加、修改、删除、保存的基本操作。较完整的描述了一个XML的整个操作流程。适合刚入门.net XML操作的朋友参考和学习。
假设有XML文件:books.xml
Xml代码:
<?xml version="1.0" encoding="UTF-8"?>
<books>
< ......
要知道从根节点一直下来的相对路径才能确定Xpath的写法。
/root/<节点1>/<节点2>//<@属性>
Xpath是功能很强大的,但是也是相对比较复杂的一门技术,最好还是到博客园上面去专门找一些专业的帖子来看一看,下面是一些简单的Xpath语法和一个实例,提供给你参考一下
<?xml version="1.0" encoding="IS ......
<?xml version="1.0" encoding="gb2312" ?>
<?xml-stylesheet type="tet/css" href="mystyle.css" ?>
<%@ page errorPage="error.jap" %>
<%@ page contentType="text/xml" %>
<realmarid>
皇马花名册
<athlete>
<name>齐达内</name>
<country> ......
现在很多软件都是以xml文件作为数据源,而很多数据工具如pb等却只能另存为txt、excel等格式,为此需要一工具能将txt文本转换成xml文件。google了一下,没找到合适的,冲动之下用C#写了一个txt文本转xml格式文本的小程序,代码如下。
新建一个w ......