מהו קובץ XHTML?
ה-XHTML הוא פורמט קובץ מבוסס טקסט עם סימון ב-XML, תוך שימוש בניסוח מחדש של HTML 4.0. קבצים אלה מתאימים היטב לפתיחה או צפייה בדפדפן אינטרנט. XHTML תוכנן להיות מובנה יותר, פחות סקריפטים, גנרי; שימוש בכל המתקנים הקיימים של XML ועוד יותר עצמאיים. XHTML מספק קבוצה שווה בדרך כלל של אלמנטים ותכונות, עם אפשרויות הרחבה בשילוב עם גיליונות סגנונות. התכונות משמשות מאוסף תכונות המטא נתונים. XHTML מספק גמישות ונגישות על ידי הכפפת כל אלמנטי המצגת HTML לגיליונות סגנונות. גיליונות סגנון הם מגוונים יותר מאלמנטים פרזנטציוניים אלה. מפרטים עבור HTML 4.01, HTML5 ו-XHTML מפותחים באופן דינמי על ידי World Wide Web Consortium (W3C).
היסטוריה קצרה של פורמט קובץ XHTML
ההיסטוריה של XHTML מתחילה בטיוטה של מסמך שפורסמה בדצמבר 1998 על ידי קונסורציום ה-World Wide Web. מסמך זה מתייחס ל"ניסוח מחדש של HTML ב-XML", מפרט הנקרא XHTML 1.0. המפרט החדש הזה ניסח מחדש HTML ב-XML תוך שימוש באלמנטים או התכונות הקיימים. במאי 1999, W3 Consortium הכריז ש-HTML 4.0 נוצר מחדש כיישום XML. כלומר XHTML. ב-26 בינואר 2000, המפרט הראשון המגדיר את XHTML 1.0 שוחרר על ידי W3C. בהמשך, ב-31 במאי 2001, ה-W3C הכריז על XHTML כשפה עצמאית והחל לעבוד על פיתוח HTML 5.0. עם זאת, בשנת 2005, הוקמה קבוצת עבודה (WHATWG) שמטרתה לשפר HTML רגיל ללא תלות ב-XHTML. ה-WHATWG בסופו של דבר התחיל לעבוד על HTML5 במקביל ל-XHTML 2.
פורמט קובץ XHTML
XHTML הוא פורמט, שהוא אוסף של סוגי מסמכים ומודולים שונים המחקים, מקטלגים ומרחיבים את HTML 4. הקבצים ב-XHTML מבוססים על XML, ומטרתם לעבוד עם סוכני המשתמש על בסיס XML. קובצי XHTML תואמים ל-XML. כלי XML סטנדרטיים משמשים לצפייה, עריכה ואימות של קובצי XHTML. HTML Document Object Model או מודל ה-XML Document Object Model [DOM] תלויות יישומים יכולים לפעול באמצעות מסמכי XHTML. בחירה ב-XHTML היום, מפתחי תוכן יכולים ליהנות מכל היתרונות הקשורים ל-XML מבלי לדאוג לגבי התאימות של התוכן שלהם קדימה או אחורה.
קבוצה של אלמנטים קשורים בונה מודול ב-XHTML. טפסים או מודול טבלה עשויים להכיל אלמנטים שונים של טופס או טבלה שניתן להציג בדף אינטרנט. המודולריזציה נועדה לבודד רכיבי HTML לקבוצות של אלמנטים מקושרים רבים. כך שמפתחי תוכן יכולים לנצל את היתרון של בחירת מודול עבור סוגים שונים של מכשירים. יתר על כן, מודולים מאפשרים לסוכני משתמשים לבחור אלמנטים מבלי לאבד עקביות עם תקן XHTML. דרישות הניתוח של XHTML זהות ל-XML בעוד ש-HTML מתרגל משלו.
התאמה למסמך
XHTML2 מציעים מפרטים התואמים מסמכי XHTML 1.0, המשתמשים ברכיבי מרחבי השמות ובתכונות מ-XML ו-XHTML 1.0. התאמה למסמכים היא משני סוגים.
מסמך תואם למהדרין מבוסס על XML שזקוק רק לשירותי חובה המוגדרים במפרט זה. יש לעמוד בקריטריונים הבאים עבור קובצי XHTML:
- קובץ חייב להתאים לאילוצים שהוגדרו ב-DTDs ובנספח ב'.
- רכיב הבסיס של הקובץ חייב להיות html.
- רכיב הבסיס של הקובץ חייב להכיל הצהרה עבור מרחב השמות XHTML ויש להגדיר אותו כ:
http://www.w3.org/1999/xhtml.
- אלמנט הבסיס עשוי להיכתב כך:
<html xmlns#"http://www.w3.org/1999/xhtml" xml:lang#"en" lang#"en">
מוקדם יותר מאלמנט הבסיס, יש להצהיר על DOCTYPE, שהמזהה הציבורי שלו חייב להתייחס לאחת משלושת הגדרות סוגי המסמכים (DTD). מזהה המערכת עשוי להשתנות כך שיתאים למוסכמות המערכת הנוכחיות.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
במסמכי XML, אין צורך לציין הצהרות XML בכל המסמכים; עם זאת מפתחי תוכן מתפתים להשתמש בהצהרות XML בכל מסמכי ה-XHTML שלהם. הצהרות אלו הן חובה כאשר קידוד התווים של המסמך שונה מ-UTF-8/16 או שלא צוין קידוד בפרוטוקול שלטוני. הדוגמה הבאה של מסמך XHTML מגדירה את הצהרות ה-XML
<!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#"en" lang#"en">
<head>
<title>Public Property</title>
</head>
<body>
<p>changed to <a href#"http://sample.com/">sample.com</a>.</p>
</body>
</html>
סוכן משתמש תואם חייב לעמוד בכללים הבאים:
- ניתוח והערכה של מסמך XHTML נעשה על ידי סוכן משתמש המבטיח את עקביותו עם המלצת XML 1.0.
- במקרה של אימות סוכן משתמש, עליו לבדוק את תקפות המסמכים עבור ה-DTDs המיועד להם לפי XML. כאשר קובץ XHTML מעובד על ידי סוכן המשתמש כ-XML גנרי, התכונות של מזהה הסוג יזוהו כמזהי קטע.
אם סוכן משתמש נתקל ברכיב לא מזוהה, להלן הקריטריונים המחייבים שעליו לבצע
- לעבד את התוכן של אותו אלמנט לא ידוע
- התעלם מהתכונה ומהערך שלה
- השתמש בערך של התכונה שסופקה כברירת מחדל.
כאשר סוכן משתמש נתקל בהצהרת הפניה של ישות לא עובדה קודם לכן, יש לעבד אותה בתור התווים (החל בסימן “&” וכלה בנקודה-פסיק). במהלך עיבוד התוכן, תווים או הפניות של ישות אופי הניתנים לחיזוי על ידי סוכן המשתמש אך אינם ניתנים לעיבוד עשויים להשתמש בכל עיבוד חלופי שמניב את המשמעות הדומה. במקרה כזה, המסמך חייב להיות מוצג באופן שיהפוך את המשתמש ברור לעובדה שתהליך העיבוד לא היה תקין. לעיבוד רווחים לבנים, סוכן המשתמש צריך להסתכל על ההגדרה מתוך תווי CSS [CSS2].
תאימות XHTML לאחור
התאימות לאחור של מסמכי XHTML 1. מכירה היטב את סוכני המשתמש של HTML 4, אם מקפידים על הכללים המתאימים. XHTML 1.1 תואם לחלוטין למעט הערות אודם, למרות שבדרך כלל מתעלמים מהן על ידי דפדפני HTML 4. XHTML 2.0 פחות תואם יחסית, למרות זאת הבעיה טופלה במידה מסוימת באמצעות שימוש בסקריפטים.