¿Hay algo como < xsl: url-param name = "color" / > ;?
Pregunta
Si envío esta solicitud a una página:
http://www.server.com/show.xml?color=red&number=two
¿Puedo hacer algo como esto ?:
I like the color <xsl:url-param name="color" /> and the number <xsl:url-param name="number" />.
Si necesita una aclaración de la pregunta, déjeme saber
Gracias por cualquier respuesta,
Chrelad
Solución
No; en general, los motores XSL no están vinculados a un servidor web.
Sin embargo, la mayoría de los motores XSL le permiten pasar algunos parámetros junto con su hoja de estilo y documento, por lo que lo que puede hacer, si lo llama desde un sistema habilitado para la web, es asignar su OBTENGA los parámetros directamente a su motor XSL.
Por ejemplo, si estaba usando PHP, podría hacer algo como esto:
<?php
$params = array(
'color' => No; en general, los motores XSL no están vinculados a un servidor web.
Sin embargo, la mayoría de los motores XSL le permiten pasar algunos parámetros junto con su hoja de estilo y documento, por lo que lo que puede hacer, si lo llama desde un sistema habilitado para la web, es asignar su OBTENGA los parámetros directamente a su motor XSL.
Por ejemplo, si estaba usando PHP, podría hacer algo como esto:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<!-- Remember to pick-up the parameters from the engine -->
<xsl:param name="color" />
<xsl:param name="number" />
<xsl:template match="*">
I like the color <xsl:value-of select="$color" />
and the number <xsl:value-of select="$number" />.
</xsl:template>
</xsl:stylesheet>
Tendrías que asegurarte de desinfectar todo lo que hayas pasado. Entonces, simplemente puedes hacer:
<*>GET['color'],
'number' => No; en general, los motores XSL no están vinculados a un servidor web.
Sin embargo, la mayoría de los motores XSL le permiten pasar algunos parámetros junto con su hoja de estilo y documento, por lo que lo que puede hacer, si lo llama desde un sistema habilitado para la web, es asignar su OBTENGA los parámetros directamente a su motor XSL.
Por ejemplo, si estaba usando PHP, podría hacer algo como esto:
<*>
Tendrías que asegurarte de desinfectar todo lo que hayas pasado. Entonces, simplemente puedes hacer:
<*>GET['number']
);
$xsl = new DOMDocument;
$xsl->load('mystylesheet.xsl');
$xml = new DOMDocument;
$xml->load('mydocument.xml');
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
foreach ($params as $key => $val)
$proc->setParameter('', $key, $val);
echo $proc->transformToXML($xml);
Tendrías que asegurarte de desinfectar todo lo que hayas pasado. Entonces, simplemente puedes hacer:
<*>