La guida sensibile al contesto viene descritta associando l'ID di contesto dichiarato nel codice dell'interfaccia utente a una descrizione e a un elenco di collegamenti agli argomenti correlati nella Guida in linea. Tali associazioni vengono effettuate all'interno di un file XML. È possibile creare il numero desiderato di file XML contenenti associazioni della guida sensibile al contesto per ciascun plugin. La descrizione e i collegamenti relativi a ciascun id di contesto vengono eseguiti in elementi <context> del file XML. Ciascun elemento di contesto può essere dotato di un elemento <description> facoltativo che viene utilizzato per descrivere l'oggetto UI e un numero qualsiasi di elementi <topic> che contengono collegamenti alla documentazione in linea.
Dalla versione 3.1, gli elementi di contesto possono facoltativamente sovrascrivere il titolo predefinito utilizzato per presentare le informazioni della guida sensibile al contesto nella vista Guida.
<contexts> <context id="panic_button" title="Panic Button Title"> <description>This is the panic button.</description> <topic href="tasks/pushing_the_panic_button.htm" label="Pushing the panic button"/> <topic href="reference/panic_button.htm" label="Panic Button Reference"/> </context> ... </contexts>
Una volta effettuata la descrizione dei contesti nel file o nei file XML, è possibile fare riferimento ai file di contesto nel manifest di plugin. Si tenga presente che l'id di contesto nell'esempio sopra riportato non è completo. Ciò è possibile se il file di contesto è fornito nel manifest del plugin che ha definito l'id di contesto. In altri termini, l'id di contesto viene risolto nell'id del plugin che ha fornito il file XML.
Un plugin fornisce file di contesto mediante il punto di estensione org.eclipse.help.contexts.
<extension point="org.eclipse.help.contexts"> <contexts name="myContextHelp.xml" /> </extension>
È possibile fare riferimento ai file di contesto da altri plugin includendo l'attributo plugin. Ciò consente di raggruppare l'intera documentazione, inclusa la guida sensibile al contesto, in un unico plugin e fare riferimento ad esso dal plugin del codice dell'interfaccia utente o da altri plugin correlati.
<extension point="org.eclipse.help.contexts"> <contexts name="myContextHelp.xml" plugin="com.example.helpExample" /> </extension>
Come risulta evidente, si dispone di un notevole margine di flessibilità nell'organizzazione dei contesti in uno o più file contenuti in uno o più plugin. La considerazione principale in merito riguarda la corretta risoluzione degli id di contesto nei file. Se non si assegna un nome completo a un id di contesto, è necessario fornire i file XML di contesto nel plugin che ha dichiarato gli id di contesto. Se invece si utilizzano id di contesto completi nel file XML di contesto, si dispone di piena libertà riguardo al percorso dei file XML e al plugin che fornisce i contesti.
Si gode di un ampio margine di flessibilità anche riguardo alla possibilità di fornire una guida sensibile al contesto per lo stesso ID di contesto da plugin diversi. Ciò risulta utile, ad esempio, se si dispone di più plugin di documentazione che è possono o meno essere installati in una configurazione dell'utente. Ogni plugin di documentazione può, infatti, dichiarare i propri contesti in maniera indipendente. L'utente finale visualizzerà l'insieme dei contenuti della guida sensibile al contesto di tutti i plugin che hanno fornito i contesti per l'ID del widget.
Si osservi che è necessario utilizzare l'ID di contesto completo del widget, poiché nessuno dei plugin di documentazione ha dichiarato l'ID di contesto. Quando più plugin forniscono una guida sensibile al contesto per lo stesso ID di contesto, il contenuto definito nel plugin che ha dichiarato il contesto (il plugin dell'interfaccia utente) viene visualizzato per primo. Le descrizioni e i collegamenti supplementari sono accodati in un ordine arbitrario.