تخطَّ إلى المحتوى الرئيسي
Niquelao إمكانية الوصول للويب وتطوير الواجهات الأمامية (Front-end) باللغة الإسبانية: معايير WCAG، وأدوات (widgets) سهلة الوصول، وإضافات Firefox، مشروحة بأكواد برمجية حقيقية.

بعض الروابط في هذا الموقع هي روابط تسويقية؛ إذا قمت بالشراء من خلالها، قد نحصل على عمولة دون أي تكلفة إضافية عليك. هذا لا يؤثر أبداً على توصياتنا. راجع إخلاء مسؤولية الروابط التسويقية لمزيد من التفاصيل. إفصاح عن التسويق بالعمولة.

كيفية التحقق من صحة XHTML؟

تعني كيفية التحقق من صحة XHTML التحقق من امتثال المستند لطبقتين من القواعد: بناء جملة XML وDTD أو المخطط المعلن عنه. XHTML 1.0 هو إعادة صياغة لـ HTML 4.01 في XML، لذلك يمكن أن يكون المستند منسقًا بشكل جيد ولكنه غير صالح، كما هو الحال عندما يظهر <a target="_blank"> في XHTML 1.0 Strict.

التحقق من صحة XHTML هو التحقق من أن المستند يتوافق في نفس الوقت مع طبقتين من القواعد:

  1. قواعد بناء جملة XML: علامات متداخلة بشكل صحيح، وسمات بين علامتي اقتباس، وإغلاق إلزامي لجميع العناصر (بما في ذلك العناصر الفارغة مثل <br />)، وعنصر جذر واحد، وترميز مُعلن متسق، وما إلى ذلك.
  2. ** قواعد DTD أو المخطط المعلن **: ما هي العناصر والسمات الموجودة وفي أي سياق يمكن أن تظهر وما هي القيم المسموح بها. فيما يلي ملفات DTD الكلاسيكية لـ XHTML 1.0 (Strict، Transitional، Frameset)، وXHTML 1.1، وXHTML Basic، وXHTML Modularization.

يمكن أن يكون المستند بتنسيق XML جيد التصميم ولكنه لا يزال غير صالح: على سبيل المثال، إذا كنت تستخدم <a target="_blank"> في XHTML 1.0 Strict، فإن بناء الجملة لا تشوبه شائبة ولكن السمة target غير موجودة في DTD هذا. هذا التمييز بين حسن الصياغة وصالح هو السبب الأول للارتباك عندما يرى شخص ما خطأً ولا يفهم السبب.

ومن المناسب أيضًا أن نتذكر أن XHTML 1.0 هو إعادة صياغة لـ HTML 4.01 في XML، والذي تم تعريفه بواسطة W3C. واليوم، أصبحت قيمته العملية ذات شقين: فهو يخدم المشاريع القديمة التي لا تزال تُستخدم كـ “application/xhtml+xml” أو “text/html”، ويعمل بمثابة نظام عقلي لكتابة علامات واضحة. إذا كنت تريد السياق المعياري الكامل حول كيفية التحقق من صحة XHTML، فإن مواصفات XHTML 1.0 del W3C هي المصدر الأساسي.

المدققون الذين يستحقون الاستخدام (وعند استخدام كل واحد)

لا يوجد مدقق واحد “صحيح”. يعتمد الاختيار على ما إذا كنت تقوم بالتحقق من صحة جزء أو صفحة إنتاج أو موقع بأكمله أو مستند XHTML5 بالفعل.

