Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2009, 12:45
Avatar de Zaseg
Zaseg
 
Fecha de Ingreso: marzo-2009
Mensajes: 3
Antigüedad: 15 años, 11 meses
Puntos: 0
Uso de variables en xsl:value-of select="@numero"/>

Hola,

tengo un archivo xml que contiene valores del tipo, tiene que ser de esta forma, no es valido de otra
<personas>
<persona1>
<nombre>Jaime</nombre>
<apellido>Mora</apellido>
</persona1>
<persona2>
<nombre>Marcos</nombre>
<apellido>Barrero</apellido>
</persona2>
</personas>

Y el XSL

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="web xml" xmlns:fo="webxml/Format">
<xsl:output method="xml" version="1.0" encoding="ISO-8859-1" indent="no"/>
<xsl:variable name="num">1</xsl:variable>
<xsl:variable name="prueba" select="concat('persona',$num,'/nombre')"/>

<xsl:template match="personas"> <fo:root xmlns:fo="web xml/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="all-pages">
<fo:region-body margin="1in"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="all-pages">
<fo:flow flow-name="xsl-region-body">
<fo:block font-family="Times" font-size="14pt" text-align="center" space-after="16pt">
Nombre: <xsl:value-of select="$prueba"/>
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
</xsl:template>


Mi intención es que al poner Nombre: <xsl:value-of select="$prueba"/>
me aparezca por pantalla Nombre: Jaime, y lo que me aparece es Nombre: persona1/nombre

Estoy usando XSL para formar PDF, pero esto no creo que debiese variar.

He probado ponerlo entre llaves <xsl:value-of select="{$prueba}"/> y no aparece nada, solo aparace Nombre:

¿Alguna idea de como hacerlo?

He quitado los enlaces xml ya que no me permite añadir direcciones web por ser un usuario recién creado.

Gracias por vuestra ayuda

Última edición por Zaseg; 03/03/2009 a las 12:54