# ورقة الاستبيان

ورقة Survey هي قلب XLSForm الخاص بك. هنا تقوم بتعريف الأسئلة التي ستُطرح في النموذج، وأنواعها، وتسمياتها، وأسمائها، والمنطق مثل skips وrelevance والقيود.

يمثل كل صف في ورقة survey سؤالاً أو ملاحظة أو مجموعة. وتوفر كل عمود معلومات حول كيفية سلوك ذلك السؤال.

إليك مثال بسيط لكيفية ظهوره:

<table><thead><tr><th>النوع</th><th width="128">الاسم</th><th>label</th><th>appearance</th><th>مطلوب</th><th>relevant</th><th>constraint</th><th>hint</th></tr></thead><tbody><tr><td>begin_group</td><td>page1</td><td>صفحة المعلومات الشخصية</td><td>field-list</td><td></td><td></td><td></td><td></td></tr><tr><td>note</td><td>startnote</td><td>نحن نجري استبيانًا جديدًا، يرجى تعبئة الأسئلة التالية.</td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>text</td><td>الاسم</td><td>ما هو اسمك الكامل؟</td><td></td><td>yes</td><td></td><td></td><td>أدخل اسمك الأول واسم العائلة.</td></tr><tr><td>integer</td><td>age</td><td>كم عمرك؟</td><td></td><td>yes</td><td></td><td>. >= 0 and . &#x3C;= 120</td><td>يجب أن يكون بين 0 و120.</td></tr><tr><td>select_one sex</td><td>gender</td><td>ما هو جنسك؟</td><td></td><td></td><td>${age} >= 10</td><td></td><td>اختر خيارًا واحدًا.</td></tr><tr><td>end_group</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tbody></table>

## 🔑 شرح الأعمدة الرئيسية

1. **النوع**\
   هذا يحدد نوع السؤال الذي تطرحه. الأنواع الشائعة:

* `text` – لإدخال نص
* `integer` أو `decimal` – للأرقام
* `select_one list_name` – لأسئلة الاختيار المفرد
* `select_multiple list_name` – لأسئلة الاختيار المتعدد
* `note` – لعرض نص ثابت
* `begin group` / `end group` – لتنظيم الأسئلة في [المجموعات](https://docs.ngsurvey.com/ar/projects/import-export/xlsform/wrqh-alastbyan/almjmwaat) من صفحات أو مجموعات إجابات

{% hint style="info" %}
`select_one gender` يعني أن الخيارات تأتي من قائمة باسم `gender` (التي سيتم تعريفها في ورقة Name).
{% endhint %}

#### 2. Name

هذا هو اسم المتغير المستخدم داخليًا. يجب أن يكون:

* قصيرًا ووصفيًا
* أحرف صغيرة، بدون مسافات أو أحرف خاصة
* فريدًا داخل النموذج

{% hint style="info" %}
اسم المتغير هو الكيفية التي ستُشار بها البيانات عند استخدام ميزات relevant وconstraint
{% endhint %}

#### 3. Label

هذا هو نص السؤال الذي يراه المستخدم. كما يدعم [عدة لغات](https://docs.ngsurvey.com/ar/projects/import-export/xlsform/wrqh-alastbyan/mtadd-allghat) إذا كنت بحاجة لإنشاء استبيان بلغات متعددة (مثل، `label::English`, `label::French`).

{% hint style="info" %}
كن واضحًا وسهل الفهم للمستخدم. على سبيل المثال: “ما هو مسمى وظيفتك الحالية؟”
{% endhint %}

#### 4. Appearance (اختياري)

تتيح خاصية appearance التحكم في خصائص إضافية لكل عنصر من عناصر النموذج. يدعم ngSurvey عدة [خيارات appearance](https://docs.ngsurvey.com/ar/projects/import-export/xlsform/wrqh-alastbyan/almzahr) لتوليد مقاييس تقييم، صفحات، صندوق تعليقات، إدخالات مقنعة أو محاذاة مخصصة للحقول. &#x20;

#### 4. Required (اختياري)

اضبط على `yes` إذا كان يجب الإجابة على السؤال أو تقديم إجابة قبل المتابعة. إذا تُرك فارغًا يكون السؤال اختياريًا&#x20;

#### 5. Relevant (اختياري)&#x20;

تُستخدم في Skip Logic. يظهر السؤال فقط إذا تحققت الحالة.

> &#x20;مثال: `relevant: ${age} >= 18`\
> سيظهر السؤال فقط إذا كان العمر 18 أو أكثر.

#### 6. Constraint (اختياري)

تُستخدم للتحقق من صحة الإجابات باستخدام منطق إذا كانت الإجابة تعتمد على إدخال نصي.

> &#x20;مثال: `. >= 0 and . <= 100`\
> هذا يضمن أن الإدخال بين 0 و100. تمثل `.` القيمة إجابة السؤال الحالي.

#### 7. Hint (اختياري)

نص مساعدة يظهر كتعليق توضيحي (?) للمستخدم لتفسير ما هو المتوقع عند تمريره بالمؤشر.
