Document Type Declaration

מתוך ויקיפדיה, האנציקלופדיה החופשית
(הופנה מהדף הצהרת סוג מסמך)
קפיצה לניווט קפיצה לחיפוש

Document Type Declaration (או DOCTYPE, בעברית: הצהרת סוג מסמך) היא הוראה שמשייכת מסמך SGML או XML מסוים, דף אינטרנט לדוגמה, להגדרת סוג מסמך - DTD (לדוגמה, הצהרה רשמית על סוג מסוים של HTML).[1] ההוראה באה לידי ביטוי על ידי מחרוזת קצרה בשפת סימון עם תחביר קבוע מראש הנכתבת בקוד, בראש הדף.

ה-DOCTYPE הוגדר ב-HTML5 כהצהרה "מיותרת ברובה, אבל נחוצה" רק על מנת לגרום לדפדפנים עדכניים לנתח את הדף בצורה הנכונה.[2]

דוגמאות ל-DTD[עריכת קוד מקור | עריכה]

תחביר[עריכת קוד מקור | עריכה]

התחביר הכללי עבור הצהרת סוג מסמך הוא כזה:

<!DOCTYPE root-element PUBLIC "FPI" ["URI"] [ 
<!-- הגדרות קבוצות משנה פנימיות -->
]>

או

<!DOCTYPE root-element SYSTEM "URI" [ 
<!-- הגדרות קבוצות משנה פנימיות -->
]>

ב-XML, אלמנט השורש שמייצג את המסמך הוא האלמנט הראשון במסמך. לדוגמה, ב-XHTML, אלמנט השורש הוא <html>, כאשר הוא האלמנט הראשון שנפתח (אחרי הצהרת ה-doctype) והאחרון שנסגר. החלק האחרון, שמוקף בסוגריים המרובעים, קורא לקבוצות משנה פנימיות שבהן ניתן להשתמש על מנת להוסיף ולערוך ישויות או להוסיף ולערוך התנהגויות של מילת המפתח PUBLIC.

דוגמה[עריכת קוד מקור | עריכה]

השורה הראשונה של אתרי אינטרנט רבים נראית כך:

<!DOCTYPE html PUBLIC
 "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="ar" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">

סוגי DTD של HTML 4.01[עריכת קוד מקור | עריכה]

Strict DTD ("מחמיר") לא מאפשר הצגת סימון עם אפשרויות שהיה ניתן להשתמש בגיליונות סגנון מדורגים עבורם במקום. כך נראה DTD מחמיר:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
 "http://www.w3.org/TR/html4/strict.dtd">
 <html>
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "http://www.w3.org/TR/html4/loose.dtd">
 <html>

אם נעשה שימוש במסגרות (frames), יש צורך בלהשתמש ב-Frameset DTD במקום:

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
 "http://www.w3.org/TR/html4/frameset.dtd">
 <html>

ה-DTD של XHTML 1.1[עריכת קוד מקור | עריכה]

XHTML 1.1 הוא הגרסה המוגמרת ביותר של XHTML, בה הוצגה תמיכה במודולריזציה של XHTML. ההגדרה של משתמשת באותה רמת החמרה כמו ב-XHTML 1.0 Strict.

<!DOCTYPE html PUBLIC
 "-//W3C//DTD XHTML 1.1//EN"
 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

DOCTYPE חסר DTD של HTML5[עריכת קוד מקור | עריכה]

HTML5 משתמשת בהצהרת DOCTYPE מאוד קצרה, עקב כך שאינה מפנה ל-DTD בצורת URL או FPI. כל מה שהיא כוללת זה את שם התג של אלמנט השורש של המסמך, HTML. במילים של טיוטת התקן בעצמה:

במילים אחרות, <!DOCTYPE HTML>, ללא רגישות לרישיות.

אם לא נתחשב במקרה החריג שחסר את ה-URI או את מחרוזת ה-FPI (שמטופלת בצורה רגישה לאותיות רישיות על ידי מאמתים), הצורה הזו (חוסר רגישות לרישיות במחרוזת !DOCTYPE HTML) היא אותה צורה שניתן למצוא ב-DOCTYPE של HTML 4.01. גם ב-HTML 4 וגם ב-HTML5, התחביר הרשמי מוגדר באותיות גדולות, למרות שאותיות הקטנות וערבובים של אותיות קטנות וגדולות מטופלים כתקינים.

ב-XHTML5 ה-DOCTYPE הוא תלוי רישיות, והוא חייב להיות: "<!DOCTYPE html>", זאת מכיוון שבתחביר XHTML כל ה-HTML PUBLIC חייב להיות באותיות קטנות, כולל אלמנט השורש שאליו פונים בתוך ה-DOCTYPE של HTML5.

ה-DOCTYPE אינו חובה ב-XHTML5, וניתן להשמיטו. עם זאת, במידה ורוצים שהמסמך יעובד גם כ-XML וגם כ-HTML, יש להשתמש בו.

ראו גם[עריכת קוד מקור | עריכה]

הערות שוליים[עריכת קוד מקור | עריכה]

  1. ^ "35 Helpful HTML & HTML5 Interview Questions & Answers". בדיקה אחרונה ב-19 בפברואר 2015. 
  2. ^ "The HTML syntax ― HTML5". בדיקה אחרונה ב-5 ביוני 2011.