الأداةما الذي يتم التحقق منهمثالي لـالقيد الرئيسي
** خدمة التحقق من صحة علامات W3C ** (validator.w3.org)XHTML 1.0/1.1، HTML4، HTML5التحقق من صحة عنوان URL أو الملف أو الارتباط المباشر”مدقق HTML الجديد” الحديث ذو الأولوية لـ HTML5؛ يتطلب ملفات DTD القديمة دليل التحديد
** مدقق Nu Html ** (vnu)HTML5 وXHTML5مشاريع جديدة، التحقق المحلي وCIلا توجد إصدارات DTD كلاسيكية صالحة لـ XHTML 1.x
** المدققات المحلية (vnu.jar، tidy)**حسب التكوينالتشغيل الآلي، الالتزام المسبق، خطوط الأنابيبيتطلب تثبيت Java أو الثنائيات؛ التكوين الأولي
xmllintحسن تشكيل XML والتحقق من صحة DTD/XSDقم بفحص رأس XML النقيلا يوجد قواعد محددة لـ HTML أكثر من هذا المفهوم
ملحقات المتصفح / IDEترميز مباشرتعليقات فورية أثناء الكتابةيمكنك استخدام المحركات غير المكتملة أو غير المكتملة

خدمة التحقق من صحة علامات El W3C

تظل نقطة البداية لأولئك الذين يتساءلون عن كيفية التحقق من صحة XHTML. وهو يدعم ثلاثة أوضاع: التحقق عن طريق URI، التحقق عن طريق تحميل الملف و التحقق عن طريق الإدخال المباشر. بالنسبة إلى XHTML الكلاسيكي، تكمن الحيلة في القائمة المنسدلة نوع المستند: إذا أعلن مستندك عن DTD الخاص به عبر DOCTYPE، فإن أداة التحقق تحترم ذلك؛ إذا لم يكن الأمر كذلك، عليك فرض ذلك يدويًا.

ذات صلة: — ويدجت إمكانية الوصول بخطة مجانية للتمكن من ذلك بنفس الطريقة.

تفصيل لا يعرفه الكثيرون: يعتمد مدقق W3C الحديث على Nu Html Checker، الذي يفهم HTML5 وXHTML5 ولكنه يتعامل مع DTDs القديمة بأولوية أقل. بالنسبة إلى XHTML 1.0 Strict، فإنه لا يزال يعمل، ولكن من المستحسن التحقق من أن النتيجة تعكس DTD الذي تتوقعه وليس تفسيرًا متساهلاً.

مدقق HTML (vnu)

هذا هو المدقق الذي يستخدمه W3C نفسه داخليًا. إنه موجود كخدمة ويب، وكملف JAR قابل للتنفيذ، وكصورة Docker. وتتمثل ميزته الكبرى في أنه يمكنك تشغيله محليًا وفي تكامل مستمر، وهو أمر ضروري إذا كنت تحتفظ بموقع كبير. بالنسبة إلى XHTML الذي يتم تقديمه كـ “application/xhtml+xml”، يكتشف vnu أخطاء التداخل والسمات التي قد يسمح بها مدقق HTML المتسامح.

xmllint

إذا كان اهتمامك يتعلق بطبقة XML الخالصة - على سبيل المثال، لأنك تقوم بإنشاء XHTML من قوالب XSLT - فلا يمكن استبدال xmllint. باستخدام --noout --valid documento.xhtml، يتم التحقق من صحة التكوين وصلاحيته مقابل DTD المشار إليه. إنه سريع وقابل للبرمجة ولا يعتمد على الشبكة.

يستحق نظرة: — إمكانية الوصول إلى الإدارة: أتمتة مجمعة مع مراجعة بشرية.

التحقق من صحة المحرر

توفر ملحقات VS Code ومكونات IDE الإضافية وأدوات سطر الأوامر تعليقات فورية. إنها مريحة، ولكنها تميل إلى التخلف فيما يتعلق بالمعايير. استخدمها كخط دفاع أول، وليس كوسيلة التحقق الوحيدة.

كيفية التحقق من صحة XHTML خطوة بخطوة

1. أعلن بشكل صحيح عن DOCTYPE والتدوين

يحدد DOCTYPE القواعد التي يتم التحقق من صحته على أساسها. بالنسبة إلى XHTML 1.0 الصارم:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<الرأس>
  <meta http-equiv="نوع المحتوى"
        المحتوى = "application/xhtml+xml؛ مجموعة الأحرف = UTF-8" />
  <title>مثال صالح</title>
</الرأس>

هناك خطأان كلاسيكيان هنا: نسيان سمة xmlns (إلزامية في XHTML) والإعلان عن ترميز في meta لا يتطابق مع الملف الفعلي. يكتشف المدقق كليهما، لكن الثاني يظهر أحيانًا كأحرف تالفة فقط.

