Получение значения атрибута с использованием пространства имен и xslt - PullRequest
1 голос
/ 31 августа 2011
<Product xmlns:fish="urn:fish.com:international">
      <Assets fish:relativePath="013\7614500010013">
      </Assets> 
</Product>

Мне нужно иметь возможность получить атрибут ресурса fish :lativePath с xslt.Как мне это сделать?

Я уже поместил пространство имен рыбы в заголовок xslt.

        <xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:asp="remove" 
xmlns:fish="urn:fish.com:international">

Заранее спасибо.

1 Ответ

3 голосов
/ 31 августа 2011

Создайте шаблон для узла Assets, который обращается к атрибуту с помощью @, затем примените этот шаблон:

<xsl:stylesheet version="1.0" 
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
                xmlns:asp="remove" 
                xmlns:fish="urn:fish.com:international">

  <xsl:template match="/">
    <xsl:apply-templates select="/Product/Assets"/>
  </xsl:template>

  <xsl:template match="Assets">
    <xsl:value-of select="@fish:relativePath"/>
  </xsl:template>

</xsl:stylesheet>
...