دوكبوك

دوكبوك
امتداد اسم الملف
.dbk، .xml
نوع الوسائط على الإنترنت
تطبيق/docbook+xml
تم التطوير بواسطةواحة
نوع التنسيقلغة الترميز
ممتدة منإس جي إم إل ، إكس إم إل
معيار5.2 (فبراير 2024)،
4.5 (أكتوبر 2006)
تنسيق مفتوح ؟نعم

DocBook هي لغة ترميز دلالية للوثائق الفنية . كانت مخصصة في الأصل لكتابة الوثائق الفنية المتعلقة بأجهزة الكمبيوتر والبرامج، ولكن يمكن استخدامها لأي نوع آخر من الوثائق. [1]

باعتبارها لغة دلالية، تمكن DocBook مستخدميها من إنشاء محتوى مستند في شكل محايد للعرض يلتقط البنية المنطقية للمحتوى؛ يمكن بعد ذلك نشر هذا المحتوى في مجموعة متنوعة من التنسيقات، بما في ذلك HTML و XHTML و EPUB و PDF وصفحات الدليل وWebHelp [2] و HTML Help ، دون مطالبة المستخدمين بإجراء أي تغييرات على المصدر. بعبارة أخرى، عندما يتم كتابة مستند بتنسيق DocBook، يصبح من السهل نقله إلى تنسيقات أخرى، بدلاً من الحاجة إلى إعادة كتابته.

تصميم

DocBook هي لغة XML . في الإصدار الحالي (5.x)، يتم تعريف لغة DocBook رسميًا بواسطة مخطط RELAX NG مع قواعد Schematron المتكاملة . (تتوفر أيضًا إصدارات من المخطط W3C XML Schema +Schematron و Document Type Definition (DTD)، ولكنها تعتبر غير قياسية.)

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

يوفر DocBook عددًا كبيرًا من علامات العناصر الدلالية. وهي مقسمة إلى ثلاث فئات عريضة، وهي البنيوية، وعلى مستوى الكتلة، والمضمنة.

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

  • set: مجموعة تحمل عنوانًا مكونة من books أو أكثر article، ويمكن دمجها مع مجموعات أخرى
  • book: مجموعة بعنوان chapterarticles، و/أو parts، مع قواميس اختيارية، وملاحق، وما إلى ذلك.
  • part: مجموعة بعنوان مكونة من chapterحرف s واحد أو أكثر—يمكن دمجها مع أجزاء أخرى، وقد يكون لها نص تمهيدي خاص
  • article: مجموعة من العناصر على مستوى الكتلة ذات عناوين وغير مرقمة
  • chapter: مجموعة مرقمة ومسماة من عناصر مستوى الكتلة - لا تتطلب الفصول أرقامًا صريحة، ورقم الفصل هو عدد عناصر الفصل السابق في مستند XML بالإضافة إلى 1
  • appendix: يحتوي على نص يمثل الملحق
  • dedication: يمثل النص تكريس العنصر الهيكلي المضمن

يمكن أن تحتوي العناصر الهيكلية على عناصر هيكلية أخرى. العناصر الهيكلية هي العناصر الوحيدة المسموح بها في المستوى الأعلى في مستند DocBook.

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

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

نموذج الوثيقة

 <?xml version="1.0" encoding="UTF-8"?> 
<book xml:id= "simple_book" xmlns= "http://docbook.org/ns/docbook" version= "5.0" > <title> كتاب بسيط للغاية </title> <chapter xml:id= " chapter_1 " > <title> الفصل الأول </title> <para> مرحبًا بالعالم! </para> <para> أتمنى أن يكون يومك رائعًا </emphasis> ! </para> </chapter> <chapter xml :id= " chapter_2 " > <title> الفصل الثاني </title> <para> مرحبًا مرة أخرى بالعالم! </para> </chapter> </book>    
     
    
      
      
            
   
    
      
       
   
 

من الناحية الدلالية، هذه الوثيقة عبارة عن "كتاب" له "عنوان" يحتوي على "فصلين" لكل منهما "عنوانه" الخاص. تحتوي هذه "الفصول" على "فقرات" تحتوي على نص. العلامات قابلة للقراءة إلى حد ما باللغة الإنجليزية.

