2.2.1 הצהרה על אלמנטים במסמך DTD
2.2.2 אלמנטים ריקים
2.2.3 אלמנטים בעלי תוכן טקסט
2.2.4 למנטים בעלי תוכן כללי
2.2.5 אלמנטים בעלי צאצאים
2.2.6 הגדרת אלמנט בעל מופע אחד בלבד
2.2.7 הגדרת אלמנט בעל מופע אחד לפחות
2.2.8 הגדרת אלמנט בעל אפס מופעים או יותר
2.2.9 הגדרת אלמנט בעל אפס מופעים או מופע אחד בלבד
2.2.10 הגדרת אלמנט שיכול עם אפשרויות ברירה

2.2.1 הצהרה על אלמנטים במסמך DTD

במסמך DTD להצהרה על האלמנטים יש את התחביר הבא :
<!ELEMENT element_name category>


כאשר category מסוג PCDATA או CDATA

או:

 
<!ELEMENT element_name (elements_content)>


כאשר elements_content הם אלמנטים

2.2.2 אלמנטים ריקים

כאשר אלמנטים מוגדרים כריקים אז בקטגוריה מוגדרת המילה EMPTY

 
<!ELEMENT element_name EMPTY>


דוגמה:

 
ההצהרה במסמך ה -DTD <!ELEMENT hr EMPTY>


במסמך XML:
<hr />

2.2.3 אלמנטים בעלי תוכן טקסט

אלמנטים בעלי תוכן טקסט מוגדרים כדלהלן :

 
<!ELEMENT element_name (#PCDATA) >


או:

 
<!ELEMENT element_name (#CDATA)>


דוגמה :

בקובץ DTD:

 
<!ELEMENT name (#CDATA) >


במסמך XML:
<name> Al Bandy </name>


2.2.4 אלמנטים בעלי תוכן כללי

אלמנטים בעלי תוכן כללי יכולים להכיל טקסט או אלמנטים
<!ELEMENT element_name ANY>


בקובץ DTD:
<!ELEMENT task ANY>


2.2.5 אלמנטים בעלי צאצאים

אלמנטים המכילים אלמנט אחד או יותר מוגדרים כך: אלמנט אחד:
<!ELEMENT element_name (child_element_name)>


מספר אלמנטים :
<!ELEMENT element_name (child_one_element_name ,child_two_element_name, child_three_element_name,.....)>
<!ELEMENT task (id , title , date , responsible)>



כאשר מגדירים אלמנטים בעלי צאצאים הצאצאים חייבים להיות מוגדרים בסדר שבו הם יהיו מוגדרים במסמך XML

דוגמה להגדרה מלאה :
<!ELEMENT task (id , title , date , responsible)>
<!ELEMENT id (#PCDATA)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT date (#PCDATA)>
<!ELEMENT responsible (#PCDATA)>

2.2.6 הגדרת אלמנט בעל מופע אחד בלבד

ההצהרה:
<!ELEMENT element_name (child_name)>


דוגמה:
<!ELEMENT employee (name)>

 

דוגמה במסמך XML:

<employee>
    <name> Al Bandy</name>
</employee>

דוגמה לא חוקית במסמך XML:
<employee>
    <name> Al Bandy</name>
    <name> Kelly Bandy</name>
</employee>

name יכול להופיע במסמך ה -XML רק פעם אחת תחת employee

2.2.7 הגדרת אלמנט בעל מופע אחד לפחות

ההצהרה:
<!ELEMENT element_name (child_name+)>


דוגמה:
<!ELEMENT reservation (item +) >


דוגמה במסמך XML:
<reservation>
    <item>some item1</item>
    <item>some item2</item>
    <item>some item3</item<
</reservation>

דוגמה לא חוקית :
<reservation> </reservation>


item יכול להופיע במסמך ה - XML פעם אחת או יותר תחת employee בדוגמה הלא חוקית אין מופעים של item

2.2.8 הגדרת אלמנט בעל אפס מופעים או יותר

ההצהרה:
<!ELEMENT element_name (child_name*)>


דוגמה:
<!ELEMENT client (reservation *)>


חת clientreservation יכול לא להופיע במסמך ה -XML או להופיע מספר פעמים

2.2.9 הגדרת אלמנט בעל אפס מופעים או מופע אחד בלבד

ההצהרה:
<!ELEMENT element_name (child_name?)>


דוגמה:
<!ELEMENT reservatin (item?)>


item יכול לא להופיע במסמך ה -XMLאו להופיע רק פעם אחת תחת reservation

2.2.10 הגדרת אלמנט שיכול עם אפשרויות ברירה

דוגמה:
<!ELEMENT element1 (element2 ,element3,(element4 |element5))>


e לאחריו מופע אחד של element3 ולאחריו מופעבדוגמה הזו element1 מכיל מופע אחד של ement2 אחד של element4 או מופע אחד של element5

דוגמאות נוספות

 
<!ELEMENT element1 (#PCDATA|element2|elemet3)+>


element1 מכיל טקסט או לפחות מופע אחד של element3
<!ELEMENT element1 (element2?,elemet3)+>


element1 מכיל מופע אחד לפחות של זוג אלמנטים element2 ו-element3 כאשר בכל מופע כזה element2 יכול לא להופיע אך אם הו מופיע הוא מופיע רק פעם אחת ולאחריו מופיע פעם אחת element3

 

מרכיבי מסמך DTD
מאפייני DTD