当前位置:编程学习 > C#/ASP.NET >>

XML简明教程(五)

答案:五、一个应用了xml、schema和xlst的例子
    通过上面的介绍,大家可能都已经跃跃欲试,想自己做一个XML方面的小应用了。那么在这里就满足大家的要求,举一个比较

全面的有实际意义的例子。

   假如有一个订单要处理,订单的基本内容包括客户的信息和产品信息两个部分。

   客户信息主要由客户姓名、电话、传真、地址组成。

    产品信息由编号、名称、规格、价格、购买数量组成。

    为了写一个标准的XML文档,首先要写一个Schema来对XML文档进行约束:

下载该文件:
点击浏览该文件 

以下内容为程序代码:

<?xml version="1.0" encoding="GB2312"?>
<Schema xmlns="urn:schemas-microsoft-com:xml-data"
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<ElementType name= "姓名"/>
<ElementType name= "电话"/>
<ElementType name= "传真"/>
<ElementType name= "地址"/>
<ElementType name= "编号"/>
<ElementType name= "名称"/>
<ElementType name= "规格"/>
<ElementType name= "价格"/>
<ElementType name= "购买数量"/>
<ElementType name= "客户" content="eltOnly">
<element type= "姓名"/>
<element type= "电话"/>
<element type= "传真"/>
<element type= "地址"/>
</ElementType>
<ElementType name= "产品" content="eltOnly">
<element type= "名称" />
<element type="规格"/>
<element type="价格"/>
<element type="购买数量"/>
</ElementType>
<ElementType name= "订单" content="eltOnly">
<element type= "客户" />
<element type="产品"/>
</ElementType>
<ElementType name= "全部订单" content="eltOnly">
<element type= "订单" />
</ElementType>
</Schema>



   可以把上面的Schema文档存储为:Sch.xml,在下面的xml文档中会用到这个Schema。

   下面是根据上面的约束写的一段XML文档:

下载该文件:
点击浏览该文件 

以下内容为程序代码:

<?xml version="1.0" encoding="GB2312"?>
<?xml:stylesheet type="text/xsl" href=><全部订单 xmlns="x-schema:Sch.xml">
<订单>
<客户>
<名称>张立东</名称>
<电话>010-12345678</电话>
<传真>010-87654321</传真>
<地址>北京市 海淀区</地址>
</客户>
<产品>
<名称>扳手</名称>
<价格>10</价格>
<规格>中</规格>
<购买数量>2</购买数量>
</产品>
</订单>
</全部订单>



   下面是对XML进行处理的S2_xls.xslt的内容:

下载该文件:
点击浏览该文件 

以下内容为程序代码:

<?xml version="1.0" encoding="GB2312"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<HTML>
<HEAD>
<TITLE>全部订单</TITLE>
</HEAD>
<BODY>
<h1>订单内容</h1>
<xsl:for-each select="全部订单/订单">
<TABLE border="1" >
<TR>
<TH>客户名称:</TH><TD><xsl:value-of select="客户/名称"/></TD>
<TH>电话</TH><TD><xsl:value-of select="客户/电话"/></TD>
<TH>传真</TH><TD><xsl:value-of select="客户/传真"/> </TD>
</TR>
<TR>
<TH>地址</TH><TD colspan="5"><xsl:value-of select="客户/地址"/></TD>
</TR>
</TABLE>
<TABLE border="1" >
<TR>
<TH>产品名称:</TH><TD><xsl:value-of select="产品/名称"/></TD>
<TH>价格</TH><TD><xsl:value-of select="产品/价格"/></TD>
<TH>规格</TH><TD><xsl:value-of select="产品/规格"/> </TD>
</TR>
<TR>
<TH>购买数量</TH><TD colspan="5"><xsl:value-of select="产品/购买数量"/></TD>
</TR>
</TABLE>
</xsl:for-each>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>


    把上面的Schema和XSLT按照例子中的名字存储到磁盘,然后把XML的内容存储成为文件,放到相同的子目录下,然后用IE 5.0

进行解析处理,就会看到符合Schema要求、经过XSLT处理的文档了.

上一个:XML简明教程(六)
下一个:XML简明教程(四)

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,