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]