On Fri, 2003-06-20 at 16:25, Upayavira wrote:
> > Yes. Exactly that. Is that possible?
> 
> Hmm. As I was writing that I was hoping you weren't going to say yes!!
> 
> Anyway, I have built something similar recently, although I didn't have the two 
> sitemaps, I did it all with one.
> 
> I used stuff like:
> 
> <map:match pattern="*/page.html">
>   <map:generate src="skins/{1}/config.xml"/>
>   <map:transform src="common/prepare.xsl"/>
>   <map:transform src="skins/{1}/skin.xsl">
>     <map:parameter name="skin" value="{1}"/>
>   </map:transform>
>   <map:serialize type="html"/>
> </map:match>
> 
> There you have a site that'll work for the following structure:
> 
> root/
>   sitemap.xmap
>   skins/
>     foo/
>       config.xml
>       skin.xsl
>     bar/
>       config.xml
>       skin.xsl
>   common/
>     prepare.xsl
> 

Yes, that is very clever, I didn't think of that; that even works if you
need to match multiple pages by using two wildcards, like "*/**.html". 
but ...

> With a system like that, you can have some files accessed from your 'skins' 
> directory 
> structure, and others from your common shared files, depending upon whether you 
> want them shared or separate.
> 
> Then you just need an error handling pipeline to catch those situations where the 
> URL doesn't match a valid skin.
> 
> Make sense? Does this do what you want?
> 

Almost, but I need to switch based on host name. Perhaps if I could make
the result of the host name comparison a variable, like {1} is for
wildcard matches, that would work perfectly. I just tried this
experiemnt:

<map:pipeline>
  <map:match pattern="">
    <map:select type="host">
      <map:redirect-to uri="{host}/test.html"/>
    </map:select>
  </map:match>
</map:pipeline>

where host was a previously defined HostSelector. Of course it didn't
work!

Do you know of another way? I kind of need variables, although I would
probably think less highly of Cocoon if it provided them: who wants to
program in XML?

Thanks for your help!

> Regards, Upayavira
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to