cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeff Ramsdale" <jefe...@earthlink.net>
Subject Aggregating XML
Date Wed, 29 Jan 2003 19:15:37 GMT
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:     <cocoon-users-unsubscribe@xml.apache.org>
For additional commands, e-mail:   <cocoon-users-help@xml.apache.org>


Mime
View raw message