以文本方式查看主题 - 中文XML论坛 - 专业的XML技术讨论区 (http://bbs.xml.org.cn/index.asp) -- 『 XSL/XSLT/XSL-FO/CSS 』 (http://bbs.xml.org.cn/list.asp?boardid=8) ---- 使用xsl时,如何处理带有名字空间前缀的元素? (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=12225) |
-- 作者:stonewx -- 发布时间:11/22/2004 6:06:00 PM -- 使用xsl时,如何处理带有名字空间前缀的元素? RSS 2.0中的元素 - <item> <dc:creator>SmartItem</dc:creator> 引用时使用<xsl:value-of select="dc:creator"/>出错,提示 Code: 0x80004005 我使用的是MSXML的XSL处理引擎.
|
-- 作者:doubleG -- 发布时间:11/23/2004 9:02:00 AM -- 在你的XSL中也要声明这个名称空间dc,当然名字叫什么可以改变,但是xmlns=后面的内容不便就行了。 |
-- 作者:stonewx -- 发布时间:11/23/2004 10:20:00 AM -- 不好意思,搞不掂! <?xml version='1.0' encoding='GB2312'?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > <xsl:output method="html"/> <xsl:template match="/rss"> <xsl:value-of select="@xmlns:dc"/> 这句如果写在 <xsl:template match="/rss"> 之前好像无效。 具体该如何写,写在何处? |
-- 作者:doubleG -- 发布时间:11/23/2004 1:26:00 PM -- 我不是那个意思啊,是指加在<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > 中阿,就是这样 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dc="....................">然后就那样select就可以了。 |
-- 作者:stonewx -- 发布时间:11/23/2004 2:29:00 PM -- 这我知道,可是我是要将一个xml转换成html文件,而xml是的定义了几个xmlns。 <xsl:value-of select="@xmlns:dc"/>是从源文件读得名字空间。 如:A.xml 要取得dc:a元素,在xsl中该如何处理 |
-- 作者:doubleG -- 发布时间:11/23/2004 2:45:00 PM -- 我的意思就是,你在xml中用到了哪些名称空间,你就需要在xsl中也要声明哪些名称空间,如果不声明的话,当遇到诸如dc:creator这样的时候,他就根本不知道dc是哪个名称空间,当然找不到了,如果你直接用creator的话,那么他就会按照默认的名称空间去取,当然也找不到了。你就把你所有用到的名称空间都要在xsl中声明一遍就可以了。 |
-- 作者:stonewx -- 发布时间:11/23/2004 3:29:00 PM -- 我想的是根据源xml文件动态取得xmlns,而不是在xsl中预定义 |
-- 作者:doubleG -- 发布时间:11/23/2004 4:13:00 PM -- 但是你这样动态取得的话,原先的xsl还是不知道你的名称空间是什么,那样是行不通的。 |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
78.003ms |