7/13/20151 חלק 1: XML Extensible Markup Language
2 מסמך XML מורכב מתגים ( (tagsוטקסט. התגים מגיעים בזוגות, למשל... התגים חייבים להיות מקוננים היטב מקונן היטב לא מקונן היטב המבנה של מסמך XML
7/13/20153 המבנה של מסמך XML (המשך) דוגמה: The Big Sleep עדיין נחשב כטקסט 7.75 אלמנטים עם תוכן ריק שקול ל -
7/13/20154 מסמךXML שלם Best Seller Leaves of Grass Jeff Cohen Walt Whitman hardcover 7.75 A collection of some of the finest American free-verse poetry
7/13/20155 תוכן מעורבב אלמנט יכול להכיל תוכן מעורב של תת-אלמנטים וטקסט Best Seller Leaves of Grass Jeff Cohen hardcover 7.75 A collection of some of the finest American free-verse poetry נתונים מהצורה הנ"ל בדרך כלל לא ייווצרו ממסדים רלציוניים.
7/13/20156 תכונות (Attributes) תג פותח יכול להכיל תכונות. בדרך כלל משתמשים בתכונות כאשר רוצים לתאר את התוכן של האלמנט. … אופציונאלי
7/13/20157 תג הכותרת (Header Tag) אפשר לא לרשום את תכונת הקידוד (encoding) ואז ישתמש מעבד ה-XML בערך ברירת המחדל UTF-8. תג הכותרת אינו מהווה חלק מהמסמך ואינו נגיש מתוכו.
7/13/20158 הערות משמשות לעזור לקריאות של המסמך, אך בדרך כלל מעבד ה-XML יתעלם מהן. ניתן להוסיף הערות לכל חלק במסמך, אך לא בתוך תגים. דוגמה: 7.75 >7.75 הערות ב-XML
7/13/20159 מסמכים בנויים היטב (Well Formed) תכונה שמתייחסת לכל מסמך: דורש קינון טוב של התגים, קיום המגבלות על הערות ושמות תכונות שונים זה מזה לכל אלמנט.
7/13/ חלק 2: מתאר מסמך (DTD) אילוץ מבנה על מסמכי XML
7/13/ DTD מגדיר אילוצים על מבנה של מסמך XML DTD מהווה מפרט סינטקטי נאמר שמסמך הוא תקף (Valid) אם הוא מתאים ל-DTD: מתאים לדקדוק שיבוטא ע"י ביטויים רגולריים, מקיים את המגבלות על טיפוסי תכונות ואת המגבלות על מזהים ומצביעים. Document Type Descriptors
7/13/ ב -DTD, אלמנטי XML מוצהרים ע " י הצהרת אלמנט. הצהרה על אלמנט תהיה בצורה הבאה : ה-element-content מתאר את הבנים של האלמנט. element-content יכול להכיל: ANY - מגדיר שהאלמנט מכיל תוכן שאינו מפר את התנאים של מסמך בנוי היטב EMPTY - מגדיר שהאלמנט ריק ביטוי רגולרי – בדרך כלל מוקף בסוגריים פירוט המבנה
7/13/ ביטויים רגולאריים ב-XML דוגמהמשמעותביטוי title התג A מופיעA title, binding הביטוי e1 ולאחריו 2ee1,e2 book* אפס או יותר מופעים של ee* title, binding? אופציונאלי – מופיע פעם אחת או לא מופיע כלל e? author+ אחד או יותר מופעיםe+ (price | points)? או ש-e1 מופיע או e2 (אך לא שניהם) e1 | e2
7/13/ נגדיר את מבנה אלמנטי הספר ע"י הביטוי: ( title, author +, binding ?, ( price | points )?) מה המשמעות של הביטוי הנ"ל? קיבוץ ע"י סוגריים
7/13/ תוכן מעורב ב-DTD פירוט תוכן שמכיל #PCDATA חייב להיות לפי אחת מהתבניות הבאות: (#PCDATA) - רק טקסט מותר כתוכן האלמנט. (#PCDATA | c1 | c2 | …)* - מאפשר ערבוב של טקסט ואלמנטים אבל ללא הגבלה על מספר וסדר
7/13/ הגדרת תכונות ב-DTD הגדרת תכונות תיעשה לפי התבנית הבאה : דוגמה : <!ATTLIST book ISBN ID #REQUIRED available (yes | no) “no” previous IDREFS #IMPLIED> ISBN - חייב להופיע, מסוג ID - מזהה ייחודי Available - אופציונאלי (ערך ברירת מחדל “no”), אנומרציה (yes | no) previous - אופציונאלי, מסוג IDREFS – רשימת מצביעים
7/13/ attribute-type ערכים של ערךהסבר CDATAהערך הוא מחרוזת character data)) (en1|en2|..)הערך חייב להיות אחד מאיברי האינומרציה IDהערך הינו מזהה ייחודי (בכל המסמך) IDREFהערך זהה לאחד מערכי תכונות ה-ID המופיעים במסמך IDREFSהערך הוא רשימה של אחד או יותר מזהים של אלמנטים ("id1 id2 …")
7/13/ דוגמה: רשימת מצאי <!ATTLIST book ISBN ID #REQUIRED available (yes | no) “no” previous IDREFS #IMPLIED>
7/13/ דוגמה: רשימת מצאי <book ISBN=”a ” available=“no” previous=“a a a241546” > Leaves of Grass Jeff Cohen Walt Whitman hardcover 7.75 … מחבר אחד או יותר לכל היותר סוג כריכה אחד כותרת אחת בדיוק אפציונאליחייב להופיע ספרים ככל שנרצה לכל היותר מחיר אחד או מס ' נקודות אחד מצביעים אופציונאלי
7/13/ קישור בין מסמך XMLל-DTD שלו הצהרה פנימית: … ]>... הצהרה חיצונית ע"י שם קובץ. URL: הצהרה חיצונית מסוג:PUBLIC <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" " צומת המסמך
7/13/ דוגמה מלאה <book ISBN=“a ” available=“no” previous=“a a a241546” > Leaves of Grass Jeff Cohen Walt Whitman hardcover 7.75 …