Foros del Web » Programación para mayores de 30 ;) » Programación General »

XSLT: problema con variable

Estas en el tema de XSLT: problema con variable en el foro de Programación General en Foros del Web. Hola a todos: Soy nueva en este foro y espero que este sea el lugar adecuado donde tengo que hacer este post. Estoy utilizando XSLT ...
  #1 (permalink)  
Antiguo 15/02/2008, 07:41
 
Fecha de Ingreso: febrero-2008
Mensajes: 1
Antigüedad: 16 años, 2 meses
Puntos: 0
XSLT: problema con variable

Hola a todos:

Soy nueva en este foro y espero que este sea el lugar adecuado donde tengo que hacer este post.

Estoy utilizando XSLT y necesito utilizar una variable en un Xpath.
La situacion es la siguiente. Tengo un fichero xml del que tengo que sacar la informacion de un campo (el author de un article).
aa es el prefijo del espacio de nombres que tengo que utilizar.


<xsl:template match="/">

<xsl:value-of select="aa:file/aa:entry/aa:article/aa:author"/>

</xsl:template>


Mi problema es que aa:author debe ser una variable


<xsl:variable name="campo">aa:author</xsl:variable>


la plantilla deberia ser algo asi:


<xsl:template match="/">

<xsl:value-of select="aa:file/aa:entry/aa:article/$campo"/>

</xsl:template>


Pero me da error y me dice que el $ es inesperado y no se como puedo utilizar la variable $campo para que me de el author.

Alguien puede ayudarme?

Gracias a todos
  #2 (permalink)  
Antiguo 16/02/2008, 08:04
Avatar de ivi_333  
Fecha de Ingreso: mayo-2007
Ubicación: Barcelona
Mensajes: 10
Antigüedad: 17 años
Puntos: 0
Re: XSLT: problema con variable

Buenas, asi no te dará error:

<xsl:variable name="autor" select="//nodo/nodo1/nodo2/author" >
La variable autor contiene Owen del XSL.

Para acceder a la variable.
<xsl:value-of select="autor" />

Este seria el xml de ejemplo
<xml...>
<nodo>
<nodo1>
<nodo2>
<author>Owen</author>
</nodo2>
</nodo1>
</nodo>
</xml>

P.D.: Por lo que he visto, sección XSL no hay.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:23.