XML簡明教程(五)

來源:互聯網
上載者:User
 
五、一個應用了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="S2_xls.xslt"?>
<全部訂單 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處理的文檔了.

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.