بمزيد من التفصيل، العنصر الجذر للمستند هو book. توجد جميع عناصر DocBook في مساحة اسم XML ، لذا فإن العنصر الجذر يحتوي على سمة xmlns لتعيين مساحة الاسم الحالية. أيضًا، يجب أن يحتوي العنصر الجذر لمستند DocBook على إصدار يحدد إصدار التنسيق الذي تم بناء المستند عليه.

(يمكن أن تتضمن مستندات XML عناصر من مساحات أسماء متعددة في وقت واحد، مثل idالسمات الموجودة في المثال.)

bookيجب أن يحتوي العنصر على أو titleعنصر infoيحتوي على title. ويجب أن يكون هذا قبل أي عناصر هيكلية فرعية. بعد العنوان توجد العناصر الهيكلية الفرعية، في هذه الحالة chapterعنصران. يجب أن يحتوي كل منهما على title. وهي تحتوي على paraعناصر كتلة، والتي يمكن أن تحتوي على نص حر وعناصر مضمنة أخرى مثل emphasisفي الفقرة الثانية من الفصل الأول.

المخططات والتحقق

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

التأليف والمعالجة

نظرًا لأن DocBook عبارة عن XML، فيمكن إنشاء المستندات وتحريرها باستخدام أي محرر نصوص. كما يعد محرر XML المخصص محرر DocBook وظيفيًا. يوفر DocBook ملفات مخطط للغات مخطط XML الشائعة، لذا فإن أي محرر XML يمكنه توفير استكمال المحتوى بناءً على مخطط يمكنه القيام بذلك لـ DocBook. تأتي العديد من محررات XML الرسومية أو WYSIWYG مع القدرة على تحرير DocBook مثل معالج النصوص . [3]

يمكن نسخ الجداول وعناصر القائمة والمحتوى المنمق الآخر ولصقها في محرر DocBook وسيتم الحفاظ عليها في مخرجات DocBook XML. [3] نظرًا لأن DocBook يتوافق مع مخطط XML محدد جيدًا، يمكن التحقق من صحة المستندات ومعالجتها باستخدام أي أداة أو لغة برمجة تتضمن دعم XML.

تاريخ

بدأ DocBook في عام 1991 في مجموعات المناقشة على Usenet وأصبح في النهاية مشروعًا مشتركًا بين HAL Computer Systems و O'Reilly & Associates وفي النهاية أنتج منظمة صيانة خاصة به (Davenport Group) قبل الانتقال في عام 1998 إلى اتحاد SGML Open ، والذي أصبح فيما بعد OASIS . يتم صيانة DocBook حاليًا بواسطة اللجنة الفنية لـ DocBook في OASIS. [4]

يتوفر DocBook بصيغتي SGML و XML ، كملف DTD . تتوفر صيغ RELAX NG و W3C XML Schema لإصدار XML. بدءًا من DocBook 5، يعد إصدار RELAX NG هو النموذج "المعياري" الذي يتم من خلاله إنشاء التنسيقات الأخرى.

بدأ DocBook في الأصل كتطبيق SGML، ولكن تم تطوير تطبيق XML مكافئ وقد حل الآن محل تطبيق SGML لمعظم الاستخدامات. (بدءًا من الإصدار 4 من SGML DTD، استمر XML DTD مع مخطط ترقيم الإصدار هذا.) في البداية، استخدمت مجموعة رئيسية من شركات البرمجيات DocBook منذ أن شارك ممثلوها في تصميمه الأولي. ومع ذلك، في النهاية، تم اعتماد DocBook من قبل مجتمع المصدر المفتوح حيث أصبح معيارًا لإنشاء وثائق للعديد من المشاريع، بما في ذلك وثائق سطح المكتب FreeBSD و KDE و GNOME ومراجع واجهة برمجة التطبيقات GTK + ووثائق نواة Linux (التي تنتقل اعتبارًا من يوليو 2016 إلى Sphinx / reStructuredText [5] [6] )، وعمل مشروع توثيق Linux .

ما قبل DocBook v5.0

