Sei sulla pagina 1di 4

MODELO DE OBJETOS DEL DOCUMENTO

El Modelo de Objetos del Documento (DOM) es una interfaz de programacin de aplicaciones


(API) para documentos HTML y XML. Define la estructura lgica de los documentos y el modo en
que se accede y manipula un documento. En la especificacin del DOM, el trmino "documento" se
utiliza en un sentido amplio. XML se utiliza cada vez ms como un medio para representar muchas
clases diferentes de informacin que puede ser almacenada en sistemas diversos, y mucha de
esta informacin se vera, en trminos tradicionales, ms como datos que como documentos. Sin
embargo, XML presenta estos datos como documentos, y se puede usar el DOM para manipular
estos datos.
Con el Modelo de Objetos del Documento los programadores pueden construir documentos,
navegar por su estructura, y aadir, modificar o eliminar elementos y contenido. Se puede acceder
a cualquier cosa que se encuentre en un documento HTML o XML, y se puede modificar, eliminar o
aadir usando el Modelo de Objetos del Documento, salvo algunas excepciones. En particular, an
no se han especificado las interfaces DOM para los subconjuntos internos y externos de XML.
Siendo una especificacin del W3C, uno de los objetivos importantes del Modelo de Objetos del
Documento es proporcionar un interfaz estndar de programacin que pueda utilizarse en una
amplia variedad de entornos y aplicaciones. El DOM se ha diseado para ser utilizado en cualquier
lenguaje de programacin. Para proporcionar una especificacin de las interfaces DOM precisa e
independiente del lenguaje, hemos decidido definir las especificaciones en OMG IDL, segn se
define en la especificacin CORBA 2.2. Adems de la especificacin OMG IDL, proporcionamos
correspondencias con los lenguajes Java y ECMAScript (un lenguaje de scripts industrial basado
en JavaScript y JScript). Nota: OMG IDL se usa nicamente como un medio de especificar las
interfaces independiente de la plataforma y del lenguaje. Se podran haber utilizado otros IDLs. En
general, los IDLs se disean para entornos de computacin especficos. El Modelo de Objetos del
Documento puede implementarse en cualquier entorno de computacin, y no requiere las libreras
de enlazado de objetos (object binding runtimes) generalmente asociadas con tales IDLs.
Un Modelo de Objetos del Documento es
El DOM es un API de programacin para documentos. Guarda una gran similitud con la
estructura del documento al que modeliza. Por ejemplo, considrese esta tabla, tomada de un
documento HTML:
<TABLE>
<TBODY>
<TR>
<TD>Shady Grove</TD>
<TD>Aeolian</TD>
</TR>
<TR>
<TD>Over the River, Charlie</TD>
<TD>Dorian</TD>
</TR>
</TBODY>
</TABLE>

El DOM representa esta tabla de este modo:

En el DOM, los documentos tienen una estructura lgica que es muy parecida a un rbol. Para
ser ms precisos, es ms bien como un "bosque" o una "arboleda", que puede contener ms de un
rbol. Sin embargo, el DOM no especifica que los documentos deban ser implementados como un
rbol o un bosque, ni tampoco especifica cmo deben implementarse las relaciones entre objetos.
El DOM es un modelo lgico que puede implementarse de cualquier manera que sea conveniente.
En esta especificacin, usamos el trmino modelo de estructura para describir la representacin en
forma de rbol de un documento, evitando la utilizacin de trminos tales como "rbol" o "bosque"
para evitar la implicacin de una implementacin en particular. Una propiedad importante de los
modelos de estructura del DOM es su isomorfismo estructural: si dos implementaciones
cualesquiera del Modelo de Objetos del Documento se usan para crear una representacin del
mismo documento, ambas crearn el mismo modelo de estructura, con exactamente los mismos
objetos y relaciones.
Acorde al W3C el Modelo de Objetos del Documento es una interfaz de programacin de
aplicaciones (API) para documentos validos HTML y bien construidos XML. Define la estructura
lgica de los documentos y el modo en que se accede y manipula.
Sirve para
El Modelo de Objetos del Documento (DOM) permite ver el mismo documento de otra manera,
describiendo el contenido del documento como un conjunto de objetos que un programa Javascript
puede actuar sobre ellos.
El DOM permite un acceso a la estructura de una pgina HTML mediante el mapeo de los
elementos de esta pgina en un rbol de nodos. Cada elemento se convierte en un nodo y cada
porcin de texto en un nodo de texto. Para comprender ms fcilmente vase el siguiente ejemplo:
<body>
<p>Esto es un prrafo que contiene <a href="#">un enlace</a> en el medio. </p>
<ul>
<li>Primer punto en la lista</li>
<li>Otro punto en la lista</li>
</ul>
</body>

