You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by "cavallino_mail.zeelandnet.nl" <ca...@zeelandnet.nl> on 2002/12/18 09:53:03 UTC

!!! NEED HELP for Passing request parameters - and making use of them in the XSL

I want to do that too but then with XPath. I want to transform my Xpath 
results into HTML.

In IExplore I go to an URL which contains xpath parameters. Then when I don't 
put in a transform or anything like that I just get a page in XML with the 
results of my query. In that case XPath has added a couple attributes to the 
result like the locations and the filenames of the results. I need that 
information for my stylesheet. 
Now I need to transform that automatically into HTML. But I have no idea how 
to do that. I tried just using a transform but if I do that it shows the 
stylesheet without the XML page I had without the transformation. So the 
result table I made in the stylesheet is shown but there's no data in it.
I can't just pass the XPath parameters that only contains my query and I need 
the results to. Or can I do that some way?

Can anyone help because I need to solve this very badly, thanx

Sebastiaan

>===== Original Message From "Lenya L. Khachaturov" 
<le...@chemsell.yaroslavl.ru> =====
>Hello,
>
>It seems like everybody knows how to do this, at least the docs mention
>this so briefly, that it must be dead simple. Anyway, I didn't get it :-)
>Please help me on this:
>
><map:match pattern="archives/**">
>...
><map:transform src="my.xsl" type="xslt">
>  <map:parameter name="param" value="{1}">
></map:transform>
>...
></map:match>
>
>Now, when I point the browser to http://mysite/archives/december,
>the parameter named "param" with the "december" value should be passed to
>the stylesheet. In the stylesheet I have: <xsl:param name="param" />
>As far as I understood, <xsl:value-of select="param"> should print
>"december" - right? Well, it doesn't. What am I doing wrong?
>
>--
>Lenya Khachaturov
>mailto:lenya@chemsell.yaroslavl.ru
>
>---------------------------------------------------------------------
>Please check that your question  has not already been answered in the
>FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
>To unsubscribe, e-mail:     <co...@xml.apache.org>
>For additional commands, e-mail:   <co...@xml.apache.org>



---------------------------------------------------------------------
Please check that your question  has not already been answered in the
FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>

To unsubscribe, e-mail:     <co...@xml.apache.org>
For additional commands, e-mail:   <co...@xml.apache.org>


RE: !!! NEED HELP for Passing request parameters - and making use of them in the XSL

Posted by Conal Tuohy <co...@paradise.net.nz>.
Lenya's example is correct AFAIK:

<map:match pattern="archives/**">
   ...
   <map:transform src="my.xsl" type="xslt">
      <map:parameter name="param" value="{1}">
   </map:transform>
   ...
</map:match>

In the XLST:

   ...
   <xsl:param name="param"/>
   ---
   <xsl:value-of select="$param"/>

Note the $ in the value-of expression (I think this is Lenya's mistake -
<xsl:value-of select="param"> will refer to a probably non-existent <param>
element, and return an empty string).

AFAIK you can't really use an XPath expression passed this way. The XSLT
parameter will be a string, and there's no way to evaluate that as a kind of
macro in XSLT. If your XPath expression was always in some simple format
like "id('foo')" or "/foo[1]/bar[3]/baz[2]" it would be easy to parse, but
for general XPath you don't want to parse it in XSLT!!!

You could try using the XIncludeTransformer, or the XPathTransformer in
Forrest, more like it.

Cheers

Con

> -----Original Message-----
> From: cavallino_mail.zeelandnet.nl [mailto:cavallino@zeelandnet.nl]
> Sent: Wednesday, 18 December 2002 21:53
> To: cocoon-users@xml.apache.org
> Subject: !!! NEED HELP for Passing request parameters - and making use
> of them in the XSL
>
>
> I want to do that too but then with XPath. I want to
> transform my Xpath
> results into HTML.
>
> In IExplore I go to an URL which contains xpath parameters.
> Then when I don't
> put in a transform or anything like that I just get a page in
> XML with the
> results of my query. In that case XPath has added a couple
> attributes to the
> result like the locations and the filenames of the results. I
> need that
> information for my stylesheet.
> Now I need to transform that automatically into HTML. But I
> have no idea how
> to do that. I tried just using a transform but if I do that
> it shows the
> stylesheet without the XML page I had without the
> transformation. So the
> result table I made in the stylesheet is shown but there's no
> data in it.
> I can't just pass the XPath parameters that only contains my
> query and I need
> the results to. Or can I do that some way?
>
> Can anyone help because I need to solve this very badly, thanx
>
> Sebastiaan
>
> >===== Original Message From "Lenya L. Khachaturov"
> <le...@chemsell.yaroslavl.ru> =====
> >Hello,
> >
> >It seems like everybody knows how to do this, at least the
> docs mention
> >this so briefly, that it must be dead simple. Anyway, I
> didn't get it :-)
> >Please help me on this:
> >
> ><map:match pattern="archives/**">
> >...
> ><map:transform src="my.xsl" type="xslt">
> >  <map:parameter name="param" value="{1}">
> ></map:transform>
> >...
> ></map:match>
> >
> >Now, when I point the browser to http://mysite/archives/december,
> >the parameter named "param" with the "december" value should
> be passed to
> >the stylesheet. In the stylesheet I have: <xsl:param name="param" />
> >As far as I understood, <xsl:value-of select="param"> should print
> >"december" - right? Well, it doesn't. What am I doing wrong?
> >
> >--
> >Lenya Khachaturov
> >mailto:lenya@chemsell.yaroslavl.ru
> >
> >---------------------------------------------------------------------
> >Please check that your question  has not already been answered in the
> >FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
> >
> >To unsubscribe, e-mail:     <co...@xml.apache.org>
> >For additional commands, e-mail:   <co...@xml.apache.org>
>
>
>
> ---------------------------------------------------------------------
> Please check that your question  has not already been answered in the
> FAQ before posting.     <http://xml.apache.org/cocoon/faq/index.html>
>
> To unsubscribe, e-mail:     <co...@xml.apache.org>
> For additional commands, e-mail:   <co...@xml.apache.org>
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-users-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-users-help@xml.apache.org