[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: The XSL-List Digest V3 #329

Subject: RE: The XSL-List Digest V3 #329
From: "Peter McEvoy" <peter.mcevoy@xxxxxxxx>
Date: Tue, 7 Nov 2000 11:49:12 -0000
xsl footer
> Subject: outputting partial html from a template
>
> I have a chunk of HTML which I would like to put in a header
> template so that I
> can include it at the top of all of my pages.  The problem is
> that this chunk
> of HTML has an opening <td> tag, but no closing one.  The closing
> </td> will be
> at the end of the page, after the page content (outside of the header
> template).  Is there a way in XSL to say "everything within this
> tag should be
> copied literally and not validated by the XSL parser"?  I've
> tried <xsl:text>,
> <xsl:copy>, and <xsl:copy-of>.
>   I'm using Resin/1.2.b2 and I don't know if this particular
> parser wants all
> tags to be closed within the same template, or if that is a
> general XSL-ism.
> Can I open a <td> tag in one template and close it in another?
>    Any help would be appreciated.
>   -M@


I must say that I had this exact problem that I wanted to solve, and while
one of the follow-ups suggests that it is not possible, aceiving your end
result IS possible.

For example, take 3 XSL sheets:

            Page.xsl
             /    \
   header.xsl      footer.xsl

page.xsl looks something like this (html and xsl has been simplified and
names have been changed to protect the innocent)


-------------------------------------------------------------------------
... header stuff ...
<xsl:include href="header.xsl"/>
<xsl:include href="footer.xsl"/>

<xsl:template match="page">
<HTML>
   <HEAD>
      <TITLE>Your title</TITLE>
   </HEAD>
   <BODY>
      <center>Welcome
      <table>
          <tr>
               <td>
                  <xsl:apply-templates select="header">
               </td>
         </tr>
         <tr>
                <td>main content</td>
         </tr>
         <tr>
               <td>
                  <xsl:apply-templates select="header">
               </td>
         </tr>
      </table>
   </BODY>
</HTML>
</xsl:template>

then header.xsl actually contains AN ENTIRE table element itself that
formats you header.  It still obeys the rules of all tags must be closed:

--------------------------------------
...header stuff....
<xsl:template match="header">
  <TABLE>
    <TR>
      <td> My Header </td>
    </TR>
  </TABLE>
</xsl:template>

Do the same then for your footer and sure you'll be laughin'...

Pete


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.