Tengo un pequeño problemilla con un ejercicio que tengo que hacer aver si me podeis explicar porque no funciona.
tengo un xml con la siguiente estructura
cutre verdad?
pego aki un xsl que he creado
--------------------XSL------------------------
Código:
<?xml version='1.0' encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<HTML>
<HEAD><TITLE>P5</TITLE></HEAD>
<BODY>
<xsl:for-each select="/biblioteca/usuarios/usuario">
<P><B>Usuario: </B><xsl:value-of select="nombre"/>
<B>Dni: </B><xsl:value-of select="@dni"/></P>
<xsl:for-each select="prestamos/prestamo">
<xsl:value-of select="@isbn"/>*
<xsl:for-each select="/biblioteca/libros/materia">
<xsl:for-each select="libro">
<xsl:if test="@isbn = ../../usuarios/usuario/@isbn">
<xsl:value-of select="@isbn"/>*L*
</xsl:if>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
</BODY>
</HTML>
</xsl:template>
</xsl:stylesheet>
La idea es que para cada usuario cojer el codigo del libro que ha sacado de la biblioteca luego ir a los libros de la biblioteca y si el libro existe que lo imprima. por alguna razon no funciona el if y nose porque.
si le quito el if me imprime por cada codigo de libro del usuario todos los libros de la biblioteca, sin embargo yo solo kiero q imprima los q coinciden con el que el susodicho usuario a sakado.
ah! se me olvidaba que los codigos del libro son atributos de libro y de prestamo con el nombre isbn
nose si me e explicado con claridad pero es jodida la cosa. aver si alguien me puede ayudar y muchas gracias