+ -
当前位置:首页 → 问答吧 → >>>>>>>>>>>>>>求助高人:关于xslt命名空间的问题<&l

>>>>>>>>>>>>>>求助高人:关于xslt命名空间的问题<&l

时间:2010-11-09

来源:互联网

我现在遇到如下问题,恳请各位大侠帮忙。。不胜感激
我现在有如下XML

XML code

<z:row xmlns:z='#RowsetSchema' 
ows_personcol4='administrator' 
ows_Author='1;#administrator' 
ows_Modified='2010-11-08 15:39:45' 
ows_Last_x0020_Modified='2;#2010-11-08 15:39:46' ows_ServerRedirected='0'/>



以及如下xslt
XML code

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"  
                 xmlns="http://www.abc.com/NET/eiwm"
                xmlns:vl="http://www.abc.com/NET/List" 
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform"         
                xmlns:eiwm="http://www.abc.com/NET/eiwm" 
                  >
  <xsl:output method="xml"   encoding="utf-8"   indent="yes"/>
  <xsl:template  match="@* | node()">
    <xsl:element  name="vl:NETList" >
      <xsl:element name="Template">
        <xsl:choose >
          <xsl:when  test="@ows_Author">
            <xsl:element   name="ID">
              <xsl:value-of  select="@ows_personcol4"/>
            </xsl:element>
            <xsl:element  name="Object">
              <xsl:element name="ID">
                <xsl:element  name="Context">
                  <xsl:element name="ID">
                    <xsl:value-of select="@ows_personcol4"/>
                  </xsl:element>
                </xsl:element>
              </xsl:element>
            </xsl:element>
            <xsl:element name="Characteristic">
              <xsl:element name="Name">参与人员</xsl:element>
              <xsl:element name="Value">
                <xsl:value-of select="@ows_personcol4"/>
              </xsl:element>
            </xsl:element>
          </xsl:when>
          <xsl:otherwise>
          </xsl:otherwise>
        </xsl:choose>
      </xsl:element>
    </xsl:element>
  </xsl:template>



经过XSLT转换过后的XML结果如下

XML code

<?xml version="1.0" encoding="utf-8"?>
<vl:NETList xmlns:vl="http://www.abc.com/NET/List">
  <Template xmlns="http://www.abc.com/NET/eiwm">
    <ID>administrator</ID>
    <Object>
      <ID>
        <Context>
          <ID>administrator</ID>
        </Context>
      </ID>
    </Object>
    <Characteristic>
      <Name>参与人员</Name>
      <Value>administrator</Value>
    </Characteristic>
  </Template>
</vl:NETList>



请问应该如何修改,才能生成出来的XML从
<?xml version="1.0" encoding="utf-8"?>
<vl:NETList xmlns:vl="http://www.abc.com/NET/List">
  <Template xmlns="http://www.abc.com/NET/eiwm">
  <ID>administrator</ID>
变成
<?xml version="1.0" encoding="utf-8"?>
<vl:NETList xmlns:vl="http://www.abc.com/NET/List" xmlns="http://www.abc.com/NET/eiwm">
  <Template>
  <ID>administrator</ID>


再次感谢!

作者: wayne_0523   发布时间: 2010-11-09

自己先顶一下~

作者: wayne_0523   发布时间: 2010-11-09

抱歉啊,我是想问个问题,但是我很久没用论坛了,因此分不够,不能发帖,只能回复,所以借楼主的这个宝地想问个问题,也是有关XSLT的。
在一个XLST文档中
<xsl:template match="//name">
<xsl:element name="td"><xsl:value-of select=".[@id$eq$'2']"/></xsl:element>
</xsl:template>

在用XML Spy软件编译这段代码时总是报错,
为什么A?


谢谢!

作者: Shgrila_1216   发布时间: 2010-11-09