Altova Mailing List Archives

RE: [xsl] XSL to HTML --> XHTML?

From: "Andreas L. Delmelle" <a_l.delmelle@---------->
Date: 11/15/2003 6:07:00 PM
> -----Original Message-----
> From: Patricia LaRue

> ...  I have converted an Excel Workbook with
> many worksheets into an xml file.  I created an xsl
> file to display a menu of worksheet names with the
> goal of allowing the user to click on the worksheet
> name and navigate directly to that worsheet in a
> seperate frame.
<snip />
> I tried to run the code from Netscape and found that it
> would not display correctly.  I don't mind doing the
> leg work but I'm finding that there is so much
> information out there that I don't know which
> techniques I need to study.

Well, just take it easy (and be careful not to 'over-cram' your brain ;))
Anyway, this list is supposed to deal with XSL (or related) questions, so,
where it comes to transformations of the kind I have posted, anyone here
will gladly help you out (esp. on the more complicated stuff, for the FAQs
you'll probably receive a hyperlink to relevant webpage).

What you already have now:

- links are displayed properly
- output of worksheet elements can be transformed into HTML tables

If the point of departure is a fixed set of worksheet elements, you could
run the transforms I posted earlier. If put all together in a single XSL
Stylesheet, they would yield a series of hyperlinks with below them the
worksheets as tables, which is obviously not what you want (--hence, I
believe, your confusion about having to split the files up?). Frames need
separate HTML files and XSLT is for transforms into single files, however,
the same XML/XSL combination can be used multiple times to lead to different
outputs (using modes on the templates; passing in global parameters to the

Generating the list of hyperlinks (and their expected target-names) can be
done in a first pass. The generation of the separate table files is a
different story... Only approach immediately springing to mind would be the
use of a shell script of some sort, and passing in the worksheet name as a
parameter to the stylesheet.
Remarkable detail is that you can transform the source XML into a shell
script/batch file using XSL, so if you know the basic command line for your
XSL processor, you can then output one line for each worksheet in your XML
file, and have all of them written to one text file. ( And this all still
does not have you splitting up any files, see? )

Say the result of the above is:

- 1 html file containing only the list of hyperlinks ( ws_list.htm )
(- 1 shell script)
- n html files for an XML containing n worksheet elements ( ws_[name].htm )

All you need now is set up your main html page, creating the basic frameset.


<frameset cols="150,*">
  <frame name="ws_list" target="main" src="ws_list.htm">
  <frame name="main" src="{default_page}">


Of course, in this approach, if worksheets get added or deleted from the XML
later on, you _would_ need to intervene manually everytime ( rebuilding the
listfile will normally suffice, since the corresponding tables won't be
accessible anymore, but these tables themselves would have to be manually
deleted... )

Hope this gets you on track!



 XSL-List info and archive:


These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.