2. قم بفحص الشكل الجيد قبل التحقق من صحته

قبل القتال مع DTD، تأكد من أن XML منسق بشكل جيد. سيخبرك xmllint --noout archive.xhtml في ثوانٍ. إذا فشل هنا، فلن يساعدك أي مدقق DTD: أولاً إغلاق العلامات، وتصحيح كيانات التداخل والهروب (&، <، >).

3. صالح ضد DTD

باستخدام المستند المعد بشكل جيد، قم بتمريره عبر W3C Validator أو vnu. لا تقم بمراجعة عدد الأخطاء الموجودة فحسب، بل نوعها. يمكن أن يؤدي خطأ متداخل واحد إلى إنشاء سلسلة من الأخطاء الثانوية التي تختفي عند تصحيح الخطأ الأول.

4. الموقع صالح تمامًا، وليس المنزل فقط

من الأخطاء الشائعة التحقق من صحة الصفحة الرئيسية وافتراض أن الباقي جيد. غالبًا ما تقدم القوالب والمكونات والصفحات التي تم إنشاؤها ديناميكيًا علامات غير صالحة. التشغيل الآلي: اجتياز عناوين URL الرئيسية باستخدام برنامج نصي وتشغيل vnu على كل استجابة.

ذات صلة: — الشهادة المهنية التي تمنحك الخبرة والقدرة على الوصول إليها.

5. دمج التحقق من الصحة في تدفقك

لا يتم قياس التحقق اليدوي. قم بإضافة خطوة تحقق من الصحة في المسار الخاص بك (ربط الالتزام المسبق، أو مهمة البناء، أو مهمة CI) التي تفشل في حالة ظهور خطأ جديد. بهذه الطريقة، لن يصل الترميز غير الصالح إلى مرحلة الإنتاج أبدًا.

تفسير الأخطاء: من شاهدها مرةً أخرى

  • “تم حذف علامة النهاية لـ X، ولكن لا يُسمح بعلامات النهاية المحذوفة”: نموذجي لـ <li> أو <p> أو <td> بدون إغلاق. في XHTML، يجب إغلاق كل شيء.
  • “لا توجد سمة X”: السمة غير موجودة في DTD الخاص بك. الحالات المعتادة: الهدف، الاسم في بعض العناصر، سمات data-* في XHTML 1.0 (وليس في DTD الكلاسيكي).
  • “العنصر X غير محدد”: يستخدم عنصرًا لا يأخذه DTD في الاعتبار، غالبًا من نسخ ترميز HTML5 إلى مستند XHTML 1.0.
  • “بيانات الأحرف غير مسموح بها هنا”: محتوى نصي حيث يتوقع DTD العناصر فقط، أو & دون الهروب.
  • “مرجع إلى الكيان X الذي لا يمكن إنشاء معرف نظام له”: كيانات HTML المسماة التي لم يتم تعريفها في XML (على سبيل المثال   بدون التصريح). في لغة XHTML الخالصة، استخدم   أو أعلن عن الكيان.

القاعدة الذهبية لكيفية التحقق من صحة لغة HTML: التصحيح من الأعلى إلى الأسفل. الخطأ الأول هو عادة السبب؛ وفيما يلي عواقبه.

XHTML5: الشيء الذي يغير القواعد

إذا كنت تخدم XHTML5 —XHTML المتسلسل وفقًا لبناء جملة HTML5 —، تتغير القواعد. لم يعد هناك DTD: يتم تعريف المطابقة في مواصفات WHATWG HTML ومواصفات W3C على HTML. المدقق الصحيح هو Nu Html Checker، وليس مدقق DTD الكلاسيكي.

إذا كنت تتسوق: — Superposición de IA الذي يعزز إطراء WCAG خلال 48 ساعة.

