<span size="100">ن</span>Kickshaw يقبل العناصر وأسماء السمات وقيم السمات والمحتويات المرتبطة بهذه العناصر بتنسيق XML كما يلي:

<span size="100">a</span><tt><b>عنصر</b>				<b>أسماء السمات</b>
menu           		id, label, icon, execute
separator      		label
item           		label, icon
↳action        		name
 ↳prompt       		لا ينطبق
 ↳command      		لا ينطبق
 ↳startupnotify		لا ينطبق
  ↳enabled     		لا ينطبق
  ↳icon        		لا ينطبق
  ↳name        		لا ينطبق
  ↳wmclass     		لا ينطبق

					<span size="100">a</span><b>قيم السمات</b>
action         		Execute, Exit, Reconfigure,
               		Restart, SessionLogout

					<span size="100">a</span><b>المحتويات</b>
enabled        		yes, no</tt>

معرفات القائمة المكونة من سلاسل أحرف فارغة صالحة، ولكن كما هو الحال مع أي معرف قائمة آخر، يمكن أن تظهر مرة واحدة فقط في قائمة.

— — —

القوائم التالية متساوية وكلاهما مقبولان من قِبل Openbox و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>

تُعرض القائمة دائمًا داخل Kickshaw كما ستظهر في Openbox، لذا فإن المثال الثاني من الاثنين أقرب إلى نهج WYSIWYG. الجانب السلبي هو أنه بالنسبة للقوائم الكبيرة، يمكن أن يجعل ملف القائمة يبدو مربكًا بعض الشيء. لهذا السبب، بشكل افتراضي، يحفظ Kickshaw دائمًا القائمة بالتنسيق الأول (يمكن تغيير ذلك ضمن الخيارات). عند حفظ ملف، يستخدم البرنامج تابات للمسافات البادئة بشكل افتراضي، ولكن عند قراءة الملف، سواء كانت هذه المسافات البادئة تمت بالمسافات أو بالتابات لا يُعتبر أمرًا ذا أهمية، كما هو الحال مع أي مساحة بيضاء.

— — —

يمكن للقائمة أن تحتوي على سمات قائمة متناقضة، كما في المثال التالي:

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

في هذه الحالة، يتبع Kickshaw مثال Openbox ويعرض قيمة سمة icon من داخل القائمة الجذر، بينما يعرض قيم سمات label وexecute من خارج القائمة الجذر.
