Tutoriales de informática - Abrirllave.com

Abrirllave.com

Documento XML asociado a una DTD externa

Existen dos tipos de DTD externa: privada y pública. Para las privadas se utiliza SYSTEM y para las públicas PUBLIC. La sintaxis en cada caso es:

<!DOCTYPE elemento-raíz SYSTEM "URI">
<!DOCTYPE elemento-raíz PUBLIC "identificador-público" "URI">

DTD externa privada - SYSTEM

EJEMPLO Si en un archivo llamado "marcadores.dtd" se escribiese la siguiente DTD:

<!ELEMENT marcadores (pagina)*>
<!ELEMENT pagina (nombre, descripcion, url)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT descripcion (#PCDATA)>
<!ELEMENT url (#PCDATA)>

El siguiente documento XML llamado "marcadores-con-dtd-externa.xml", sería válido:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE marcadores SYSTEM "marcadores.dtd">

<marcadores>
   <pagina>
      <nombre>Abrirllave</nombre>
      <descripcion>Tutoriales de informática.</descripcion>
      <url>http://www.abrirllave.com/</url>
   </pagina>
   <pagina>
      <nombre>Wikipedia</nombre>
      <descripcion>La enciclopedia libre.</descripcion>
      <url>http://www.wikipedia.org/</url>
   </pagina>
   <pagina>
      <nombre>W3C</nombre>
      <descripcion>World Wide Web Consortium.</descripcion>
      <url>http://www.w3.org/</url>
   </pagina>
</marcadores>

DTD externa pública - PUBLIC

EJEMPLO El siguiente documento XML está asociado a una DTD externa pública:

<?xml version="1.0" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
   <head>
      <title>Título</title>
   </head>
   <body>
      <p>Párrafo</p>
   </body>
</html>