DTD ອົບຮົມ
ການສະແດງບົດບາດວິຊາການ (DTD) ສາມາດກໍ່ສ້າງມູນນິທິຄວາມມັກຈະເປັນສ່ວນປະກອບທີ່ຖືກກະຕຸ້ນຂອງເອກະສານ XML. ມັນສາມາດນໍາໃຊ້ວິຊາການຖືກກະຕຸ້ນຢ່າງຖືກຕ້ອງໃຫ້ກໍ່ສ້າງສ່ວນສາຍອາກາດຂອງເອກະສານ.
DTD ສາມາດຖືກຖະແຫຼງຈາກດັນຄືນໃນເອກະສານ XML ຫຼືສາມາດເປັນການອຸທອນຢູ່ພາຍໃນ:
DOCTYPE ການກ່າວກັນພາຍໃນ:
ຖ້າ DTD ຖືກເຂົ້າໃນເອກະສານ XML ຕົ້ນຂອງທ່ານແລ້ວອາດຈະຖືກວາງໃນຄຳສັ່ງ DOCTYPE ພາຍໃນທີ່ລຸກນັ້ນ:
!DOCTYPE ປະກອບຫົວຂໍ້ [ປະເພດສິ່ງຂໍ້]
ຕົວຢ່າງ XML ທີ່ມີ DTD (ກວດໃນ IE5 ແລະຂັ້ນຕອນຂັ້ນສູງຫລາຍ ແລະເລືອກຄຳສັ່ງ "ກວດຄືນພາບວິນ"):
<?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>George</to> <from>John</from> <heading>ຄຳຄວາມການກັງວົນ</heading> <body>ບໍ່ຕ້ອງລືມການປະຊຸມ!</body> </note>
ເປີດເອກະສານ XML ນີ້ໃນບາບາວຂອງທ່ານ ແລະເລືອກຄຳສັ່ງ "ກວດຄືນພາບວິນ".
ການອະທິບາຍ DTD ທີ່ຖ້າຢູ່ດຽວກັນ:
!DOCTYPE note (ປີສາຍວິສາດພາສາດາວນອກ) ກໍານົດ note ປະເພດເອກະສານ.
!ELEMENT note (ປີສາຍວິສາດພາສາດາວນອກ) ກໍານົດ note ປະເພດສິ່ງມີສິ່ງຂໍ້ສີ່: "to,from,heading,body"
!ELEMENT to (ປີສາຍວິສາດພາສາດາວນອກ) ກໍານົດ to ປະເພດສິ່ງຂໍ້ "#PCDATA"
!ELEMENT from (ປີສາຍວິສາດພາສາດາວນອກ) ກໍານົດ from ປະເພດສິ່ງຂໍ້ "#PCDATA"
!ELEMENT heading (ປີສາຍວິສາດພາສາດາວນອກ) ກໍານົດ heading ປະເພດສິ່ງຂໍ້ "#PCDATA"
!ELEMENT body (ປີສາຍວິສາດພາສາດາວນອກ) ກໍານົດ body ປະເພດສິ່ງຂໍ້ "#PCDATA"
ການສະແດງເອກະສານພາຍໃນ
ຖ້າ DTD ຢູ່ພາຍໃນເອກະສານ XML ພາຍໃນເອກະສານແບບໄດ້ ມັນຄວນຖືກກັບໃນພາສານ DOCTYPE:
!DOCTYPE ປະກອບຫົວຂໍ້ SYSTEM "ຊື່ເອກະສານ"
ເອກະສານ XML ນີ້ດຽວກັນກັບເອກະສານ XML ທີ່ກ່າວກ່ອນ ແຕ່ມີ DTD ຕ່າງຈາກ: (ເປີດໃນ IE5ແລະເລືອກຄຳສັ່ງ "ກວດຄືນພາບວິນ" (
<?xml version="1.0"?> !DOCTYPE note SYSTEM "note.dtd" <note> <to>George</to> <from>John</from> <heading>ຄຳຄວາມການກັງວົນ</heading> <body>ບໍ່ຕ້ອງລືມການປະຊຸມ!</body> </note>
ນີ້ແມ່ນບັນທຶກ "note.dtd" ທີ່ກວມ DTD:
!ELEMENT note (to,from,heading,body) !ELEMENT to (#PCDATA) !ELEMENT from (#PCDATA) !ELEMENT heading (#PCDATA) !ELEMENT body (#PCDATA)
为什么使用 DTD?
通过 DTD,您的每一个 XML 文件均可携带一个有关其自身格式的描述。
通过 DTD,独立的团体可一致地使用某个标准的 DTD 来交换数据。
而您的应用程序也可使用某个标准的 DTD 来验证从外部接收到的数据。
您还可以使用 DTD 来验证您自身的数据。