DOM especifica aplicaciones que pueden utilizarse para manipular documento XML o HTML. Es
importante darse cuenta de que estas aplicaciones son una abstraccin - comparables a las
"clases de base abstractas" en C++, constituyen un medio para especificar una forma de acceder y
manipular la representacin interna que una aplicacin hace de un documento. Las aplicaciones no
implican una implementacin particular concreta. Cada aplicacin DOM es libre de mantener los
documentos segn una representacin cualquiera, siempre y cuando soporte las aplicaciones
mostradas en esta especificacin. Algunas implementaciones del DOM sern programas existentes
que usen las interfaces del DOM para acceder a programas escritos mucho antes de que existiera

la especificacin DOM. Por tanto, DOM se ha diseado para evitar dependencias de


implementacin; en particular,
Los atributos definidos en el IDL no implican objetos concretos que deban tener miembros de
datos especficos - en las correspondencias con cada lenguaje, se transforman en pares de
funciones get()/set(), no en un miembro de datos. Los atributos de solo lectura tendrn una funcin
get() en la correspondencia con el lenguaje.
Las aplicaciones DOM pueden proporcionar interfaces adicionales y objetos que no se
encuentren en esta especificacin y seguir siendo consideradas como conformes con el DOM.
REPRESENTACIN DOM DE UNA PGINA WEB
Decimos que una pgina web es un documento HTML. Este documento puede ser
representado de diferentes maneras:
a) Representacin web: como una pgina web en un navegador donde vemos imgenes,
texto, colores, etc.
b) Representacin texto: como un texto plano (cdigo HTML) que podemos visualizar en
cualquier editor de textos como el bloc de notas de Windows Notepad++ cualquier otro.
c) Representacin DOM: como un rbol donde los elementos de la pgina web estn
organizados jerrquicamente, con nodos superiores (nodos padre o parent) y nodos que derivan de
los nodos padre (nodos hijo o child).
Veamos un ejemplo de representacin DOM. Escribe el siguiente cdigo y gurdalo en un archivo
de extensin html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Ejemplo DOM - aprenderaprogramar.com</title><meta charset="utf-8">
<style type="text/css">
body {background-color:yellow; font-family: sans-serif;}
label {color: maroon; display:block; padding:5px;}
</style>
</head>
<body>
<div id="cabecera">
<h1>Portal web aprenderaprogramar.com</h1>
<h2>Didctica y divulgacin de la programacin</h2>
</div>
<!-- Formulario de contacto -->
<form name ="formularioContacto" class="formularioTipo1" method="get" action="accion.html">
<p>Si quieres contactar con nosotros envanos este formulario relleno:</p>
<label for="nombre"><span>Nombre:</span> <input id="nombre" type="text" name="nombre" /></label>
<label for="apellidos"><span>Apellidos:</span> <input id="apellidos" type="text" name="apellidos"
/></label>
<label for="email"><span>Correo electrnico:</span> <input id="email" type="text" name="email"
/></label>
<label>
<input type="submit" value="Enviar">
<input type="reset" value="Cancelar">
</label>
</form>
</body>
</html>

La anterior representacin se corresponde con la representacin del documento como texto.


Visualiza el resultado. La imagen que vemos en el navegador se corresponde con la
representacin del documento como pgina web en un navegador.

La representacin del documento conforme al estndar del DOM sera (de forma aproximada)
esta:

Potrebbero piacerti anche