DTD چیست ؟ DTD مخفف عبارت (Document Type Definition) می باشد و مشخص کننده ساختار و المان های مجاز و خصوصیات یک سند XML است.
چرا از DTD استفاده می شود؟
با استفاده از DTD گروه های مستقل مردم می توانند با توافق در استانداردها با هم تبادل داده نمایند. یک اپلیکیشن با استفاده از DTD می تواند بررسی نماید که داده های XML معتبر است یا خیر؟
DTD داخلی
اگر DTD داخل یک فایل XML مشخص شود، می بایست درون <!Doctype>
آورده شود.
مثالی از سند XML با DTD داخلی:
<?xml version="1.0"?> <!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend</body> </note>
DTD بالا اینچنین تفسیر می شود:
!DOCTYPE note
مشخص می کند که المان اصلی این سند “note” است.
!ELEMENT note
مشخص می کند که المان اصلی می بایست شامل چهار المان “to,from,heading,body”باشد.
!ELEMENT to
مشخص می کند که المان “to” از نوع “#PCDATA ” می باشد.
!ELEMENT from
مشخص می کند که المان “from” از نوع “#PCDATA ” می باشد.
!ELEMENT heading
مشخص می کند که المان “heading”از نوع “#PCDATA ” می باشد.
!ELEMENT body
مشخص می کند که المان “body” از نوع “#PCDATA ” می باشد.
DTD خارجی
اگر DTD در فایل خارجی مشخص شد، تعریف <!Doctype>
می بایست مرجعی به فایل DTD داشته باشد.
سند XML با یک DTD خارجی
<?xml version="1.0"?> <!DOCTYPE note SYSTEM "note.dtd"> <note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note>
در ادامه یک فایل"note.dtd"
داریم که حاوی DTD است:
<!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)>
دیدگاه بگذارید