Several user assistance components allow you to provide dynamic content. This means the content can change depending on the user's environment or context. For example, you may want a section of your help document or welcome page to only appear if the user has a certain functionality enabled.
There are two basic ways to create dynamic content. One is to add tags and attributes (annotations) to your XML markup instructing the system to filter out sections or documents, include sections from other documents, or specify anchors allowing other components to extend your documentation.
The other method is to write your own content producer by plugging in some Java code that will write the content from scratch or process existing static documents on-the-fly. Let's examine both approaches.
To learn more about each aspect of the markup, follow the links above or find the topics in the table of contents.
This is demonstrated in the XHTML fragment shown below:
<p> This is a static paragraph. </p> <!-- This tag will be replaced with the referenced tag --> <include path="my.plugin.id/path/my_other_document.xhtml/element_id"/> <ul> <li> This is a static list item. </li> <li filter="os=win32"> This only shows when running on Windows. </li> <li filter="plugin!=org.eclipse.help"> This only shows when plugin org.eclipse.help is NOT installed. </li> </ul> <!-- A place where others can add content --> <anchor id="my.anchor.id"/>
A content producer is a mechanism for plugging-in Java code to produce the document content on-the-fly. Content producers are more powerful than XML annotations, but are more complex to use.
Content producers are supported in the following areas of user assistance: