<big>K</big>ickshaw akceptas la sekvajn XML-erojn kaj atributnomojn, atributvalorojn, kaj enhavon asociitaj kun ĉi tiuj eroj:

<tt><b>Ero:</b>				<b>Atributnomoj:</b>
menu           		id, label, icon, execute
separator      		label
item           		label, icon
↳action        		name
 ↳prompt       		<i>ne aplikebla</i>
 ↳command      		<i>ne aplikebla</i>
 ↳startupnotify		<i>ne aplikebla</i>
  ↳enabled     		<i>ne aplikebla</i>
  ↳icon        		<i>ne aplikebla</i>
  ↳name        		<i>ne aplikebla</i>
  ↳wmclass     		<i>ne aplikebla</i>

					<b>Atributvalorojn:</b>
action         		Execute, Exit, Reconfigure,
               		Restart, SessionLogout

					<b>Enhavo:</b>
enabled        		yes, no</tt>

Menuo-ID-oj konsistantaj el malplenaj ĉenoj estas validaj, sed kiel iu ajn alia menuo-ID povas aperi nur unufoje en menuo.

— — —

La sekvaj menuoj estas ekvivalentaj kaj ambaŭ estas akceptitaj de Openbox kaj Kickshaw.

<tt><b>(1)</b> &lt;openbox_menu&gt;

      &lt;menu id="menu1" label="Menu1"&gt;
        &lt;item label="item"/&gt;
      &lt;/menu&gt;

      &lt;menu id="root-menu"&gt;
        &lt;menu id="menu1"/&gt;
      &lt;/menu&gt;

    &lt;/openbox_menu&gt;</tt>

<tt><b>(2)</b> &lt;openbox_menu&gt;

      &lt;menu id="root-menu"&gt;
        &lt;menu id="menu1" label="Menu1"&gt;
          &lt;item label="item"/&gt;
        &lt;/menu&gt;
      &lt;/menu&gt;

    &lt;/openbox_menu&gt;</tt>

Menuo ĉiam estas montrata ene de Kickshaw kiel ĝi aperos en Openbox, do la dua el la du ekzemploj pli proksimas al WYSIWYG-aliro. La malavantaĝo estas ke por grandaj menuoj, tio povas igi menuodosieron aspekti iom konfuza. Pro tiu kialo, defaŭlte Kickshaw ĉiam konservas la menuon en la unue menciita formato (tion oni povas ŝanĝi en la opcioj). Dum konservado de dosiero, la programo defaŭlte uzas tabojn por dekstrofendigoj, sed por legado de la dosiero, ne gravas ĉu tiaj dekstrofendigoj estis faritaj per spacoj aŭ taboj, same kiel ne gravas iuj ajn spacoj.

— — —

Menuo povas enhavi kontraŭdirajn menuatributojn, kiel en la sekva ekzemplo:

<tt>&lt;openbox_menu&gt;

  &lt;menu id="menu1" label="outside" icon="out.jpg" execute="out" /&gt;

  &lt;menu id="root-menu"&gt;
    &lt;menu id="menu1" label="inside" icon="in.jpg" execute="in" /&gt;
  &lt;/menu&gt;

&lt;/openbox_menu&gt;</tt>

En ĉi tiu kazo, Kickshaw sekvas la ekzemplon de Openbox kaj montras la icon atributovaloron el ene de la radikmenuo, dum ĝi montras la label kaj execute atributovalorojn el ekstere de la radikmenuo.
