hola a todos, no se bien donde va este tema asi que me disculpan y que lo pongan en su sitio.
Bueno mi problema es con xml y xsl
Tengo este codigo en xml
Código:
<?xml version="1.0" encoding="iso-8859-15"?>
<?xml-stylesheet type="text/xsl" href="empresas.xsl"?>
<Bolsa dia="5-7-2001" hora="11:34">
<Empresa indice="general">
<Nombre>General Motors</Nombre>
<Simbolo>GMO</Simbolo>
<Precio>28.875</Precio>
</Empresa>
<Empresa indice="tecno">
<Nombre>Adobe</Nombre>
<Simbolo>ADB</Simbolo>
<Precio>92.250</Precio>
</Empresa>
<Empresa indice="tecno">
<Nombre>Microsoft</Nombre>
<Simbolo>MSF</Simbolo>
<Precio>20.313</Precio>
</Empresa>
<Empresa indice="general">
<Nombre>Coca-Cola</Nombre>
<Simbolo>COC</Simbolo>
<Precio>38.895</Precio>
</Empresa>
<Empresa indice="tecno">
<Nombre>Sun Microsystems</Nombre>
<Simbolo>SUN</Simbolo>
<Precio>45.119</Precio>
</Empresa>
</Bolsa>
y tengo este otro en xsl
Código:
<?xml version="1.0" encoding="iso-8859-15"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<html>
<head>
</head>
<body>
<center><h1><xsl:value-of select="/Bolsa/@dia"/>-----<xsl:value-of select="/Bolsa/@hora"/></h1></center>
<table border="1">
<!--CABECERA TITULO DE LA TABLA-->
<tr>
<td>Indice</td>
<td>Nombre</td>
<td>Simbolo</td>
<td>Precio</td>
</tr>
<xsl:for-each select="/Bolsa/Empresa">
<!--ORDENAR POR PRECIO-->
<xsl:sort select="Precio"/>
<!--AQUI FILTRA LOS COLORES , SI ES MAYOR QUE 75 AZUL
SI ES MENOR QUE 25 ROJO-->
<xsl:if test="Precio/text()>'75'">
<style type="text/css">
td {color:blue}
</style>
</xsl:if>
<!--<xsl:if test="Precio/text()<'25'">
<style type="text/css">
td{ color:red;}
</style>
</xsl:if>-->
<tr>
<!--FILTRA CUAL TIENE UN INDICE GENERAL Y CUAL NO
PARA PONER EL *-->
<xsl:if test="@indice!='general'">
<td><xsl:value-of select="@indice"/></td>
<td><xsl:value-of select="Nombre/text()"/></td>
<td><xsl:value-of select="Simbolo/text()"/></td>
<td><xsl:value-of select="Precio/text()"/></td>
</xsl:if>
<xsl:if test="@indice='general'">
<td><xsl:value-of select="@indice"/></td>
<td><xsl:value-of select="concat('*',' ',Nombre/text())"/></td>
<td><xsl:value-of select="Simbolo/text()"/></td>
<td><xsl:value-of select="Precio/text()"/></td>
</xsl:if>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
vale la cosa es que quiero poner en la tabla que de colores, es decir, que para las empresas cuyo precio sea mayor que 75 aparezcan en azul y a las menores de 25 aparezca las celdas rojas. El problema es que me sale siempre azul, al poner el estilo con td, pero es que no se como ponerlo.
Espero su ayuda por favor.
Gracias
EDITO: ME SALE EL ERROR: ERROR LECTURA XML MAL FORMADO SI PONGO LO QUE HAY DENTRO DEL COMENTARIO QUE ES ESTO:
<!--<xsl:if test="Precio/text()<'25'">
<style type="text/css">
td{ color:red;}
</style>
</xsl:if>-->
PD: LAS MAYUSCULAS SON PARA RESALTAR NO PARA GRITAR