У меня проблема с доступом к переменной в XSLT.
Я просто определить вар так:с использованием переменной Xsl
<xsl:variable name="myName" select="@owner"/>
Когда я использую этот код не работает:
<title>{$myName}</title>
, но с этим кодом работает:
<title><xsl:value-of select="$myName"/></title>
Я хочу, чтобы сравнить переменная выше с каждым от объект в XML при значении от сущности равен Myname отобразить некоторый код в противном случае другого дисплей кода
<xsl:for-each select="message">
<xsl:choose>
<xsl:when test="from = $myName">
...
</xsl:when>
<xsl:otherwise>
...
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
XML-файл содержит следующую информацию:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="history.xsl"?>
<history xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="history.xsd" owner="Mike">
<message>
<from>Mike</from>
<to>Gem</to>
<date>2002-09-24</date>
<color>red</color>
<size>20</size>
<family>cursive</family>
<style>overline</style>
<body>welcome</body>
</message>
</history>
Вам необходимо предоставить соответствующий вход XML и нужный вывод XML, чтобы мы могли лучше тренировки проблемы. Похоже, вы хотите 'test =" @ from = $ myName "' (mind the "@") – programaths
Где атрибут «владелец», на который вы ссылаетесь в переменной? – programaths
Вы пытаетесь это сделать: http://xsltransform.net/bwdwsD? – programaths