platform-help-home/online_help2.0.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (view) (download) (as text)

1 : dbirsan 1.1 <!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
2 :     <html>
3 :     <head>
4 :    
5 :     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6 :    
7 :     <meta http-equiv="Content-Language" content="en-us">
8 :    
9 :     <title>Eclipse online help 2.0 changes</title>
10 :     </head>
11 :     <body>
12 :    
13 :     <h1> ONLINE HELP CHANGES</h1>
14 :     <i>(First draft: Nov 13, 2001</i>)<br>
15 :     <br>
16 :     Early adopters of the eclipse help system version 1.0 have provided considerable
17 :     feedback on the contribution mechanism for online help and there seems
18 :     to be a consensus on the following as direction for further work:
19 :     <ul>
20 :    
21 :     <li> documentation pluggability is great, don't drop this feature</li>
22 :    
23 :     <li> need a simpler mechanism to plug-in the documentation</li>
24 :    
25 :     </ul>
26 :     As such, the proposed changes are meant to simplify the help contributions
27 :     mechanism, to allow for simple migration from R1.0 and not to introduce
28 :     radically new concepts.<br>
29 :     <br>
30 :    
31 :     <h2>CONCEPTS<br>
32 :     </h2>
33 :     This section describes in very general terms the basics of the eclipse
34 :     online documentation.<br>
35 :     <br>
36 :     Eclipse-based products are made up of a number of plugins, each plugin contributing
37 :     some function, and/or documentation. Documentation consists of two parts:
38 :     the actual html help files and the corresponding table of contents (TOC).&nbsp;Documentation
39 :     is, thus, distributed across plugins and comes together as an integrated documentation
40 :     library at runtime. Tables of contents across all plugins are usually integrated
41 :     by linking them to one another to form larger, more product centric view
42 :     of the documentation. Most often a plugin defines a primary table of contents
43 :     to which other plugins integrate their own table of contents contributions.
44 :     <br>
45 :     Tables of contents are really the unit of work, the building blocks of the
46 :     documentation navigation. Tables of contents can link any other table of contents,
47 :     and can be linked to any other table of contents that allows linking. After
48 :     all the table of contents linking has been performed some tables of contents
49 :     are said to be integrated and some not. Those that are not integrated are
50 :     discarded and the library only contains the integrated tables of contents.
51 :     <br>
52 :     <br>
53 :     A table of contents is considered to be integrated if:<br>
54 :    
55 :     <ul>
56 :    
57 :     <li>it is primary</li>
58 :    
59 :     <li>it is linked to an integrated table of contents<br>
60 :     </li>
61 :    
62 :     </ul>
63 :     A plugin indicates its desired integration of a table of contents by tagging
64 :     it as "primary" or not:<br>
65 :    
66 :     <ul>
67 :    
68 :     <li>a table of contents is not tagged as primary when it is meant to be
69 :     integrated into another table of contents</li>
70 :    
71 :     <li>a table of contents should be tagged as primary when it is complete
72 :     by itself and is not related to other table of contents, or when it is meant
73 :     to be the master toc, the skeleton to which other toc's will integrate<br>
74 :     </li>
75 :    
76 :     </ul>
77 :     &nbsp;Clearly, a primary table of contents can link to other (primary or
78 :     not) tables of contents and can link other tables of contents to it. So, tagging
79 :     a TOC primary or not only declares an integration intention, not the final
80 :     outcome.<br>
81 :     <br>
82 :     Finally, the set of tables of contents forming the documentation library
83 :     is the set of all primary tables of contents that are not linked to another
84 :     integrated table of contents. In general it is the set of all the primary
85 :     tables of contents, but sometimes, when some primary table of contents is
86 :     linked (directly or indirectly) into another primary table of contents then
87 :     it is no longer presented as a top level TOC.<br>
88 :     <br>
89 :    
90 :     <h2>CHANGES</h2>
91 :    
92 :     <p>At a glance, here are the main changes: </p>
93 :    
94 :     <ul>
95 :    
96 :     <li> Removed</li>
97 :    
98 :     <ul>
99 :    
100 :     <li> information sets (infosets)</li>
101 :    
102 :     <li> information views (infoviews)</li>
103 :    
104 :     <li> actions</li>
105 :    
106 :     <li> topic ids's</li>
107 :    
108 :     <li> properties files: doc.properties and context.properties</li>
109 :    
110 :     </ul>
111 :    
112 :     <li> Unchanged:</li>
113 :    
114 :     <ul>
115 :    
116 :     <li> html help content still goes into doc.zip or unpacked in the plugin
117 :     dir</li>
118 :    
119 :     <li> pluggability (i.e. documentation and navigation can stay in the same
120 :     plugins): plugins contribute documentation and corresponding navigation structure(s),
121 :     that will be merged at runtime into an eclipse-wide documentation.</li>
122 :    
123 :     </ul>
124 :    
125 :     <li> Slightly changed</li>
126 :    
127 :     <ul>
128 :    
129 :     <li> topics.xml files are now toc.xml files</li>
130 :    
131 :     <li> the extension point for contributing help</li>
132 :    
133 :     </ul>
134 :    
135 :     <li> New</li>
136 :    
137 :     <ul>
138 :    
139 :     <li>document/web centric approach to building tables of contents using
140 :     linking of smaller, distributed tables of contents</li>
141 :    
142 :     <li> href/URL based mechanism for naming any help resource, including
143 :     navigation</li>
144 :    
145 :     </ul>
146 :    
147 :     </ul>
148 :     The above suggests that migrating from version 1.0 should be straightforward,
149 :     as the html help content (doc.zip) does not change, the topics.xml files
150 :     are also almost identical and the modularization of documentation across
151 :     plugins can stay the same. There will be a separate document describing migration
152 :     steps, tips, and examples.
153 :     <p>&nbsp; <br>
154 :     &nbsp; </p>
155 :    
156 :     <h2> SCENARIOS</h2>
157 :     It helps to look at a few scenarios to understand how help contributions
158 :     work.&nbsp;
159 :     <h4> Scenario 1: very basic</h4>
160 :     The simplest case is when there is exactly one documentation plugin that
161 :     consists of a doc.zip and the associated table of contents. The table of
162 :     contents should be declared primary, as it makes sense to be standalone.
163 :    
164 :     <p>Here are the files: </p>
165 :    
166 :     <p>plugin.xml&nbsp;</p>
167 :    
168 :     <div align="Right">
169 :     <table border="1" cellpadding="0" width="100%">
170 :     <caption><br>
171 :    
172 :     <div align="Right"></div>
173 :     </caption><tbody>
174 :    
175 :     </tbody> <tbody>
176 :     <tr>
177 :     <td width="100%" bgcolor="#c0c0c0">
178 :     <div style="line-height: 100%; "><font size="-1">&lt;plugin id="MyPlugin"&gt;</font></div>
179 :    
180 :     <blockquote>
181 :     <div style="line-height: 100%; "><font size="-1">&lt;extension point="org.eclipse.help.toc"&gt;</font></div>
182 :    
183 :     <blockquote>
184 :     <div style="line-height: 100%; "><font size="-1">&lt;toc file="toc.xml"&nbsp;
185 :     primary="<b>true</b>" /&gt;</font></div>
186 :     </blockquote>
187 :    
188 :     <div style="line-height: 100%; "><font size="-1">&lt;/extension&gt;</font></div>
189 :     </blockquote>
190 :    
191 :     <div style="line-height: 100%; "><font size="-1">&lt;/plugin&gt;</font></div>
192 :     </td>
193 :     </tr>
194 :    
195 :     </tbody>
196 :     </table>
197 :     </div>
198 :     toc.xml&nbsp;
199 :     <div align="Right">
200 :     <table border="1" cellpadding="0" width="100%">
201 :     <caption><br>
202 :    
203 :     <div align="Right"></div>
204 :     </caption><tbody>
205 :    
206 :     </tbody> <tbody>
207 :     <tr>
208 :     <td width="100%" bgcolor="#c0c0c0">
209 :     <div style="line-height: 100%; "><font size="-1">&lt;toc label="My
210 :     Plugin Documentation"&gt;</font></div>
211 :    
212 :     <blockquote>
213 :     <div style="line-height: 100%; "><font size="-1">&lt;topic label="Compiling"&nbsp;
214 :     href="docs/compile.html"&gt;</font></div>
215 :    
216 :     <blockquote>
217 :     <div style="line-height: 100%; "><font size="-1">&lt;topic label="Java
218 :     files" href="docs/java.html"/.&gt;</font></div>
219 :    
220 :     <div style="line-height: 100%; "><font size="-1">&lt;topic label="C++
221 :     files" href="docs/cpp.html"/&gt;</font></div>
222 :     </blockquote>
223 :    
224 :     <div style="line-height: 100%; "><font size="-1">&lt;/topic&gt;</font></div>
225 :     </blockquote>
226 :    
227 :     <div style="line-height: 100%; "><font size="-1">&lt;/toc&gt;</font></div>
228 :     </td>
229 :     </tr>
230 :    
231 :     </tbody>
232 :     </table>
233 :     </div>
234 :     The doc.zip file contains docs/compile.html, docs/java.html and docs/cpp.html
235 :     (and any images used).
236 :     <p>The Help library consists of the following navigation structure</p>
237 :    
238 :     <center>
239 :     <table border="1" cellpadding="0" width="100%" bgcolor="#c0c0c0">
240 :     <caption><br>
241 :    
242 :     <center></center>
243 :     </caption><tbody>
244 :    
245 :     </tbody> <tbody>
246 :     <tr>
247 :     <td width="808" height="137"><font size="-1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
248 :     Compiling</font>
249 :     <p><font size="-1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
250 :     Java files</font> </p>
251 :    
252 :     <p><font size="-1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
253 :     C++ files</font></p>
254 :     </td>
255 :     </tr>
256 :    
257 :     </tbody>
258 :     </table>
259 :     </center>
260 :    
261 :     <h4> Scenario 2: basic</h4>
262 :     There are a few documentation plugins, none being aware of the others
263 :     existence (i.e. TOC's are standalone). In this case, each table of contents&nbsp;
264 :     is tagged as a "primary" and the library consists of the collection of &nbsp;all
265 :     the defined TOC's.
266 :     <h4> Scenario 3: top-down integration</h4>
267 :     A common scenario is to build an eclipse-based product and have the navigation
268 :     distributed in a number of plugins, with a master plugin providing the
269 :     navigation skeleton. The master table of contents file&nbsp; would then
270 :     include the other tables of contents at certain point and is marked as primary.
271 :    
272 :     <p>The basic markup is to add an &lt;<b>link toc="../another_pluginID/another_toc_section.xml"&gt;</b>
273 :     at the desired point in a table of contents. This basically links (integrates)
274 :     the "another_toc.xml" navigation. The effect of this is that the help system
275 :     now has just one big table of contents that is made up of smaller ones. </p>
276 :    
277 :     <p>Here are the files: </p>
278 :    
279 :     <p>plugin.xml in PluginA and PluginB&nbsp;</p>
280 :    
281 :     <div align="Right">
282 :     <table border="1" cellpadding="0" width="100%">
283 :     <caption><br>
284 :    
285 :     <div align="Right"></div>
286 :     </caption><tbody>
287 :    
288 :     </tbody> <tbody>
289 :     <tr>
290 :     <td bgcolor="#c0c0c0">
291 :     <div style="line-height: 100%; "><font size="-1">&lt;plugin
292 :     id="PluginA"&gt;</font></div>
293 :    
294 :     <blockquote>
295 :    
296 :     <div style="line-height: 100%; "><font size="-1">&lt;extension
297 :     point="org.eclipse.help.toc"&gt;</font></div>
298 :    
299 :     <blockquote>
300 :    
301 :     <div style="line-height: 100%; "><font size="-1">&lt;toc
302 :     file="toc.xml" &nbsp;type="<b>toc</b>"/&gt;</font></div>
303 :     </blockquote>
304 :    
305 :     <div style="line-height: 100%; "><font size="-1">&lt;/extension&gt;</font></div>
306 :     </blockquote>
307 :    
308 :     <div style="line-height: 100%; "><font size="-1">&lt;/plugin&gt;</font></div>
309 :     </td>
310 :     <td bgcolor="#c0c0c0">
311 :    
312 :     <div style="line-height: 100%; "><font size="-1">&lt;plugin
313 :     id="PluginB"&gt;</font></div>
314 :    
315 :     <blockquote>
316 :    
317 :     <div style="line-height: 100%; "><font size="-1">&lt;extension
318 :     point="org.eclipse.help.toc"&gt;</font></div>
319 :    
320 :     <blockquote>
321 :    
322 :     <div style="line-height: 100%; "><font size="-1">&lt;toc
323 :     file="toc.xml"/&gt;</font></div>
324 :     </blockquote>
325 :    
326 :    
327 :     <div style="line-height: 100%; "><font size="-1">&lt;/extension&gt;</font></div>
328 :     </blockquote>
329 :    
330 :    
331 :     <div style="line-height: 100%; "><font size="-1">&lt;/plugin&gt;</font></div>
332 :     </td>
333 :     </tr>
334 :    
335 :     </tbody>
336 :    
337 :     </table>
338 :     </div>
339 :     toc.xml in PluginA and PluginB&nbsp;
340 :    
341 :     <div align="Right"><br>
342 :    
343 :     <table border="1" cellpadding="0" width="100%">
344 :     <caption><br>
345 :    
346 :     <div align="Right"></div>
347 :     </caption><tbody>
348 :    
349 :     </tbody> <tbody>
350 :     <tr>
351 :     <td width="50%" bgcolor="#c0c0c0">
352 :    
353 :     <div style="line-height: 100%; "><font size="-1">&lt;toc
354 :     label="PluginA Documentation"&gt;</font></div>
355 :    
356 :    
357 :     <blockquote>
358 :    
359 :     <div style="line-height: 100%; "><font size="-1">
360 :     &lt;topic label="Compiling"&nbsp; href="docs/compile.html"&gt;</font></div>
361 :    
362 :    
363 :     <blockquote>
364 :    
365 :     <div style="line-height: 100%; "><font size="-1">
366 :     &lt;topic label="Java files" href="docs/java.html"/&gt;</font></div>
367 :    
368 :    
369 :     <div style="line-height: 100%; "><b><font size="-1">
370 :     &lt;link &nbsp; toc="../PluginB/toc.xml"/&gt;</font></b></div>
371 :    
372 :    
373 :     <p style="line-height: 100%; "><font size="-1">
374 :     &lt;topic label="C++ files" href="docs/cpp.html"/&gt;</font></p>
375 :     </blockquote>
376 :    
377 :    
378 :     <div style="line-height: 100%; "><font size="-1">
379 :     &lt;/topic&gt;</font></div>
380 :     </blockquote>
381 :    
382 :    
383 :     <div style="line-height: 100%; "><font size="-1">
384 :     &lt;/topic&gt;</font></div>
385 :     </td>
386 :     <td valign="Top" width="50%" bgcolor="#c0c0c0">
387 :    
388 :     <div style="line-height: 100%; "><font size="-1">
389 :     &lt;toc label="PluginB&nbsp; Documentation"&gt;</font></div>
390 :    
391 :    
392 :     <blockquote>
393 :    
394 :     <div style="line-height: 100%; "><font size="-1">
395 :     &lt;topic label="JavaScript"&nbsp; href="js.html"&gt;</font></div>
396 :    
397 :    
398 :     <blockquote>
399 :    
400 :     <div style="line-height: 100%; "><font size="-1">
401 :     &lt;topic label="Netscape" href="ns.html"/&gt;</font></div>
402 :    
403 :    
404 :     <div style="line-height: 100%; "><font size="-1">
405 :     &lt;topic label="IE" href="ie.html"/&gt;</font></div>
406 :     </blockquote>
407 :    
408 :    
409 :     <div style="line-height: 100%; "><font size="-1">
410 :     &lt;/topic&gt;</font></div>
411 :     </blockquote>
412 :    
413 :    
414 :     <div style="line-height: 100%; "><font size="-1">
415 :     &lt;/topic&gt;</font></div>
416 :     </td>
417 :     </tr>
418 :    
419 :    
420 :     </tbody>
421 :    
422 :     </table>
423 :     </div>
424 :     The doc.zip file in PluginA contains docs/compile.html, docs/java.html
425 :     and docs/cpp.html (and any images used). The doc.zip file in PluginB contais
426 :     js.html, ns.html and ie.html (and any images used).
427 :    
428 :     <p>Help should display the following table of contents<br>
429 :     </p>
430 :    
431 :    
432 :     <center>
433 :    
434 :     <table border="1" cellpadding="0" width="100%" bgcolor="#c0c0c0">
435 :     <caption><br>
436 :    
437 :    
438 :     <center></center>
439 :     </caption><tbody>
440 :    
441 :    
442 :     </tbody> <tbody>
443 :     <tr>
444 :     <td width="808" height="137"><font size="-1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
445 :     Compiling</font>
446 :    
447 :     <p><font size="-1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
448 :     Java files</font> </p>
449 :    
450 :    
451 :     <blockquote><b><font size="-1">JavaScript</font></b>
452 :    
453 :    
454 :     <blockquote><b><font size="-1">Netscape</font></b>
455 :    
456 :    
457 :     <p><b><font size="-1">IE</font></b></p>
458 :     </blockquote>
459 :     </blockquote>
460 :     <font size="-1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
461 :     C++ files</font></td>
462 :     </tr>
463 :    
464 :    
465 :     </tbody>
466 :    
467 :     </table>
468 :     </center>
469 :    
470 :    
471 :     <h4> Scenario 4: basic bottom-up integration</h4>
472 :     A typical scenario for a third party ISV is to provide tools (plugins)
473 :     and attempt to integrate their documentation with that of the target product
474 :     (like IBM's Websphere Studio). For that to happen, the ISV toc file must
475 :     link itself to the target toc, and the target doc must expose an anchor for
476 :     linking.
477 :    
478 :     <p>The markup for this kind of linking is simply
479 :     specifying the link_to attribute on the &lt;toc&gt; element inside the table
480 :     of contents file: </p>
481 :    
482 :    
483 :     <p>&lt;toc label="PluginA docs"&nbsp; <b>link_to="../PluginB/toc.xml#anchor_id"</b>
484 :     &gt; </p>
485 :    
486 :    
487 :     <p>The net effect should be the same as if the
488 :     target navigation file &lt;link&gt;-ed the ISV navigation component at the
489 :     specified anchor. </p>
490 :    
491 :    
492 :     <p> </p>
493 :    
494 :    
495 :     <p>Here are the files: </p>
496 :    
497 :    
498 :     <p>plugin.xml in PluginA and PluginB&nbsp;</p>
499 :    
500 :    
501 :     <div align="Right">
502 :    
503 :     <table border="1" cellpadding="0" width="100%">
504 :     <caption><br>
505 :    
506 :    
507 :     <div align="Right"></div>
508 :     </caption><tbody>
509 :    
510 :    
511 :     </tbody> <tbody>
512 :     <tr>
513 :     <td bgcolor="#c0c0c0">
514 :    
515 :     <div style="line-height: 100%; "><font size="-1">
516 :     &lt;plugin id="PluginA"&gt;</font></div>
517 :    
518 :    
519 :     <blockquote>
520 :    
521 :    
522 :     <div style="line-height: 100%; "><font size="-1">
523 :     &lt;extension point="org.eclipse.help.toc"&gt;</font></div>
524 :    
525 :    
526 :     <blockquote>
527 :    
528 :    
529 :     <div style="line-height: 100%; "><font size="-1">
530 :     &lt;toc file="toc.xml"/&gt;</font></div>
531 :     </blockquote>
532 :    
533 :    
534 :     <div style="line-height: 100%; "><font size="-1">
535 :     &lt;/extension&gt;</font></div>
536 :     </blockquote>
537 :    
538 :    
539 :     <div style="line-height: 100%; "><font size="-1">
540 :     &lt;/plugin&gt;</font></div>
541 :     </td>
542 :     <td bgcolor="#c0c0c0">
543 :    
544 :     <div style="line-height: 100%; "><font size="-1">
545 :     &lt;plugin id="PluginB"&gt;</font></div>
546 :    
547 :    
548 :     <blockquote>
549 :    
550 :    
551 :     <div style="line-height: 100%; "><font size="-1">
552 :     &lt;extension point="org.eclipse.help.toc"&gt;</font></div>
553 :    
554 :    
555 :     <blockquote>
556 :    
557 :    
558 :     <div style="line-height: 100%; "><font size="-1">
559 :     &lt;toc file="toc.xml"/&gt;</font></div>
560 :     </blockquote>
561 :    
562 :    
563 :     <div style="line-height: 100%; "><font size="-1">
564 :     &lt;/extension&gt;</font></div>
565 :     </blockquote>
566 :    
567 :    
568 :     <div style="line-height: 100%; "><font size="-1">
569 :     &lt;/plugin&gt;</font></div>
570 :     </td>
571 :     </tr>
572 :    
573 :    
574 :     </tbody>
575 :    
576 :    
577 :     </table>
578 :     </div>
579 :     toc.xml in PluginA and PluginB&nbsp;
580 :    
581 :    
582 :     <div align="Right"><br>
583 :    
584 :    
585 :     <table border="1" cellpadding="0" width="100%">
586 :     <caption><br>
587 :    
588 :    
589 :     <div align="Right"></div>
590 :     </caption><tbody>
591 :    
592 :    
593 :     </tbody> <tbody>
594 :     <tr>
595 :     <td width="50%" bgcolor="#c0c0c0">
596 :    
597 :    
598 :     <div style="line-height: 100%; "><font size="-1">
599 :     &lt;toc label=" PluginA Documentation"&gt;</font></div>
600 :    
601 :    
602 :     <blockquote>
603 :    
604 :    
605 :     <div style="line-height: 100%; "><font size="-1">
606 :     &lt;topic label="Compiling"&nbsp; href="docs/compile.html"&gt;</font></div>
607 :    
608 :    
609 :     <blockquote>
610 :    
611 :    
612 :     <div style="line-height: 100%; "><font size="-1">
613 :     &lt;topic label="Java files" href="docs/java.html"/&gt;</font></div>
614 :    
615 :    
616 :     <div style="line-height: 100%; "><b><font size="-1">
617 :     &lt;anchor id="other"/&gt;</font></b></div>
618 :    
619 :    
620 :    
621 :     <p style="line-height: 100%; "><font size="-1">
622 :     &lt;topic label="C++ files" href="docs/cpp.html"/&gt;</font></p>
623 :     </blockquote>
624 :    
625 :    
626 :     <div style="line-height: 100%; "><font size="-1">
627 :     &lt;/topic&gt;</font></div>
628 :     </blockquote>
629 :    
630 :    
631 :     <div style="line-height: 100%; "><font size="-1">
632 :     &lt;/topic&gt;</font></div>
633 :     </td>
634 :     <td valign="Top" width="50%" bgcolor="#c0c0c0">
635 :    
636 :    
637 :     <div style="line-height: 100%; "><font size="-1">
638 :     &lt;toc label=" PluginB&nbsp; Documentation" <b>link_to="../PluginA/toc.xml#other"</b>
639 :     &gt;</font></div>
640 :    
641 :    
642 :     <blockquote>
643 :    
644 :    
645 :     <div style="line-height: 100%; "><font size="-1">
646 :     &lt;topic label="JavaScript"&nbsp; href="js.html"&gt;</font></div>
647 :    
648 :    
649 :    
650 :     <blockquote>
651 :    
652 :    
653 :     <div style="line-height: 100%; "><font size="-1">
654 :     &lt;topic label="Netscape" href="ns.html"/&gt;</font></div>
655 :    
656 :    
657 :    
658 :     <div style="line-height: 100%; "><font size="-1">
659 :     &lt;topic label="IE" href="ie.html"/&gt;</font></div>
660 :     </blockquote>
661 :    
662 :    
663 :    
664 :     <div style="line-height: 100%; "><font size="-1">
665 :     &lt;/topic&gt;</font></div>
666 :     </blockquote>
667 :    
668 :    
669 :    
670 :     <div style="line-height: 100%; "><font size="-1">
671 :     &lt;/topic&gt;</font></div>
672 :     </td>
673 :     </tr>
674 :    
675 :    
676 :     </tbody>
677 :    
678 :    
679 :     </table>
680 :     </div>
681 :     The following table of contents is built:&nbsp;
682 :    
683 :    
684 :     <center></center>
685 :    
686 :    
687 :     <table border="1" cellpadding="0" width="100%" bgcolor="#c0c0c0">
688 :     <caption><br>
689 :    
690 :    
691 :     <center></center>
692 :     </caption><tbody>
693 :    
694 :    
695 :     </tbody><tbody>
696 :     <tr>
697 :     <td width="808" height="137"><font size="-1">
698 :     &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font size="-1">Compiling</font></font>
699 :    
700 :    
701 :     <p><font size="-1">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
702 :     Java files</font></p>
703 :    
704 :    
705 :     <blockquote><b><font size="-1">
706 :     JavaScript</font></b>
707 :    
708 :     <blockquote><b><font size="-1">
709 :     Netscape</font></b>
710 :    
711 :     <p><b><font size="-1">
712 :     IE</font></b></p>
713 :     </blockquote>
714 :     </blockquote>
715 :    
716 :    
717 :     <blockquote><font size="-1">
718 :     C++ files</font></blockquote>
719 :     </td>
720 :     </tr>
721 :    
722 :    
723 :     </tbody>
724 :    
725 :    
726 :     </table>
727 :    
728 :    
729 :     <h2></h2>
730 :     <br>
731 :    
732 :    
733 :    
734 :     <h2> REFERENCE</h2>
735 :    
736 :    
737 :    
738 :     <h3> Plugin.xml</h3>
739 :     A plugin can contribute one or more tables of contents. Tables of contents
740 :     files contain navigation info for the help content, i.e.a hierarchical structure
741 :     of &nbsp;topics nodes that point to the actual html help documents. By default
742 :     tables of contents are meant to be integrated to other tables of contents.
743 :     Some are considered standalone or master tables of contents, and marked as
744 :     primary.&nbsp; Each TOC contributed by a plugin must be defined in the plugin.xml
745 :     file under the org.eclipse.help.toc extension point. A plugin can configure
746 :     one or more toc extension points, and each toc extension point can define
747 :     one or more tables of contents. Multiple TOCs are contributed when needed
748 :     to support different navigation views, or to provide reusable table of contents
749 :     components. The same TOC should not be defined multiple times.&nbsp; <br>
750 :     The DTD for the org.eclipse.help.toc extension point content is as follows:
751 :    
752 :    
753 :    
754 :     <p><font size="-1">&lt;!ELEMENT
755 :     extension&nbsp; (toc)* &gt;</font> <br>
756 :     <font size="-1">&lt;!ATTLIST&nbsp;
757 :     extension point&nbsp; CDATA "org.eclipse.help.toc"&nbsp; #FIXED&gt;</font>
758 :     <br>
759 :     <font size="-1">&lt;!--</font>
760 :     <br>
761 :     <font size="-1">Each
762 :     toc extension point can define any number of toc files.</font> <br>
763 :     <font size="-1">--&gt;</font>
764 :     </p>
765 :    
766 :    
767 :    
768 :     <p> </p>
769 :    
770 :    
771 :    
772 :     <p><font size="-1">&lt;!ELEMENT&nbsp;&nbsp;
773 :     toc EMPTY&gt;</font> <br>
774 :     <font size="-1">&lt;!ATTLIST&nbsp;&nbsp;&nbsp;
775 :     toc file CDATA&nbsp;&nbsp; #REQUIRED&gt;</font><br>
776 :     <font size="-1">&lt;!ATTLIST&nbsp;&nbsp;&nbsp;
777 :     toc primary (true | false) "false" &gt;</font><br>
778 :     </p>
779 :    
780 :    
781 :     <p>
782 :     <font size="-1">&lt;!--</font> <br>
783 :     <font size="-1">Each
784 :     toc file definition specifies the toc file by its relative path (href)&nbsp;
785 :     to the plugin and whether the plugin contributes it as a section or a table
786 :     of contents or as a standalone or master table of contents.</font><br>
787 :     <font size="-1">--&gt;</font>
788 :     <br>
789 :     &nbsp; <br>
790 :     &nbsp;</p>
791 :    
792 :    
793 :    
794 :     <p>Example: <br>
795 :     </p>
796 :    
797 :    
798 :    
799 :     <blockquote>
800 :    
801 :    
802 :    
803 :     <div style="line-height: 100%; ">
804 :     &nbsp; <br>
805 :    
806 :    
807 :    
808 :     <table border="1" cellspacing="2" cellpadding="2" width="100%">
809 :     <caption><br>
810 :     </caption><tbody>
811 :    
812 :    
813 :    
814 :     </tbody> <tbody>
815 :     <tr>
816 :     <td valign="Top" bgcolor="#cccccc">
817 :    
818 :    
819 :     <blockquote>
820 :    
821 :    
822 :    
823 :     <div style="line-height: 100%; "><font size="-1">
824 :     &lt;extension point="org.eclipse.help.toc<b>"</b>&gt;<br>
825 :     </font></div>
826 :    
827 :    
828 :    
829 :     <blockquote>
830 :    
831 :    
832 :    
833 :     <div style="line-height: 100%; "><font size="-1">
834 :     &lt;!-- this defines a standalone table of contents --&gt;<br>
835 :     &lt;toc file="toc.xml" &nbsp;primary="true"/&gt;</font></div>
836 :     </blockquote>
837 :    
838 :    
839 :    
840 :     <div style="line-height: 100%; "><font size="-1">
841 :     &lt;/extension&gt;<br>
842 :     <br>
843 :     </font></div>
844 :    
845 :    
846 :    
847 :     <div style="line-height: 100%; "><font size="-1">
848 :     &lt;extension point="<b> org.eclipse.help.toc</b>"&gt;</font></div>
849 :    
850 :    
851 :    
852 :     <blockquote>
853 :    
854 :    
855 :    
856 :    
857 :     <div style="line-height: 100%; "><font size="-1">
858 :     &lt;!-- this defines two sections --&gt;</font><b><font size="-1"><br>
859 :     &lt;toc file=</font></b><font size="-1">"tocWSAD.xml"/</font></div>
860 :     <br>
861 :     <font size="-1">
862 :     &lt;<b>toc&nbsp; href</b>="referencesWSAD.xml" /&gt;</font></blockquote>
863 :    
864 :    
865 :    
866 :     <div style="line-height: 100%; "><font size="-1">
867 :     &lt;/extension&gt;</font></div>
868 :    
869 :    
870 :    
871 :     <div style="line-height: 100%; "><font size="-1">
872 :     </font></div>
873 :     </blockquote>
874 :     </td>
875 :     </tr>
876 :    
877 :    
878 :    
879 :     </tbody>
880 :    
881 :    
882 :    
883 :     </table>
884 :     </div>
885 :     </blockquote>
886 :    
887 :    
888 :    
889 :     <h3> Toc.xml</h3>
890 :     The new table of contents files combine the 1.0 topics files with the
891 :     1.0 action files in a cleaner document/web centric structure. <br>
892 :     In its most basic form, tables of contents&nbsp; are just hierarchical
893 :     structures of topics. A topic is really a "pointer" to the actual help file.
894 :     Stepping up in complexity, &nbsp;a table of contents can <b>link </b>other
895 :     tables of contents when desired, creating larger tables of contents. Conversely,
896 :     a table of contents can <b>link to</b> another table of contents, forming
897 :     larger navigation tables of contents in a bottom up approach. Linkining to
898 :     another topics file is done by specifying an anchor in the target topics file.<br>
899 :     Since topics behave like pointers to a help file, the same html help file
900 :     can be reused in many places, by defining the appropriate topic. Reuse can
901 :     also be done in groups of topics, with the topics file acting as a reusable
902 :     navigation component.The same topics file can be linked&nbsp; many times.
903 :     Two branches of the navigation tree will look identical from the reused topics
904 :     file and down.
905 :    
906 :    
907 :     <p>The DTD for the
908 :     topics file follows: </p>
909 :    
910 :    
911 :    
912 :     <p><font size="-1">
913 :     &lt;!ELEMENT&nbsp; topics&nbsp; (topic | anchor |&nbsp; link)* &gt;</font>
914 :     <br>
915 :     <font size="-1">
916 :     &lt;!ATTLIST&nbsp; topics&nbsp; link_to&nbsp; CDATA&nbsp; #IMPLIED&gt;</font>
917 :     <br>
918 :     <font size="-1">
919 :     &lt;!ATTLIST&nbsp; topics&nbsp; label&nbsp;&nbsp;&nbsp; CDATA&nbsp; #REQUIRED&gt;</font>
920 :     <br>
921 :     <font size="-1">
922 :     &lt;!--</font> <br>
923 :     <font size="-1">
924 :     A toc element is the root of the tree of topics defined in the table of
925 :     contents file. It can optionally attach to another topics file by providing
926 :     its "link_to" attribute. The value of this attribute should be an href to
927 :     an anchor defined in this plugin or in another plugin.</font> <br>
928 :     <font size="-1">
929 :     &nbsp;Href's to anchors in&nbsp; a table of contents&nbsp; in other plugins
930 :     are specified as&nbsp; ../other_plugin_id/path_to_toc_file.xml#anchor_id</font><br>
931 :     <font size="-1">
932 :     Each toc element must define a label to be used in its presentation. The
933 :     label is only shown when the table of contents &nbsp;is primary and not integrated
934 :     into another table of contents (i.e. it is part of the library of the tables
935 :     of contents for the product). When linked, the toc element gets bypassed,
936 :     and it topics are directly connected to topics at the link point .</font>
937 :     <br>
938 :     <font size="-1">
939 :     A TOC&nbsp; file consist of any number of&nbsp; (nested) topics, anchor
940 :     points or links of other topics files.</font> <br>
941 :     <font size="-1">
942 :     --&gt;</font> </p>
943 :    
944 :    
945 :    
946 :     <p><font size="-1">
947 :     &lt;!ELEMENT topic&nbsp; (topic | anchor | link )* &gt;</font> <br>
948 :     <font size="-1">
949 :     &lt;!ATTLIST&nbsp; topic&nbsp; label&nbsp; CDATA&nbsp; #REQUIRED&gt;</font>
950 :     <br>
951 :     <font size="-1">
952 :     &lt;!ATTLIST&nbsp; topic&nbsp; href&nbsp;&nbsp;&nbsp; CDATA&nbsp; #IMPLIED&gt;</font>
953 :     <br>
954 :     <font size="-1">
955 :     &lt;!--</font> <br>
956 :     <font size="-1">
957 :     Each topic is a node in a topics tree and can contain topics, anchor points
958 :     or can include the topics form other tables of contents.</font><br>
959 :     <font size="-1">
960 :     For presentaton purposes, each topic must have a label.</font> <br>
961 :     <font size="-1">
962 :     Most topics have a corresponding help content, identified by the href
963 :     value. In general the href is a relative path to a file in the same plugin
964 :     (in doc.zip or a regular file) or can point to content in another plugin
965 :     using the ../another_plugin_id/path_to_content_file.html form.</font> <br>
966 :     <font size="-1">
967 :     Topics with no href are there for grouping &nbsp;other topics, for cleaner
968 :     tree presentation.</font> <br>
969 :     <font size="-1">
970 :     --&gt;</font> </p>
971 :    
972 :    
973 :    
974 :     <p><font size="-1">
975 :     &lt;!ELEMENT&nbsp; anchor&nbsp; EMPTY&gt;</font> <br>
976 :     <font size="-1">
977 :     &lt;!ATTLIST&nbsp; anchor&nbsp; id&nbsp; ID &nbsp;&nbsp; #REQUIRED&gt;</font>
978 :     <br>
979 :     <font size="-1">
980 :     &lt;!--</font> <br>
981 :     <font size="-1">
982 :     An anchor&nbsp; is really an insertion point for other tables of contents
983 :     to link into the structure defined in the current file. If&nbsp; multiple
984 :     topics files &nbsp;linked to the same topic, they will be linked in the processing
985 :     order. In other words, the order is not guaranteed. Multiple, adjacent anchors
986 :     may be used to differentiate among topics that should be linked before or
987 :     after the others.</font> <br>
988 :     <font size="-1">
989 :     --&gt;</font></p>
990 :    
991 :     <p><font size="-1">
992 :     &lt;!ELEMENT&nbsp; link&nbsp; EMPTY&gt;</font><br>
993 :     <font size="-1">
994 :     &lt;!ATTLIST&nbsp; link&nbsp; toc CDATA&nbsp;&nbsp;&nbsp; #REQUIRED&gt;</font><br>
995 :     <font size="-1">
996 :     &lt;!--</font><br>
997 :     <font size="-1">
998 :     A link is used to link the topics from another table of content</font>
999 :     s.<br>
1000 :     <font size="-1">
1001 :     --&gt;</font></p>
1002 :    
1003 :     <p><br>
1004 :     </p>
1005 :    
1006 :    
1007 :    
1008 :     <p><!--ELEMENT  include  EMPTY--><!--ATTLIST  include  href  CDATA    #REQUIRED--><!--
1009 :     An include is the simplest way to extend navigation by integrating other
1010 :     topics files available at the place where the element is defined.
1011 :     The topic's structure (all topic elements) defined in the file specified by the
1012 :     href attribute is inserted into the current file. This includes all the attached or included
1013 :     topics files, recursively.
1014 :     -->
1015 :     </p>
1016 :    
1017 :    
1018 :    
1019 :     <h3></h3>
1020 :     &nbsp;
1021 :    
1022 :    
1023 :     </body>
1024 :     </html>