Custom Protocol Links Oracle Fusion Middleware Online Documentation Library

8-4 Oracle Fusion Middleware Developers Guide for Oracle Help

8.7 Dynamic Mapping of Topic IDs to Files

If your helpset uses a simple convention to map between topic IDs and map files, you may be able to significantly enhance Oracle Helps memory usage and startup time with dynamic mapping. Oracle Help supports an engine attribute on the mapref subelement of the helpsets maps area. By setting the engine attribute, one can use a custom engine to parse the map file and create an object used to map between topic IDs and files. In fact, by using certain engines, you may actually eliminate the map file altogether. The engine attribute is optional, so if it goes unspecified, Oracle Help will expect the location attribute to be set on the mapref, and the map file will be parsed and stored in the same manner as it was in older versions of Oracle Help. However, Oracle Help supports two engines that support certain common conventions for mediating between topic IDs and files: ■ oracle.help.engine.XMLMapFixedConventionEngine ■ oracle.help.engine.XMLMapConventionEngine If those two engines do not satisfy your needs for dynamic mapping, you can write a custom implementation of oracle.help.engine.DataEngine.

8.7.1 The oracle.help.engine.XMLMapFixedConventionEngine Help Engine

In many cases, for a filename of myfile.html, the corresponding topic ID is just myfile_html. If your map file is simply a long, redundant list of obvious topic mappings of this form, you will want to set the engine attribute on mapref to oracle.help.engine.XMLMapFixedConventionEngine. While using Oracle Help, setting the engine to this value will make your old map file expendable. However, if your help content may be viewed using an older version of Oracle Help, you should keep your old map file around so that the older versions of Oracle Help can fall back to the standard mechanism of topic mapping. If you are concerned about the help systems memory usage and startup time, it is strongly recommended that you use this new engine. Doing so implies that your map file is never read, and therefore its contents are not stored in the memory. However, there is one caveat to the engines use: All help content HTML files must reside in the same directory as the helpset file. In addition, any subhelpsets must also reside in the same directory as the master helpset file. Subdirectories for subhelpsets are not permitted because the help system will not be able to find your content unless it is in the same directory as the master helpset. However, different helpsets may reside in different directories.: Note: ■ You do not have to use this method for associating topics with window types. It may be easier to do it directly in the map file. ■ Third-party authoring tools may use this META tag for associating topics with window types. ■ In older versions of OHJ, the OHJ display engine read and used this META tag directly. This is no longer the case: the map file is now the central repository for this information.