Dynamic HTML Frame Set






Initial version.



Updated override files for ePublisher 2012.3

Creating a frame set for Dynamic HTML


How to create a Dynamic HTML Help set that opens in a Frame Set. Opening the TOC, Index, and the content in the same page.


The Dynamic HTML format is a very simple ePublisher format that can be a great starting point for creating custom output. The markup is basically just HTML with consideration for CSS. A simple and helpful way to customize Dynamic HTML is to place the TOC file in a frame set to the left of the content like in a CHM or WebWorks Help 5.0.

This sample project uses a customized version of Dynamic HTML to create a more dynamic Dynamic HTML.

Project Files

Attached is a zip file that contains a folder containing a User Format. Place the folder in your User Formats directory and create a new project. When you create a project you can select the new format.

If for some reason you cannot see the new format, verify the path to the User Formats directory (Edit -> Preferences) and restart ePublisher (close it and re-open it).

Download DynamicHTMLFramesetProject.zip

Using the Project

The project defines a FTI setting that places a selection in the Format Settings dialog for turning on/off generation of a frame set file. Here you can also name what the file is called. By default it will be "index.htm".

After you set the "frame set-generate" to "enabled", you can generate output. To see the frame set file, go to the output folder and double-click on the "index.htm" or the name you gave the frame set file to see the output in a frame set.

How It Works

To see how the frame set it is created look at the format file. The format.wwfmt is the format file. This file defines a series of operations necessary to create the output of the format. With in the format.wwfmt file there is what's called a "Stage". A "Stage" describes a section of functionality. In looking through the other stages you will see other stages such as "Splits" and "Links". The Splits stage breaks up the source document according to the page break settings, while the Links stage resolves links and what files might need to be copied to the output.

In this example, the "Frameset" stage defines writing of the frame set file. This is a good example of how to add a stage to a format and how to write a simple XSL that does something useful.

The different XML namespaces defined at the top of the XSL file (Transforms/frameset.xsl) can be a good reference in learning more about the helpful extensions provided. Search the Wiki for "Extension Objects" and you will find information regarding some of the more useful namespaces as well as how to use them.

2012.3 Update

On the Yahoo wwp-users group, an ePublisher user discovered that this override in his 2012.3 project was causing code collisions that made the Additional CSS style option disappear from the UI (see the discussion here: http://tech.groups.yahoo.com/group/wwp-users/message/39521). This was happening for two reasons: the original override files were created in 2006, but not maintained between ePublisher revisions, and the override included files that were not directly related to the override.

I have attached a revised zip file of this override as of ePublisher 2012.3. I tried to be as thorough and as accurate as possible when I removed unrelated files and updating relevant files.

CAUTION: Because the original override was created six years ago, I had some trouble merging new code into the override files, especially toc.xsl file in the Transforms folder. Perhaps someone with more technical expertise can review the old files, my files, and the current ePublisher files to merge what I could not (and to add better comments in the override files).

If you use this override, make sure that you merge the differences between the 2012.3 version of ePublisher and whatever future version you are using BEFORE you integrate it into your project. Furthermore, make sure that you maintain any overrides that you have in your projects each time you upgrade ePublisher. You can find more information about upgrading your overrides here: http://wiki.webworks.com/HelpCenter/Tips/Upgrading%20WebWorks%20ePublisher%3A%20Maintaining%20Your%20Overrides

The following are the files that are included in my attachment:

  • Formats --> Dynamic HTML --> format.wwfmt
  • Formats --> Dynamic HTML --> Pages --> Frameset.asp
  • Formats --> Dynamic HTML --> Pages --> Page.asp
  • Formats --> Dynamic HTML --> Shared --> common --> pages --> navigation.xml
  • Formats --> Dynamic HTML --> Transforms --> files.xsl
  • Formats --> Dynamic HTML --> Transforms --> frameset.xsl
  • Formats --> Dynamic HTML --> Transforms --> index.xsl
  • Formats --> Dynamic HTML --> Transforms --> pages.xsl
  • Formats --> Dynamic HTML --> Transforms --> toc-named-templates.xsl
  • Formats --> Dynamic HTML --> Transforms --> toc.fti
  • Formats --> Dynamic HTML --> Transforms --> toc.xsl

Dynamic HTML.Frameset.2012.3.zip

2012.3 Update II

Reviewed the changes made for the 2012.3 update and cleaned up a few minor things. Along the way, got interested in making the Index also appear in the navigation area. Finished the changes and attached as Dynamic HTML.2012.3.TOC_plus_Index.zip.

This version allows you to toggle between the TOC and Index in the navigation area, as well as handles previous/next updates in the content region.

Dynamic HTML.2012.3.TOC_plus_Index.zip

DevCenter/Projects/HTML/DynamicHTMLFrameSet (last edited 2012-12-18 18:46:28 by BenAllums)