最近在用.NET做一个Java软件的接口,其中开发过程中涉及不少对Xml文档的操作,借助微软的MSDN和自己的使用经验,现简单介绍一下ASP.NET中对XML文档的操作。一、 XML文档
我们大家都知道,XML是"Extensible Markup Language"的缩写,即可扩展标记语言。它是Internet环境中跨平台的、依赖于内容的技术,是这个时代中处理分布式结构信息的选择工具。在W3C组织领导下的工作小组发展并支持XML技术,使用它来简化通过Internet的文档信息传输。
XML文档分为两类:有效的XML文档以及简化格式的XML文档。
一个简化格式的XML文档必须遵从下面几个原则:
l 至少有一个元素
l 遵守XML规范
l 根元素(比如上面例子中的<Mail>)应该不被其他元素所包含
l 适当的元素嵌套是必须的
l 属性值应该在问号内
l 除了保留实体外,所有的实体都要声明
有效XML
有效XML文档指的是那些拥有一个DTD参考文件的XML文档。一个有效XML文档至少必须首先是简化格式的XML文档。跟随这个文档的DTD文件的有效性促进了XML执行程序的运行以及文档在兼容XML浏览器中的显示。
XML文档举例
例子1 - 一个简化格式的XML文档:
<?xml version="1.0" standalone="no"?>
<Mail>
<From>Author</From>
<To>Receiver</To>
<Date> Thu, 7 Oct 1999 11:15:16 -0600</Date>
<Subject>XML Introduction</Subject>
<body><p>Thanks for reading<Br/>
this article</p>
<br/>
<p>Hope you enjoyed this article</p>
</body>
</Mail>
第1行是XML声明,其中version属性指明了XML的版本,standalone属性等于"no"表示标记声明不独立于文档内部。XML声明可以看做是"运行指令"。尽管这个声明不是必须的,但是最好包含它,这将提高文档的灵活性。
例子2 - 一个遵守mail.dtd文件的有效XML文档。Date元素被省略,因为在mail.dtd中它是可选的。 元素 P 具有justify属性。Body和P元素间是Comments文本:
<?xml version="1.0" standalone="no"?>
<!DOCTYPE Mail system "http://infowest.com/DTDS/mail.dtd">
<Mail>
<From>Author</From>
<To>Receiver</To>
<Cc>Receiver2</Cc>
<Subject>XML Introduction</Subject>
<body>Comments:<p align="justify">Thanks for reading<Br/>
this article</p>
<br/>
<p>Hope you enjoyed this article</p>
</body>
</Mail>
例子3 -一个遵守mail.dtd文件的有效XML文档,存在Date 元素和Cc 元素,P元素拥有属性right:
<?xml version="1.0" standalone="no"?>
<!DOCTYPE Mail system "http://infowest.com/DTDS/mail.dtd">
<Mail>
<From>Author</From>
<To>Receiver</To>
<Cc>Receiver2</Cc>
<Date> Thu, 7 Oct 1999 11:15:16 -0600</Date>
<Subject>XML Introduction</Subject>
<body>Comments:<p align = "right" >Thanks for reading<Br/>
this article</p>
<br/>
<p>Hope you enjoyed this article</p>
</body>
</Mail>
XML 文档可以含有注释信息,注释的语法与HTML相似。除了"--"字符串外,任何文本信息都可以放置在标记<-- 和 -->之间。处理指令PI(Processing instruction)可以嵌入到文档中, PI的数据成分可以被处理进程所识别。
创作者也许希望包含一些不被解析器解析的代码。这些代码可以放置到忽略代码段中。可忽略的代码段具备如下的语法:
<[CDATA[被忽略的文字信息]]>
简言之,忽略代码段要以<[CDATA[ and end with ]]> 开始。