Help XML Data Island Markup
XML data islands are used to add the following kinds of data to HTML-based Help topics:
Keywords
Attributes
Compiler instructions
Data for virtual topics
Each topic can have one data island, enclosed by <xml> and </xml> tags. The data island can appear anywhere between the <head> and </head> tags of an HTML document. Each tag within the data island contains a specific type of data, which is defined by one or more attributes, and preceded by the MSHelp XML namespace prefix. Thus, the MSHelp XML namespace must be declared in the <html> tag for the topic, as follows:
<html xmlns:MSHelp=https://msdn.microsoft.com/mshelp>
Example
The following example shows the basic structure of an XML data island.
<xml>
<MSHelp:TOCTitle Title Attribute = ""/>
<MSHelp:RLTitleTitle Attribute= ""/>
<MSHelp:Include File Attribute = ""/>
<MSHelp:NoSearch/>
<MSHelp:KeywordIndex Attribute = "" Term Attribute = ""/>
<MSHelp:Attr Name Attribute = "" Value Attribute = ""/>
<MSHelp:Vtopic Name Attribute = ""/>
<MSHelp:FTSIndex VTopic Attribute = ""/>
<MSHelp:TOCTitleTitle Attribute= "" VTopic Attribute = ""/>
<MSHelp:RLTitleTitle Attribute= "" VTopic Attribute = ""/>
<MSHelp:Keyword Index Attribute = "" Term Attribute= "" VTopic Attribute = ""/>
<MSHelp:Attr Name = "" Value Attribute = "" VTopic Attribute = ""/>
</xml>
The following table indicates how many times a data island tag can appear per topic.
Tag |
Frequency of appearance |
---|---|
<MSHelp:Attr> |
Zero or more times |
<MSHelp:FTSIndex> |
Only once per virtual topic |
<MSHelp:Include> |
Only once |
<MSHelp:Keyword> |
Zero or more times |
<MSHelp:NoSearch> |
Only once |
<MSHelp:RLTitle> |
Only once per topic or virtual topic |
<MSHelp:TOCTitle> |
Only once per topic or virtual topic |
<MSHelp:Vtopic> |
Zero or more times |
Note
To define a multilevel index keyword, use the comma character. For example, the following keyword markup: <MSHelp:Keyword Index = "K" Term = "Term 1, Term 2"/> results in the following keywords in the index:
Term 1
Term 2
Clicking "Terms" would not link to a topic; clicking "Index" would link to all topics containing the keyword "Index".
To include a comma character in an index keyword, use the following escape sequence: %2c. For example, the following keyword markup: <MSHelp:Keyword Index = "K" Term = "Term 1%2c Term 2"/> results in the following keyword in the index:
Term 1, Term 2