Understanding Map Files in FrameMaker
Many application support the use of map files to deliver context-sensitive help. The topic IDs and map numbers are listed in a map file, which is a text file that typically has a .h extension. Applications can use the information in the map file to link users to the appropriate context-sensitive help topic.
Note: Some developers may use the term header file instead of map file.
There are some variations in the way context-sensitivity works depending on which supported ePublisher output format you use. For example, Microsoft WinHelp, Microsoft HTML Help, Sun JavaHelp, and Oracle Help output formats use map files. WebWorks Help, Simple HTML Help, Dynamic HTML Help, and XML+XSL output formats do not use map files.
When an application calls a context-sensitive help topic, it relies on the topic IDs and map numbers to identify the specific topic to display. Therefore, the topic IDs and map numbers must be embedded both in the application code and in the help system. If the topic IDs and map numbers do not match, the wrong topic (or no topic) displays when the user requests Help.
Following is a typical example of a Microsoft HTML Help and Microsoft WinHelp map file:
#define IDH_WDWTYPE 1001
#define IDH_WDWENTER 1002
#define IDH_WDWCANCEL 1003
In this example, IDH_WDWTYPE is a topic ID, and 1001 is the corresponding map number. These topic IDs and map numbers must be embedded in the software application and in your source documents.
Following is a typical example of a Sun JavaHelp and Oracle Help map file:
<mapID target="ch1_htm_999374" url="ch1.htm#999374">
<mapID target="ch2_htm_999640" url="ch2.htm#999640">
<mapID target="ch9_htm_999786" url="ch9.htm#999786">
In this example, ch1_htm_99374 is a topic ID, and ch1.htm#99374 is the target URL for the topic ID. These topic IDs must be embedded in the software application and in your source documents.