Jeff, There are several ways to accomplish content aggregation in Cocoon:
(1) cinclude and xinclude (2) The XSLT document() function (this seems to match your approach best) (3) map:aggregate in a sitemap (4) XSP includes Each method has advantages/disadvantages relative to flexibility, performance, etc. Take a look at the portal framework approach (described in two of the recent Cocoon books). AFAIK they rely on the cinclude/xinclude and customer transformers. -- jack > > Hi there, > > I'm relatively new to Cocoon and XML and I've been lurking on the list for a > while. I have a problem that's stymied me--perhaps someone could help me? I > want to build an aggregate web page from a set of simple XHTML pages by > extracting the contents of their bodies and aggregating them. I have an XML > file that designates the structure of the page: > > <?xml version="1.0"?> > <page> > <column> > <module>AboutIntro.xhtml</module> > <module>AboutQContinued.xhtml</module> > </column> > <column> > <module>AboutQ3.xhtml</module> > </column> > </page> > > I have a stylesheet that I mean to use to aggregate the files, but I haven't > figured out a way to pull in the bodies of the files designated by the XML > above. I've designated below where I've been inserting my test code: > > <?xml version="1.0"?> > <xsl:stylesheet > xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version='1.0'> > <xsl:output method="html" /> > <xsl:template match="/"> > <html> > <xsl:call-template name="page" /> > </html> > </xsl:template> > <xsl:template name="page"> > <xsl:apply-templates/> > </xsl:template> > <xsl:template match="column"> > <p> > <xsl:text>Column</xsl:text> > <br /> > <xsl:apply-templates select="module" /> > </p> > </xsl:template> > <xsl:template match="module"> > <xsl:variable name="mod"> > <xsl:value-of select="." /> > </xsl:variable> > <!-- HERE'S THE MISSING CODE --> > <xsl:text>Module</xsl:text> > <br /> > </xsl:template> > </xsl:stylesheet> > > What's the missing piece? I tried using xinclude and cinclude, but my > impression is that they are intended for an XML file to include another XML > file, not for a stylesheet to include XML. (I do understand that a > stylesheet _IS_ XML, though, so perhaps I just missed how I should have done > that?). I also tried to do a map:aggregate from my pipeline, but couldn't > figure out how to do that based on the contents of my XML file. > > If my approach is misguided, feel free to correct me. Also, if I should know > of other projects doing similar things, do let me know. (I'm just beginning > to read about Forrest, for instance.) > > Thanks, all! > > Jeff > > > > --------------------------------------------------------------------- > 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: <[EMAIL PROTECTED]> > For additional commands, e-mail: <[EMAIL PROTECTED]> > --------------------------------------------------------------------- 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: <[EMAIL PROTECTED]> For additional commands, e-mail: <[EMAIL PROTECTED]>