حتى DocBook 5، كان DocBook يُعرَّف بشكل معياري بواسطة تعريف نوع المستند (DTD). ولأن DocBook تم إنشاؤه في الأصل كتطبيق لـ SGML ، فقد كان تعريف نوع المستند (DTD) هو لغة المخطط المتاحة الوحيدة. يمكن أن تكون تنسيقات DocBook 4.x عبارة عن SGML أو XML، ولكن إصدار XML لا يحتوي على مساحة اسم خاصة به.

كان لزامًا على تنسيقات DocBook 4.x أن تعيش ضمن القيود المفروضة على تعريفها بواسطة DTD. وكان القيد الأكثر أهمية هو أن اسم العنصر يحدد محتوياته المحتملة بشكل فريد. أي أن العنصر المسمى infoيجب أن يحتوي على نفس المعلومات بغض النظر عن مكان وجوده في ملف DocBook. وعلى هذا النحو، هناك العديد من أنواع عناصر المعلومات في DocBook 4.x: bookinfo، chapterinfo، إلخ. ولكل منها نموذج محتوى مختلف قليلاً، لكنها تشترك في بعض نماذج المحتوى الخاصة بها. بالإضافة إلى ذلك، فإنها تكرر معلومات السياق. infoعنصر الكتاب هو أنه نظرًا لأنه طفل مباشر للكتاب؛ فلا يلزم تسميته خصيصًا لقارئ بشري. ومع ذلك، نظرًا لأن التنسيق تم تعريفه بواسطة DTD، فقد كان لابد من تسميته على هذا النحو. لا يحتوي العنصر الجذر على إصدار ، ولا يحتاج إليه ، حيث أن الإصدار مُدمج في إعلان DTD في الجزء العلوي من مستند ما قبل DocBook 5.

لا تتوافق مستندات DocBook 4.x مع DocBook 5، ولكن يمكن تحويلها إلى مستندات DocBook 5 عبر جدول أنماط XSLT. db4-upgrade.xslيتم توفير واحد ( ) كجزء من توزيع مخطط DocBook 5 وحزمة المواصفات. [7]

تنسيقات الإخراج

تُستخدم ملفات DocBook لإعداد ملفات الإخراج في مجموعة متنوعة من التنسيقات. ويتم إنجاز ذلك دائمًا تقريبًا باستخدام أوراق أنماط DocBook XSL . وهي أوراق أنماط XSLT التي تحول مستندات DocBook إلى عدد من التنسيقات ( HTML و XSL-FO لتحويلها لاحقًا إلى PDF وما إلى ذلك). ويمكن أن تكون أوراق الأنماط هذه متطورة بما يكفي لإنشاء جداول المحتويات والقواميس والفهرس. ويمكنها الإشراف على اختيار أجزاء معينة معينة من مستند رئيسي لإنتاج إصدارات مختلفة من نفس المستند (مثل "البرنامج التعليمي" أو "دليل المرجع السريع"، حيث يتكون كل منها من مجموعة فرعية من المادة). ويمكن للمستخدمين كتابة أوراق أنماط مخصصة خاصة بهم أو حتى برنامج كامل لمعالجة DocBook إلى تنسيق إخراج مناسب وفقًا لاحتياجاتهم.

يحافظ Norman Walsh وفريق تطوير مشروع DocBook على التطبيق الرئيسي لإنتاج الناتج من مستندات مصدر DocBook: مجموعة من أوراق أنماط XSLT (بالإضافة إلى مجموعة قديمة من أوراق أنماط DSSSL ) التي يمكنها إنشاء إخراج HTML وطباعة ( FO / PDF ) عالي الجودة ، بالإضافة إلى الإخراج بتنسيقات أخرى، بما في ذلك RTF وصفحات الدليل ومساعدة HTML.

تُعد مساعدة الويب [2] تنسيق إخراج HTML مجزأ في أوراق أنماط DocBook XSL التي تم تقديمها في الإصدار 1.76.1. توفر وثائق مساعدة الويب [8] أيضًا مثالاً لمساعدة الويب وهي جزء من توزيع DocBook XSL.

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

DocBook مبسط