الاختلافات العملية التي يجب أن تكون على دراية بها فيما يتعلق بكيفية التحقق من صحة xhtml:

  • سمات data-* صالحة في XHTML5، وليس في XHTML 1.0.
  • تم تبسيط DOCTYPE إلى <!DOCTYPE html>.
  • يتم التحقق من الصحة مقابل مدقق المطابقة الخاص بـ HTML5، وهو أمر مسموح به أكثر في بعض النقاط وأكثر صرامة في نقاط أخرى (على سبيل المثال، في استخدام بعض العناصر القديمة).

الاختيار بين XHTML 1.0 وXHTML5 ليس أمرًا تقنيًا فقط: إذا كان مشروعك جديدًا، فإن XHTML5 مع التحقق من صحة vnu هو المسار المعقول. إذا كنت تحتفظ بنظام قديم مزود بـ DTD، فابق في XHTML 1.0 وقم بالتحقق من صحة DTD الخاص به.

التحقق وإمكانية الوصول: وظيفتان متميزتان

من الأخطاء الشائعة الاعتقاد بأنه يمكن الوصول إلى مستند صالح تلقائيًا. ليس كذلك. يتحقق التحقق من صحة بناء الجملة وتوافق المخطط؛ يتم تقييم إمكانية الوصول وفقًا لـ WCAG del W3C، والذي يغطي التصورات وقابلية التشغيل والتوافق مع التقنيات المساعدة.

ومع ذلك، هناك تداخل حقيقي: عادةً ما تشير العلامات غير الصالحة إلى بنية ناقصة (عناوين متداخلة بشكل سيئ، وقوائم معطلة، ونماذج بدون تسميات صحيحة)، وهذا يؤثر بالفعل على إمكانية الوصول. تتمثل الإستراتيجية المعقولة لكيفية التحقق من صحة XHTML والمستندات الأخرى في التحقق أولاً (التخلص من الضوضاء الهيكلية) و تدقيق إمكانية الوصول بعد باستخدام أدوات مثل الفأس أو Lighthouse أو المراجعات اليدوية. التحقق من الصحة شرط ضروري، ولكنه غير كاف.

الأخطاء المتكررة للتحقق من صحة XHTML

عند تعلم كيفية التحقق من صحة XHTML، تجنب هذه الأخطاء الشائعة:

  • التحقق من صحة المنزل فقط. عادةً ما يكون الترميز الإشكالي موجودًا في القوالب الداخلية.
  • تجاهل التشفير. تؤدي مجموعة الأحرف التي تم الإعلان عنها بشكل سيئ إلى ظهور أخطاء غير واضحة.
  • الخلط بين الجيد الصياغة والصالح. إنها طبقات متميزة؛ حلها بالترتيب.
  • استخدم أداة التحقق الخاطئة. vnu لـ XHTML5، وDTD لـ XHTML 1.x.
  • إصلاح الأخطاء المتتالية دون قراءة الخطأ الأول. أنت تضيع الوقت وتصلح الأعراض.
  • لا توجد أتمتة. لا يستمر التحقق اليدوي في الجولة الثانية.
  • بافتراض أن صالح = يمكن الوصول إليه. فهي معايير مختلفة ولأغراض مختلفة.

الوجبات السريعة الرئيسية

  • يتضمن التحقق من صحة XHTML طبقتين: صيغة XML الجيدة و الامتثال لـ DTD أو المخطط المعلن.
  • خدمة التحقق من صحة علامات W3C وNu Html Checker (vnu) هما الأدوات المرجعية لكيفية التحقق من صحة xhtml؛ يغطي xmllint طبقة XML النقية.
  • بالنسبة إلى XHTML 1.0/1.1، استخدم التحقق من الصحة مقابل DTD؛ بالنسبة لـ XHTML5، استخدم vnu وانس DTDs الكلاسيكية.
  • قم بتصحيح الأخطاء من الأعلى إلى الأسفل: عادةً ما يؤدي الخطأ الأول إلى ما يلي.
  • أتمتة عملية التحقق من الصحة في المسار الخاص بك؛ المراجعة اليدوية لا تتسع.
  • الصالح ليس مرادفًا للوصول: فهي معايير تكميلية وليست مكافئة.

