cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sebastien Arbogast <sebastien.arbog...@gmail.com>
Subject Re: Something I don't understand in i18n sample
Date Wed, 13 Apr 2005 07:10:16 GMT
Thank you very much.

On 4/13/05, Leszek Gawron <lgawron@apache.org> wrote:
> Sebastien Arbogast wrote:
> > Hi,
> >
> > In the i18n sample sitemap there is a resource declaration like this :
> >
> > <map:resource name="composite">
> >       <map:aggregate element="root">
> >         <map:part src="cocoon:/menu/{../0}"/>
> >         <map:part src="cocoon:/content/{../0}" label="content"/>
> >       </map:aggregate>
> >       <map:transform src="simple2page.xsl">
> >         <map:parameter name="page" value="{../0}"/>
> >         <map:parameter name="locale" value="{../../locale}"/>
> >       </map:transform>
> >       <map:transform
> > src="context://samples/common/style/xsl/html/complex-page2html.xsl">
> >         <map:parameter name="contextPath" value="{request:contextPath}"/>
> >       </map:transform>
> >       <map:serialize type="html"/>
> >     </map:resource>
> >
> > I don't understand the references to {../0}. What does this mean exactly ?
> > I don't understand the notation {../../locale} for the locale
> > parameter either. BTW there is a similar think in a pattern matching
> > further in the file :
> >
> > <map:match pattern="content/*.xml">
> >           <map:generate src="{1}.xml"/>
> >           <map:transform type="i18n">
> >             <map:parameter name="locale" value="{../locale}"/>
> >           </map:transform>
> >           <map:serialize/>
> >         </map:match>
> >
> > And I don't understand why the value for the locale parameter is
> > {../locale} and not {locale} as it's said in javadoc that LocaleAction
> > provides with a {locale} variable.
> > Any ideas of explanation ?
> >
> > Thank you in advance.
> >
> every matcher, action etc. puts it's parameters on the stack. If you do:
> 
> <map:act type="foo"> <!-- this one puts "bar" on the stack -->
>    <map:match pattern="*-*.xml"> <!-- this one puts "1" and "2" on the
> stack -->
>      <map:generate src="{../bar}-{1}##{2}.xml"/> <!-- bar is not on top
> of the stack, use ../ to go deeper -->
>      <map:serialize/>
>    <map:match/>
> </map:act>
> 
> {0} in case of matcher refers to full matched string so in case of
> foo-bar.xml and *-*.xml pattern:
> 
> {1} - foo
> {2} - bar
> {0} - foo-bar.xml
> 
> --
> Leszek Gawron                                                 MobileBox
> lgawron@apache.org                              http://www.mobilebox.pl
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
> For additional commands, e-mail: users-help@cocoon.apache.org
> 
> 


-- 
Sebastien ARBOGAST

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


Mime
View raw message