يقدم DocBook عددًا كبيرًا من الميزات التي قد تكون مربكة للمستخدم الجديد. بالنسبة لأولئك الذين يريدون راحة DocBook دون منحنى تعليمي حاد، تم تصميم DocBook المبسط . إنه مجموعة فرعية صغيرة من DocBook مصممة للمستندات الفردية مثل المقالات أو الأوراق البيضاء (أي "الكتب" غير مدعومة). DocBook DTD المبسط هو حاليًا في الإصدار 1.1. [9]

نقد

يعتبر إنغو شوارتز، مؤلف ملف mandoc الخاص بنظام OpenBSD ، أن DocBook أدنى من وحدات الماكرو الدلالية mdoc لصفحات الدليل . وفي محاولة لكتابة محول من DocBook إلى mdoc (لا تغطي المحولات السابقة مثل docbook إلى man العناصر الدلالية)، يجد أن الأجزاء الدلالية "متضخمة وزائدة عن الحاجة وغير مكتملة في نفس الوقت" مقارنة بالعناصر المغطاة في mdoc. وعلاوة على ذلك، يجد شوارتز أن مواصفات DocBook ليست محددة بما يكفي بشأن استخدام العلامات، واللغة غير قابلة للنقل عبر الإصدارات، وخشنة في التفاصيل وغير متسقة بشكل عام. [10]

انظر أيضا

مراجع

  1. ^ ما هو DocBook؟
  2. ^ مشروع WebHelp من DocBook
  3. ^ "تحرير DocBook". www.oxygenxml.com . تم الاسترجاع في 2022-11-02 .
  4. ^ البدء باستخدام DocBook
  5. ^ "وثائق نواة لينكس — وثائق نواة لينكس".
  6. ^ "توثيق Kernel مع Sphinx، الجزء 1: كيف وصلنا إلى هنا [LWN.net]".
  7. ^ جيركا كوسيك، نورمان والش، ديك هاملتون، ومايكل سميث، DocBook V5.0: دليل الانتقال ، 16 يونيو 2009، تحويل مستندات DocBook V4.x إلى DocBook V5.0
  8. ^ وثائق مساعدة الويب
  9. ^ DocBook مبسط
  10. ^ Schwarze, Igor (19 أبريل 2019). "إصدار docbook2mdoc-1.0.0". مجلة OpenBSD .

قراءة إضافية

نورمان والش هو المؤلف الرئيسي لكتاب DocBook: The Definitive Guide، وهو التوثيق الرسمي لـ DocBook. هذا الكتاب متاح عبر الإنترنت بموجب ترخيص GFDL ، كما يتوفر أيضًا في صورة منشور مطبوع.

  • نورمان والش (يونيو 2010). DocBook 5: The Definitive Guide (الطبعة الثانية). O'Reilly Associates. ISBN 978-0-596-80502-9.
  • بوب ستايتون (2005). DocBook XSL: الدليل الكامل (الطبعة الثالثة). Sagehill Enterprises. ISBN 0-9741521-2-9.
  • جو بروكمير (2001). DocBook Publishing — طريقة أفضل لإنشاء مستندات احترافية . سلسلة Linux من Prima Tech. رقم ISBN 0-7615-3331-1.
  • DocBook.org - مجموعة من معلومات DocBook، بما في ذلك إصدار 4.x و5.0 من DocBook: الدليل النهائي وجميع إصدارات مخططات/DTDs الخاصة بـ DocBook.
  • مستودع DocBook في OASIS - المنزل المعياري لمخطط DocBook/DTD.
  • صفحة مشروع DocBook XSL على SourceForge.net ، وأوراق أنماط XSLT 1.0 لـ DocBook على GitHub
  • كيفية إزالة الغموض عن DocBook
  • DocBook: الدليل النهائي، الطبعة الأولى، الإصدار 2.0.6 - ملف PDF يحتوي على إشارة مرجعية كاملة للدليل الخاص بـ DocBook 3.x و4.x.
  • الكتابة باستخدام عناصر DocBook.
تم الاسترجاع من "https://en.wikipedia.org/w/index.php?title=DocBook&oldid=1250675758"
Original text
Rate this translation
Your feedback will be used to help improve Google Translate