Document Type Definition: diferència entre les revisions

Contingut suprimit Contingut afegit
m Robot afegeix: ko:문서 형식 정의
m Robot modifica: es:Definición de tipo de documento; canvis cosmètics
Línia 1:
'''Document Type Definition''' ('''DTD''', en català ''definició de tipus de document'') és una descripció d'estructura i sintaxi d'un document [[XML]] o [[SGML]]. La seva funció bàsica és la descripció del format de dades, per utilitzar un format comú i mantenir la consistència entre tots els documents que empren la mateixa DTD. D'aquesta manera, aquests documents, poden ser validats, tenen una manera d'incloure al document la descripció de les dades que conté, i poden compartir la mateixa descripció i forma de validació dins d'un grup de treball que utilitza el mateix tipus d'informació.
 
== Definició ==
La DTD és una definició, en un document [[SGML]] o [[XML]], que especifica les restriccions a l'estructura i sintaxis del mateix. La DTD es pot incloure dins del fitxer del document, però normalment es guarda en un fitxer [[ASCII]] de text separat. La sintaxis de les DTDs per SGML i XML és similar però no idèntica.
 
La definició d'una DTD especifica la sintaxis d'una aplicació SGML o XML, que pot ésser un estàndard ampliament utilitzat com [[XHTML]] o una aplicació local.
 
== Què descriu una DTD? ==
Les DTDs són utilitzades generalment per a determinar l'estructura d'un document mitjançant etiquetes (en anglès ''tags'') [[XML]] o [[SGML]]. Una DTD descriu:
* '''Elements''': indiquen quines són les etiquetes permeses i el contingut de les etiquetes.
* '''Estructura''': indiquen l'ordre en el que van les etiquetes dins del document.
Línia 27:
Observant l'exemple línia a línia ens diu:
#<llista_personas> és un nom d'element vàlid. L'* indica que poden hi haver 0 o més elementss de persona.
#<persones> és un nom d'element vàlid. Aquest conté obligatòriament l'element nom mentre que la resta són opcionals. I són perquè, hi ha el símbol'?' que ens ho indica.
#<nom> és un nom d'element vàlid. Conté caràcters.
#<genere> és un nom d'element vàlid. Conté caràcters. És opcional.
Línia 33:
#<numeroseguridadsocial> és un nom d'element vàlid.
 
* Un exemple d'un fitxer XML que fa ús d'aquesta DTD descrit anteriorment:
 
<pre>
Línia 51:
És possible renderitzar aquest exemple, en un navegador habilitat per XML (com [[IE5]] o [[Mozilla]]) enganxant i guardant la DTD en un fitxer de text, anomenat ''exemple.dtd'' i el fixter .xml a un fitxer de text anomenat de diferent forma, i obrint el fitxer .xml amb el navegador. Ambdós fitxers has d'estar emmagatzemats en el mateix directori (o carpeta). No obstant això, alguns navegadors no comproven que un document [[XML]] segueix les normes de la DTD; només es requereixen per comprovar que la DTD és sintàcticament correcte.
 
== Limitacions de la DTD ==
Un esquema basat en una DTD té bastantes limitacions. Una DTD no permet definir elements locals que només siguin vàlids dins d'altres elements. Per exemple, si volem tenir un element <Manager> que descrigui al gestor d'una companyia o al d'una delegació, i la definició de Manager és diferent a cada cas, amb una DTD hem de crear els elements "CompanyManager" i "DelegationManager" per evitar el conflicte de noms. És a dir, la falta de jerarquia en una DTD obliga a introduir una jerarquia a base de guions o punts a l'espai de noms ([[Namespace]]). En una DTD, és poc flexible la definició d'elements amb contingut mixte, és a dir, que incloguin altres elements a part del text. A més no és possible indicar a quin tipus de dada (número, data, moneda) pertany un atribut o text d'un element.
 
La necessitat de superar aquestes limitacions propicia l'aparició d'altres llenguatges d'esquema com [[XML Schema]], eines més completes de descripció que són una alternativa a les DTDs.
 
== Vegi també ==
* [[XML]]
* [[Validació XML]]
Línia 74:
[[en:Document Type Definition]]
[[eo:Dokumento-Speco-Difino]]
[[es:Definición de tipo de documento]]
[[es:DTD]]
[[fa:تعریف نوع سند]]
[[fi:DTD]]