المصادر ومزيد من القراءة

  • XHTML — ويكيبيديا: لغة ترميز النص التشعبي القابلة للتوسيع (XHTML) هي جزء من عائلة لغات ترميز النص التشعبي التي تعكس أو توسع إصدارات ترميز النص التشعبي المستخدم على نطاق واسع…
  • XHTML Basic — Wikipedia: XHTML Basic هي لغة ترميزية قائمة على XML مصممة لوكلاء المستخدم البسيطين ذوي القدرة الحاسوبية المحدودة، مثل الهواتف المحمولة المبكرة وأجهزة المساعد الرقمي الشخصي وأجهزة الاستدعاء وأجهزة الاستقبال…

الأسئلة المتداولة

ما هو الفرق بين تنسيق XHTML الجيد وصلاحية XHTML؟

تتبع الوثيقة جيدة التنسيق القواعد النحوية لـ XML: العلامات المغلقة، والتداخل الصحيح، والسمات بين علامتي الاقتباس. علاوة على ذلك، تحترم الوثيقة الصالحة DTD أو المخطط الذي تعلن عنه: فقط باستخدام العناصر والسمات المسموح بها في سياقها. قد يكون لديك مستند جيد الصياغة ولكنه غير صالح، على سبيل المثال، إذا كنت تستخدم سمة غير موجودة في XHTML 1.0 Strict.

¿هل تريد التحقق من صحة XHTML في 2024؟

نعم، لسببين. أولاً، تستمر العديد من المشاريع القديمة في تقديم خدمة XHTML وتحتاج إلى أن تظل صالحة حتى لا تنقطع عن وضع XML. ثانيًا، التحقق من الصحة هو نظام يكتشف الأخطاء الهيكلية التي تؤثر على إمكانية الوصول والصيانة. إذا كان مشروعك جديدًا، فمن المحتمل أنه يستخدم HTML5 أو XHTML5، لكن عادة التحقق من الصحة تظل ذات قيمة.

¿Qué validador debo usar para XHTML5?

Nu Html Checker (vnu)، متاح كخدمة ويب، وصورة JAR وDocker قابلة للتنفيذ. إنه نفس المحرك الذي تستخدمه خدمة التحقق من صحة العلامات W3C الحديثة وتفهم بناء جملة HTML5 وتسلسل XHTML الخاص بها. لا تستخدم أدوات التحقق من صحة DTD الكلاسيكية لـ XHTML5: فهي لن تتعرف على سمات data-* أو ميزات HTML5 الأخرى.

¿لماذا مدقق W3C لديه أخطاء لا أفهمها؟

لأن العديد من الأخطاء هي نتيجة لخطأ سابق. يمكن أن يؤدي التداخل غير الصحيح إلى إنشاء العشرات من الرسائل الثانوية. الإستراتيجية الصحيحة هي تصحيح الخطأ الأول والتحقق مرة أخرى والتكرار. ويحدث أيضًا أن يقوم المدقق بتطبيق DTD المعلن في DOCTYPE؛ إذا لم يكن DTD هو ما توقعته، فستبدو الأخطاء عشوائية.

هل يمكن التحقق من صحة XHTML من خط الأوامر؟

نعم. إذا كنت تتساءل عن كيفية التحقق من صحة XHTML عبر سطر الأوامر، فإن xmllint --noout --valid archive.xhtml يتحقق من صحة التكوين وصلاحيته مقابل DTD. بالنسبة إلى HTML5/XHTML5، يقوم vnu.jar archive.xhtml بنفس الشيء. يعد كلا الخيارين مثاليين للتكامل في البرامج النصية للإنشاء، أو خطافات ما قبل الالتزام (pre-commit hooks)، أو مهام التكامل المستمر، حيث لا يكون التحقق اليدوي قابلاً للتوسع.

هل موقع XHTML الصالح متاح للوصول تلقائيًا؟

لا، التحقق من الصحة يتحقق من التوافق النحوي والمخطط؛ يتم تقييم إمكانية الوصول وفقًا لـ WCAG، الذي يغطي جوانب مثل التباين أو التنقل باستخدام لوحة المفاتيح أو النص البديل أو البنية الدلالية. يمكن أن تكون الوثيقة صالحة تمامًا ولا يزال يتعذر الوصول إليها. تحقق من الصحة أولاً ومراجعة إمكانية الوصول بعد ذلك: فهي طبقات تكميلية.

