<big>K</big>ickshaw accepta els següents elements XML i noms d'atributs, valors d'atributs i continguts associats amb aquests elements:

<tt><b>Element:</b>			<b>Noms d'atributs:</b>
menu           		id, label, icon, execute
separator      		label
item           		label, icon
↳action        		name
 ↳prompt       		<i>no aplicable</i>
 ↳command      		<i>no aplicable</i>
 ↳startupnotify		<i>no aplicable</i>
  ↳enabled     		<i>no aplicable</i>
  ↳icon        		<i>no aplicable</i>
  ↳name        		<i>no aplicable</i>
  ↳wmclass     		<i>no aplicable</i>

					<b>Valors d'atributs:</b>
action         		Execute, Exit, Reconfigure,
               		Restart, SessionLogout

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

Els IDs del menú que consisteixen en cadenes buides són vàlids, però com qualsevol altre ID del menú, només poden aparèixer una vegada en un menú.

— — —

Els següents menús són equivalents i són acceptats tant per Openbox com per 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>

Un menú sempre es mostra a Kickshaw tal com apareixeria a Openbox, per tant, el segon dels dos exemples és més proper a l'enfocament WYSIWYG. El desavantatge és que, per a menús grans, això pot fer que l'aspecte d'un fitxer de menú sigui una mica confús. Per aquest motiu, per defecte Kickshaw sempre desa el menú en el format primer (això es pot canviar a les opcions). En desar un fitxer, el programa utilitza tabulacions per als sagnats per defecte, però a l'hora de llegir el fitxer, si els sagnats es van fer amb espais o tabulacions és irrellevant, així com qualsevol espai en blanc.

— — —

Un menú pot contenir atributs de menú contradictoris, com es mostra en l'exemple següent:

<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 aquest cas, Kickshaw segueix l'exemple d'Openbox i mostra el valor de l'atribut icon des de dins del menú arrel, mentre mostra els valors dels atributs label i execute des de fora del menú arrel.
