DocBook

DocBook ialah bahasa penanda Semantik bagi dokumentasi teknikal. Pada asalnya DocBook ditujukan kepada penulisan teknikal berkaitan peralatan dan perisian komputer tetapi ia boleh digunakan untuk dokumentasi lain.What is DocBook?

Sebagai sebuah bahasa semantik, DocBook membolehkan penggunanya mencipta dokumen dalam bentuk penyampaian neutral, yang menawan struktur logik kandungan; kandungan tersebut kemudiannya boleh diterbitkan dalam pelbagai format, termasuk HTML, XHTML, EPUB, PDF, man page, Web helpDocBook WebHelp Project dan HTML Help, tanpa memerlukan pengguna membuat apa-apa pertukaran kepada dokumen sumber.

Gambaran keseluruhan 

DocBook ialah sebuah bahasa XML. Dalam bentuknya sekarang (versi 5.x), bahasa DocBook diberi definisi formal oleh schema RELAX NG yang berintegrasikan peraturan Achematron. (Terdapat juga schema versi W3C XML Schema+Schematron dan Document Type Definition (DTD), akan tetapi versi-versi ini dianggap tidak piawai).

Sebagai sebuah bahasa semantik, dokumen-dokumen DocBook tidak memerikan bagaimana kandungan "akan kelihatan", tetapi ia menunjukkan makna kandungan. Sebagai contoh, daripada menjelaskan bagaimana sebuah abstrak sebuah rencana dapat diletak atur secara visual, DocBook hanya menagatan bahawa sesebuah seksyen itu ialah sebuah abstrak dan terpulanglah kepada alat atau aplikasi pemproses menentukan sama ada seksyen itu akan dimasukkan atau tidak, dan di mana ia akan diletakkan dalam dokumen sekiranya ia dimasukkan.

DocBook menyediakan sejumlah besar teg unsur semantik. Teg-teg ini dibahagikan kepada tiga kategori: struktur, aras blok, dan sebaris.

Teg struktur menentukan ciri am kandungannya. Unsur book (buku), misalnya, menentukan bahasa unsur-unsur anaknya mewakili bahagian-bahagian buku. Ini termasuk tajuk, bab, glosari, sisipan, dan sebagainya. Teg-teg struktur DocBook termasuk: 

 set: himpunan satu atau lebih book. Set boleh bersarang dalam set lain.
 book: himpunan berjudul chapter (bab), article (rencana), dan/atau  part (bahagian), dengan pilihan bagi glosari, sisipan, dan sebagainya.
 part: himpunan berjudul satu atau lebih chapter (bab). Parts boleh bersarang dengan part lain. Boleh memiliki teks pengenalan khas.
 article: himpunan berjudul dan tidak bernombor unsur aras blok. 
 chapter: himpunan berjudul dan bernombor unsur aras blok. DocBook sebenarnya tidak memerlukan bab diberikan nomber tersurat; semantik menetukan bahawa nombor bab ialah nombor unsur chapter dalam dokumen XML itu tambah 1.
 appendix: teks yang terkandung mewakili Adendum atau sisipan..
 dedication: teks mewakili penghormatan unsur struktur yang terkandung.

Unsur-unsur struktur boleh mengandungi unsur struktur lain. Dalam dokumen DocBook, hanya unsur struktur dibenarkan sebagai unsur aras atas.

Teg aras blok merupakan unsur seperti perenggan, senarai, san sebagainya. Tidak semua unsur-unsur ini boleh mengandungi teks sebenar secara langsung. Unsur aras blok berjujukan perlu dipaparkan satu "selepas" yang lain. Maksud "selepas", dalam kes ini, boleh berbeza bergantung kepada bahasa yang digunakan. Dalam kebanyakan bahasa Eropah (dan juga Bahasa Melayu) "selepas" bermaksud "di bawah" atau "berikut". Sistem penulisan bahasa lain, misalnya bahasa Jepun, lazimnya menulis dalam lajur, dengan perenggan dari kanan ke kiri, jadi "selepas" dalam kes ini bermaksud ke kiri. Semantik DocBook bertindak neutral terhadap konsep-konsep berlandaskan bahasa dan boleh digunakan dalam semua kes.

Teg aras sebaris merupakan unsur seperti penekanan (emphasis), hiperpautan, dan sebagainya.  Teg-teg ini membedung teks yang terkandung dalam unsur aras blok. Unsur-unsur ini tidak menyebabkan teks bepercah apabila dipaparkan dalam bentuk perenggan, tetapi, secara lazimnya unsur-unsur sedemikian menyebabkan tindakan tipografi terhadap teks berkaitan oleh pemproses dokumen. Tindakan tipografi ini boleh mengandungi pertukaran kepada fon, saiz atau atrubut yang seakan. Spesifikasi DocBook ada menyatakan bahawa sesuatu tindakan tipografi harus dilakukan terhadap teks, tetapi ia tidak memberi keperluan tipografi khusus.  Ini bermakna tidak ada keperluan bagi pemproses DocBook mengubah teg emphasis kepada "italik". Pemproses DocBook dalam peranti pembaca DocBook boleh membesarkan saiz teks berkaitan; pemproses teks pula boleh menggunakan huruf tebal dan tidak menggunakan huruf italik.

 Dokumen sampel 

 <?xml version="1.0" encoding="UTF-8"?>
 <book xml:id="simple_book" xmlns="http://docbook.org/ns/docbook" version="5.0">
   <title>Buku yang amat mudah</title>
   <chapter xml:id="chapter_1">
     <title>Bab 1</title>
     <para>Helo dunia!</para>
     <para>Saya berharap rencana <emphasis>berguna</emphasis> dan memberi manfaat!</para>
   </chapter>
   <chapter xml:id="chapter_2">
     <title>Bab 2</title>
     <para>Ketemu kembali!</para>
   </chapter>
 </book>

Dari segi semantik, dokumen ini ialah sebuah "buku" (book,) dengan sebuah "tajuk" (title), yang mengandungi dua "bab" (chapter) masing-masing dengan "tajuk" (title) sendiri.  "Bab" pula mengandungi "perenggan" yang mengandungi "perenggan" (paragraph) yang mengandungi teks. Penanda dapat dibaca dengan mudah dalam bahasa Inggeris.

Secara terperinci, unsur akar dokumen di atas ialah book. Semua unsur DocBook berada dalam  XML Namespace, justeru unsur akar perlu ada atribut xmlns bagi menetapkan ruang nama. Juga, unsur akar dokumen DocBook perlu ada version yang menentukan versi susun atur yang digunakan bagi penulisan dokumen itu.

 Lihat juga 
Senarai bahasa penanda
Bandingan bahasa penanda dokumen
LinuxDoc
LaTeX
Mumasy

Rujukan

Bacaan lanjut

 Pautan luar 
 DocBook.org - Collection of DocBook information, including a 4.x and 5.0 version of DocBook: The Definitive Guide and all versions of the DocBook schemas/DTDs.
 DocBook Repository at OASIS - Normative home of DocBook schema/DTD.
 DocBook XSL Project page at SourceForge.net
 DocBook Demystification HOWTO
 DocBook: The Definitive Guide, 1st edition, v. 2.0.6  - Fully bookmarked PDF of the Guide for DocBook 3.x and 4.x.


[[Kategori:Bahasa penanda]
Kategori:Komunikasi teknikal
Kategori:Dokumentasi perisian