« مروري بر XML | صفحه اصلی | ادامه مروري بر DTD »
مروري بر DTD
November 3, 2007 02:26 PM
ادامه مروري بر XML را با DTD پي مي گيريم.
DTD وسيله اي براي تعريف بلاك هاي معتبر در سند XML است.
يك DTD مي تواند داخل خود سند XML تعريف شود يا بصورت external از آن باشد.
Internal DTD Declaration:
در اين حالت در قسمت DOCTYPE با سينتكس زير تعريف مي شود:
DTD وسيله اي براي تعريف بلاك هاي معتبر در سند XML است.
يك DTD مي تواند داخل خود سند XML تعريف شود يا بصورت external از آن باشد.
Internal DTD Declaration:
در اين حالت در قسمت DOCTYPE با سينتكس زير تعريف مي شود:
<!DOCTYPE root-element [element-declarations]>
مثال:
<?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>you</to>
<from>me</from>
<heading>Reminder</heading>
<body>Don't forget</body>
</note>
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
<note>
<to>you</to>
<from>me</from>
<heading>Reminder</heading>
<body>Don't forget</body>
</note>
در اين مثال DOCTYPE note مشخص مي كند كه عنصر root سند note است.
External DTD Declaration:
در قسمت DOCTYPE با سينتكس زير تعريف مي شود:
External DTD Declaration:
در قسمت DOCTYPE با سينتكس زير تعريف مي شود:
<!DOCTYPE root-element SYSTEM "filename">
مثال بالا را به صورت external مي بينيم:
<?xml version="1.0"?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>you</to>
<from>me</from>
<heading>Reminder</heading>
<body>Don't forget</body>
</note>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>you</to>
<from>me</from>
<heading>Reminder</heading>
<body>Don't forget</body>
</note>
و محتواي فايل note.dtd بدين صورت است:
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
دلايل استفاده از DTD
* هر DTD فرمت فايل XML مربوط به خود را توصيف مي كند.
* افراد و گروه هاي مختلف مي توانند فرمت DTD را بصورت استاندارد براي تبادلات در نظر بگيرند و فايل هاي XML خود را بر اساس آن توليد نمايند.
* application ها نيز مي توانند براي اعتبارسنجي فايل XML از DTD ها استفاده كنند.
از ديدگاه DTD هر سند XML يا HTML از اجزاي زير تشكيل شده است:
* Elements
* Attributes
* Entities
* PCDATA
* CDATA
در ادامه هر كدام تشريح مي گردند:
Elements
Element ها بلاك هاي اصلي اسناد XML يا HTML هستند. موارد زير مثال هايي از element ها هستند:
* هر DTD فرمت فايل XML مربوط به خود را توصيف مي كند.
* افراد و گروه هاي مختلف مي توانند فرمت DTD را بصورت استاندارد براي تبادلات در نظر بگيرند و فايل هاي XML خود را بر اساس آن توليد نمايند.
* application ها نيز مي توانند براي اعتبارسنجي فايل XML از DTD ها استفاده كنند.
از ديدگاه DTD هر سند XML يا HTML از اجزاي زير تشكيل شده است:
* Elements
* Attributes
* Entities
* PCDATA
* CDATA
در ادامه هر كدام تشريح مي گردند:
Elements
Element ها بلاك هاي اصلي اسناد XML يا HTML هستند. موارد زير مثال هايي از element ها هستند:
<body>some text</body>
<message>some text</message>
<message>some text</message>
Attributes
عبارتند از توضيحات اضافي درباره element ها. در مثال زير img همان element است و src يك attribute آن. از آنجا كه خود element محتوايش empty است با "/" بسته مي شود.
عبارتند از توضيحات اضافي درباره element ها. در مثال زير img همان element است و src يك attribute آن. از آنجا كه خود element محتوايش empty است با "/" بسته مي شود.
<img src="computer.gif" />
Entities
برخي كاراكترها معني خاصي در XML دارند مثل < كه علامت شروع تگ XML است. مشابه آن در HTML عبارت ";nbsp&" است كه به "no-breaking-space" اشاره دارد. ليست آنها در XML بدين شرح است:
برخي كاراكترها معني خاصي در XML دارند مثل < كه علامت شروع تگ XML است. مشابه آن در HTML عبارت ";nbsp&" است كه به "no-breaking-space" اشاره دارد. ليست آنها در XML بدين شرح است:
< <
> >
& &
" "
' '
> >
& &
" "
' '
PCDATA
PCDATAمخفف Parsed Character Data متني است كه توسط Parser قابل parse است.
CDATA
CDATA مخفف Character Data متني است كه توسط parser، parse نمي شود.
PCDATAمخفف Parsed Character Data متني است كه توسط Parser قابل parse است.
CDATA
CDATA مخفف Character Data متني است كه توسط parser، parse نمي شود.
نظرخواهی