<big>K</big>ickshaw, aşağıdaki XML etiketlerini ve etiketlerle ilişkili öznitelik adlarını, öznitelik değerlerini ve içerikleri kabul eder:

<tt><b>Öğe:</b>				<b>Öznitelik adları:</b>
menu           		id, label, icon, execute
separator      		label
item           		label, icon
↳action        		name
 ↳prompt       		<i>uygulanamaz</i>
 ↳command      		<i>uygulanamaz</i>
 ↳startupnotify		<i>uygulanamaz</i>
  ↳enabled     		<i>uygulanamaz</i>
  ↳icon        		<i>uygulanamaz</i>
  ↳name        		<i>uygulanamaz</i>
  ↳wmclass     		<i>uygulanamaz</i>

					<b>Öznitelik değerleri:</b>
action         		Execute, Exit, Reconfigure,
               		Restart, SessionLogout

					<b>İçerikler:</b>
enabled        		yes, no</tt>

Boş dize içeren menü kimlikleri geçerlidir, fakat herhangi bir diğer menü kimliği gibi, bir menüde sadece bir kez yer alabilirler.

— — —

Aşağıdaki menüler eşdeğerdir ve hem Openbox hem de Kickshaw tarafından kabul edilirler.

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

Bir menü Kickshaw içinde her zaman Openbox'ta görüneceği gibi gösterilir, bu nedenle iki örnekten sonuncusu WYSIWYG yaklaşımına daha yakındır. Dezavantajı, büyük menüler için bir menü dosyasının biraz kafa karıştırıcı görünmesine neden olabilir. Bu nedenle, varsayılan olarak Kickshaw her zaman menüyü ilk biçimde kaydeder (bu tercihler içinde değiştirilebilir).

Bir dosyayı kaydederken, program varsayılan olarak girintiler için sekme kullanır; ancak dosyayı okurken, bu girintilerin boşluk mu yoksa sekme mi olduğu, aynı şekilde herhangi bir boş alanın varlığı da önemsizdir.

— — —

Bir menü, aşağıdaki örnekte olduğu gibi çelişkili menü özniteliklerini içerebilir:

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

Bu durumda, Kickshaw Openbox'ın örneğini takip ederek, kök menüsünün içinden icon özniteliği değerini gösterir, ancak kök menüsünün dışından label ve execute özniteliklerinin değerlerini gösterir.
