<big>K</big>ickshaw acceptă următoarele elemente XML și nume de atribute, valori de atribute și conținuturi asociate acestor elemente:

<tt><b>Element:</b>			<b>Nume de atribute:</b>
menu           		id, label, icon, execute
separator      		label
item           		label, icon
↳action        		name
 ↳prompt       		<i>nu se aplică</i>
 ↳command      		<i>nu se aplică</i>
 ↳startupnotify		<i>nu se aplică</i>
  ↳enabled     		<i>nu se aplică</i>
  ↳icon        		<i>nu se aplică</i>
  ↳name        		<i>nu se aplică</i>
  ↳wmclass     		<i>nu se aplică</i>

					<b>Valori de atribut:</b>
action         		Execute, Exit, Reconfigure,
               		Restart, SessionLogout

					<b>Conținut:</b>
enabled        		yes, no</tt>

ID-urile de meniu pot consta din șiruri goale și sunt valide, dar, la fel ca orice alt ID de meniu, pot apărea doar o singură dată într-un meniu.

— — —

Următoarele meniuri sunt echivalente și acceptate atât de Openbox, cât și de 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 meniu este afișat întotdeauna în Kickshaw exact așa cum apare în Openbox, astfel că cel de-al doilea exemplu se apropie mai mult de o abordare WYSIWYG (Ce vezi este ceea ce primești). Dezavantajul este că, pentru meniurile mari, acest lucru poate face ca un fișier de meniu să pară puțin confuz. Din acest motiv, implicit, Kickshaw salvează întotdeauna meniul în formatul anterior (aceasta poate fi modificată în opțiuni). La salvarea unui fișier, programul folosește tab-uri pentru indentare, dar la citirea fișierului, este irelevant dacă această indentare a fost realizată cu spații sau tab-uri, la fel și orice spațiu alb.

— — —

Un meniu poate conține atribute de meniu contradictorii, așa cum se poate vedea în exemplul următor:

<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>

În acest caz, Kickshaw urmează exemplul Openbox și afișează valoarea atributului icon din din meniul rădăcină, în timp ce afișează valorile atributelor label și execute din afara meniului root.
