У меня есть следующий xml документ:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="egg.xsl"?>
<recipe>
<name>Boiled eggs</name>
<portion>4</portion>
<preparation value="1" unit="min"/>
<cooking value="3" unit="min"/>
<ingredients>
<i><name id="ing1">eggs</name><nb>4</nb></i>
</ingredients>
<guide>
*Insert steps here* boil for <cooking value="3"
unit="min"/> minutes. *More steps*
</guide>
</recipe>
И я пытаюсь использовать следующий код xsl:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:variable name="space"><xsl:text> </xsl:text></xsl:variable>
<xsl:template match="/">
<html>
<head>
<title><xsl:value-of select='recipe/name'/></title>
</head>
<body>
<h1><xsl:value-of select='recipe/name'/></h1>
<p>Portion: <xsl:value-of select='recipe/portion'/><br/>
Preparation: <xsl:value-of select='recipe/preparation/@value'/><xsl:value-of select="$space"/><xsl:value-of select='recipe/preparation/@unit'/><br/>
Cooking: <xsl:value-of select='recipe/cooking/@value'/><xsl:value-of select="$space"/><xsl:value-of select='recipe/cooking/@unit'/><br/>
Ingredients: </p>
<ul>
<xsl:for-each select="recipe/ingredients/i">
<li>
<xsl:choose>
<xsl:when test="nb">
<xsl:value-of select="nb"/><xsl:value-of select="$space"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="weight"/><xsl:value-of select="$space"/><xsl:value-of select="weight/@unit"/>s<xsl:value-of select="$space"/>of
</xsl:otherwise>
</xsl:choose>
<xsl:value-of select="name"/>
</li>
</xsl:for-each>
</ul>
<p>Guide:<br/>
</p>
<p><xsl:value-of select="recipe/guide"/></p>
</body>
</html>
</xsl:template>
Однако <xsl:value-of select="recipe/guide"/>
не показывает стоимость приготовления / @ value (здесь это 3), и я не понимаю, как создать шаблон для его работы. Сейчас я получаю <p>*Insert steps here* boil for minutes. *More steps*</p>