XML XQuery
--XQuery 基于现有的 XPath 查询语言,并支持更好的迭代、更好的排序结果以及构造必需的 XML 的功能。
--1.声明一个 xml 类型的变量,然后使用 xml 数据类型的 query() 方法来查询此变量
DECLARE @x xml
SET @x = '<ROOT><a>111</a></ROOT>'
SELECT @x.query('/ROOT/a')
--查找属性aid=20的a节点
DECLARE @x xml
SET @x = '<ROOT>
<a aid="10">10</a>
<a aid="20">20</a>
</ROOT>'
SELECT @x.query('/ROOT/a[@aid=20]')
--2.询是针对 AdventureWorks 数据库中 ProductModel 表的 xml 类型的 Instructions 列指定的。
--查找条件ProductModelID=7,属性LocationID=10的Location节点
SELECT Instructions.query('declare namespace AWMI="http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions";
/AWMI:root/AWMI:Location[@LocationID=10]
') as Result
from Production.ProductModel
WHERE ProductModelID=7
--XQuery 包含命名空间声明(declare namespace AWMI=...)和查询表达式(/AWMI:root/AWMI:Location[@LocationID=10])。
DECLARE @x xml
SET @x = '<ROOT>
<a aid="10">10</a>
<a aid="20">20</a>
</ROOT>'
SELECT @x.query('/ROOT/a[@aid=20]')
相关文档:
XML Schema 中 import 和 include 的区别
XML Schema 允许将一个XSD文件分为几个文件存放,在必要时使用 import 或者 include 进行导入。这二者的区别是:
import:只能导入不同命名空间的XSD
include:只能导入相同命名空间的XSD,或被导入的XSD未声明命名空间
例子:
<xsd:import namespace=”http://acme ......
读:
//打开某文件(假设web.config在根目录中)
string filename=Server.MapPath("/") + @"WebApplication1\web.config";
XmlDocument xmldoc= new XmlDocument();
xmldoc.Load(filename);
//得到顶层节点列表
XmlNodeList topM=xmldoc.DocumentElement.ChildNodes;
foreach(XmlElement element in topM)
{
if(ele ......
最近做的一个项目中运用 xml 数据岛技术,所以把数据岛方面的知识总结一下。
XML 数据岛 ( data islands )就是被 html 页面引用或者包含的 xml 数据,是从 IE5 开始引入的一项技术。可以通过 xml 标签很轻松将数据岛插入到 html 文档中。那么怎么访问 xml 数据岛的数据呢,很简单,通过 xml 的 id 。在页 ......
在Perl中解析XML的方法最常见的就是使用 XML::DOM
和 XML::Simple了。
XML::DOM过于庞大,而且解析结果是一个DOM树,操作也不方便。
对于小型且不复杂的XML文件,XML::DOM真是杀鸡用牛刀。
这时就轮到轻便的XML::Simple上场了。
XML::Simple如其名,真的很简单。假设XML内容如下:
<opt>
<user login= ......