菜鸟问:XSL可否解决这样的问题?难~~~~~~~~

几个关于属性的问题
1.假设:

1<data>
2<item checked="true">Item1</item>
3<item checked="false">Item2</item>
4<item checked="false">Item3</item>
5<item checked="false">Item4</item>
6<item checked="false">Item5</item>
7</data>

我要转换成:

1<select>
2<option selected="selected">Item1</option>
3<option>Item2</option>
4<option>Item3</option>
5<option>Item4</option>
6<option>Item5</option>
7</select>

如何??

2.将节点的值嵌入到属性内部

1<data>
2<link id="localhost"/>localhost   
3<link id="csdn"/>www.csdn.net   
4</data>

转换为

1<a href="http://localhost" id="a_localhost">localhost</a>
1<br/>
1<a href="http://www.csdn.net" id="a_csdn">csdn</a>
1<br/>

如何实现??

3.如果XSL文件中,那个文件使用来讲XML转换为HTML的,里面有个script标签,标签里面的脚本很多,若是手工将里面的符号转换为XML转译符泽太麻烦,以前听说用CDATA来实现,可否举个例子?

---------------------------------------------------------------

随着XML技术的发展和普及,我们可以预见到XML数据必定成为将来网络上商业数据交换的首选。XML数据接口会成为所有商业软件的标准配置,虽然,一般的用户可能感觉不到她的存在,但是XML数据会无所不在。
在现实世界中,存在有大量的传统数据,他们遍及企业的各个角落,如数据库数据,文本文件以及大量的传统格式的商业数据(EDI/SAP...)。如何把这些数据转变成XML数据?我们知道XSLT可以帮助我们转换XML数据,或者通过流览器的内嵌XSLT的转换引擎,转换XML数据到HTML网页,实现了网页表现和数据的隔离。这确实是令人兴奋的技术。但是,XSLT没有解决上面所提到的传统数据与XML数据的互相转换。并且编写XSL的转换模板,实在是一件令人生畏的事情。本人对XSLT的语法算略通一二,常常编写XSLT需要查阅手册, 颇费周折。最近,本人发现一个XML转换工具 - MagicGate Transform,她提供一个非常吸引人的用户界面,支持数据库数据到XML的转换和简单文本文件到XML的转换。此软件最棒的功能是可以用拖拽的方式生成转换模板(一种XML格式,但应该不是XSLT模板),做到了所见即所得。
有兴趣的,可以到他们的网站下载试用版。http://www.magicmessage.com

---------------------------------------------------------------

try something like

1.

 1<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 2<xsl:output indent="yes" method="xml"></xsl:output>
 3<xsl:template match="data">
 4<select>
 5<xsl:apply-templates></xsl:apply-templates>
 6</select>
 7</xsl:template>
 8<xsl:template match="item">
 9<option>
10<xsl:if test="@checked = 'true'">
11<xsl:attribute name="selected">selected</xsl:attribute>
12</xsl:if>
13<xsl:value-of select="."></xsl:value-of></option>
14</xsl:template>
15</xsl:stylesheet>

2.

 1<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 2<xsl:output indent="yes" method="xml"></xsl:output>
 3<xsl:template match="data">
 4<xsl:apply-templates></xsl:apply-templates>
 5</xsl:template>
 6<xsl:template match="link">
 7<a href="http://{.}" id="a_{@id}">
 8<xsl:value-of select="@id"></xsl:value-of></a>
 9</xsl:template>
10</xsl:stylesheet>

3.
<[CDATA[....any html code here.... ]]>

Published At
Categories with Web编程
Tagged with
comments powered by Disqus