Document Type Definition (DTD) are ca scop definirea sintaxei si structurii unui document XML. Defineste structura documentului utilizand o lista de elemente si atribute permise. DTD este primul limbaj apărut (în ordine cronologică) pentru a specifica structura documentelor XML. Definirea structurii fişierelor XML face posibilă validarea ulterioară a acestora. Practic limbajul DTD specifica sintaxa unei “aplicatii” XML, cum ar fi limbajele derivative ca HTML sau XHTML. Aceasta sintaxa este mai putin generala decat sintaxa XML.
Un DTD este asociat cu un document XML prin intermediul unei declaratii de tipul Document Type Declaration, reprezentand o eticheta ce apare langa declaratia de inceput a oricarui document XML. Declatia stabileste daca documentul este o instantiere a tipului definit de referinta DTD.
DTD reprezinta "caramizile" ce stau la baza constructiei limbajului XML. Din persectiva limbajului DTD, toate documentele XML si HTML sunt construite din urmatoarele structuri e baza: elemente, atribute, entitati, PCDATA si CDATA.
Elementele
Elementele sunt structura de baza atat pentru documentele XML cat si pentru HTML.
Exemplu de element: body, message, in XML si table (predefinit pentru crearea de tabel) in HTML.
<> some text < /body >
<> some text < /message >
Atributele
Atributele ofera informatii in plus despre elemente.
< src="computer.gif">
Entitatile
Unele caractere au o semnificatie speciala in XML, ca semnul "mai mic decat" ( < ) care defineste inceputul unei etichete XML. Un exemplu de entitate din HTML este " \ " utilizat pentru a insera un spatiu intr-un document. Entitatile sunt expandate cand un document este parsat de un parser XML. PCDATA
PCDATA inseamna Parsed Character Data. Reprezinta data de tip caracter care se regaseste sub forma de text intre etichetele de start si end ale unui element XML. PCDATA reprezinta textul care va fi parsat de un parser. Acest text va fi examinat de parser pentru entitati si marcaje.
CDATA
CDATA inseamna Character Data. CDATA este textul care NU va fi parsat de parser. Etichetele din interiorul textului NU vor fi considerate marcaje si entitati si nu vor fi expandate.
Exemplu de DTD ce contine atat identificatori publici cat si de sistem:
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
< !DOCTYPE foo [ < !ENTITY greeting "hello" > ] >
< !DOCTYPE bar [ < !ENTITY greeting "hello" > ] >
Instrumentele utilizate pentru editarea fisierelor XML, cum ar fi Notepad++, Netbeans sau Eclipse, oferă în general şi următoarele facilităţi pentru DTD:
1. Validare XML conform cu DTD-ul dat (această facilitate este oferită şi de cea mai mare parte a browserelor precum şi de multe api-uri de prelucrare a XML-urilor
2. Generare automată a fişierului DTD plecând de la un XML existent. Deşi este o modalitate deseori folosită pentru crearea fişierelor DTD, nu este frecvent şi corectă deoarece generatorul nu poate anticipa în general toate constrângerile pe care dorim să le impunem doar dintr-o variantă simplă de XML.
Alte alternative pentru DTD sunt disponibile din ultimii doi ani, ca de exemplu: XML Schema, referit si ca XML Schema Definition ( XSD); RELAX NG, care face parte din DSDL si este un standard ISO international; Document Structure Description ( DSD) este o alta alternativa propusa, care din 2008 insa, nu a inregistrat mari progrese.
Please visit: www.wipit.dap.ro
luni, 3 noiembrie 2008
Abonați-vă la:
Postare comentarii (Atom)
Un comentariu:
pentru mai multe informatii accesati linkul:
http://en.wikipedia.org/wiki/Document_Type_Definition
Trimiteți un comentariu