On 1/31/06, Derek Harmel <[EMAIL PROTECTED]> wrote: > > I don't quite understand how flow is controlled by pipelines. Once control > is passed into a pipeline by a match being found, are subsequent pipelines > that also match ignored? I'm guessing not. > > My problem is that I am trying to access URL's that are not in the sitemap. > If the URL matches a certain pattern, I want to call a PHP page and > aggregate the resultant XML. I have a match that does correctly find the > URL, however the URL also seems to be matching the <map:match > pattern="**.html"> further down in the publication-sitemap.xmap file. The > problem here is that I then end up with a 404 error. > > For the record, the first matching pipeline seems to include everything it > needs to create the appropriate output and I'm not referencing any > "cocoon:/" or "cocoon://" inside of it. > > What am I missing / not understanding? Does my solution involve creating a > new xmap file and passing control to it? For clarification, where does the > processing stop?
For Best Practice XMAP programming, there should be one and only one match for a URL. Use nesting when patterns will overlap: <map:pipeline> <map:match pattern="**"> <map:match pattern="**.html"> <map:match pattern="*/*/*/*/*/jobopenings/*.html"> <!-- Special Case --> </map:match> <!-- Default HTML --> </map:match> <!-- Default (Not HTML) --> </map:match> </map:pipeline> Processing continues through the matches (as if they were IF statements) until the "return" statement: <map:serialize/> solprovider --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]