الأسئلة الشائعة

ما هو الفرق بين تنسيق XHTML الجيد وصلاحية XHTML؟

تتبع الوثيقة جيدة التنسيق القواعد النحوية لـ XML: العلامات المغلقة، والتداخل الصحيح، والسمات بين علامتي الاقتباس. علاوة على ذلك، تحترم الوثيقة الصالحة DTD أو المخطط الذي تعلن عنه: فقط باستخدام العناصر والسمات المسموح بها في سياقها. قد يكون لديك مستند جيد الصياغة ولكنه غير صالح، على سبيل المثال، إذا كنت تستخدم سمة غير موجودة في XHTML 1.0 Strict.

¿هل تريد التحقق من صحة XHTML في 2024؟

نعم، لسببين. أولاً، تستمر العديد من المشاريع القديمة في تقديم خدمة XHTML وتحتاج إلى أن تظل صالحة حتى لا تنقطع عن وضع XML. ثانيًا، التحقق من الصحة هو نظام يكتشف الأخطاء الهيكلية التي تؤثر على إمكانية الوصول والصيانة. إذا كان مشروعك جديدًا، فمن المحتمل أنه يستخدم HTML5 أو XHTML5، لكن عادة التحقق من الصحة تظل ذات قيمة.

¿Qué validador debo use for XHTML5?

Nu Html Checker (vnu)، متاح كخدمة ويب، وصورة JAR وDocker قابلة للتنفيذ. إنه نفس المحرك الذي تستخدمه خدمة التحقق من صحة العلامات W3C الحديثة وتفهم بناء جملة HTML5 وتسلسل XHTML الخاص بها. لا تستخدم أدوات التحقق من صحة DTD الكلاسيكية لـ XHTML5: فهي لن تتعرف على سمات البيانات أو ميزات HTML5 الأخرى.

لماذا لم يقصد مدقق W3C الأخطاء التي لا أفهمها؟

لأن العديد من الأخطاء هي نتيجة لخطأ سابق. يمكن أن يؤدي التداخل غير الصحيح إلى إنشاء العشرات من الرسائل الثانوية. الإستراتيجية الصحيحة هي تصحيح الخطأ الأول والتحقق مرة أخرى والتكرار. ويحدث أيضًا أن يقوم المدقق بتطبيق DTD المعلن في DOCTYPE؛ إذا لم يكن DTD هو ما توقعته، فستبدو الأخطاء عشوائية.

هل يمكنك التحقق من صحة XHTML من خط الأوامر؟

نعم. إذا كنت تتساءل عن كيفية التحقق من صحة XHTML عبر سطر الأوامر، فإن xmllint --noout --valid archive.xhtml يتحقق من صحة التكوين والصلاحية مقابل DTD. بالنسبة إلى HTML5/XHTML5، يقوم vnu.jar archive.xhtml بنفس الشيء. يعد كلا الخيارين مثاليين للتكامل في البرامج النصية للإنشاء، أو الخطافات المسبقة الالتزام، أو مهام التكامل المستمر، حيث لا يتم توسيع نطاق التحقق اليدوي.

هل يمكن الوصول إلى موقع XHTML الصالح تلقائيًا؟

لا، التحقق من الصحة يتحقق من التوافق النحوي والمخطط؛ يتم تقييم إمكانية الوصول وفقًا لـ WCAG، الذي يغطي جوانب مثل التباين أو التنقل باستخدام لوحة المفاتيح أو النص البديل أو البنية الدلالية. يمكن أن تكون الوثيقة صالحة تمامًا ولا يزال يتعذر الوصول إليها. التحقق من صحة الوصول أولاً ومراجعة إمكانية الوصول بعد ذلك: فهي طبقات تكميلية.


¿Cumplir WCAG دون الحاجة إلى تشغيل الكود؟

Superposición de IA الذي يعزز إطراء WCAG خلال 48 ساعة