Najnowsze tutoriale tworzenie stron internetowych
 

DTD Tutorial


Czym jest DTD?

DTD jest definicja typu dokumentu.

DTD definiuje strukturę i elementy prawne i atrybuty dokumentu XML.


Dlaczego warto skorzystać z DTD?

Z DTD, niezależne grupy osób mogą uzgodnić standardową DTD do zamiany danych.

Aplikacja może korzystać z DTD w celu sprawdzenia, że ​​dane XML jest poprawny.


Deklaracja na wewnętrzny DTD

Jeżeli DTD jest zadeklarowana w pliku XML, to musi być owinięty wewnątrz <!DOCTYPE> definicji:

Dokument XML z wewnętrznym 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>
Zobacz plik XML »

W pliku XML, wybierz "view source" , aby zobaczyć DTD.

DTD powyżej jest interpretowana w następujący sposób:

  • !DOCTYPE note określa, że głównym elementem tego dokumentu jest notatka
  • !ELEMENT note określa, że element uwaga musi zawierać cztery elementy: "to,from,heading,body"
  • !ELEMENT to definiuje się do elementu, który ma być typu "#PCDATA"
  • !ELEMENT from definiuje się od elementu typu "#PCDATA"
  • !ELEMENT heading definiuje element nagłówka być typu "#PCDATA"
  • !ELEMENT body definiuje element ciała, aby być typu "#PCDATA"

Deklaracja na zewnętrzne DTD

Jeżeli DTD jest zadeklarowana w pliku zewnętrznego, <!DOCTYPE> definicja musi zawierać odniesienie do pliku DTD:

Dokument XML z odniesieniem do zewnętrznego 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>
Zobacz plik XML »

I tu jest plik "note.dtd" , który zawiera DTD:

<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>