Especificación del Modelo de Objetos del Documento (DOM), Nivel 1 Importante: Este documento es una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1 Specification", publicada el 1 de octubre de 1998. Esta traducción ha sido publicada el 30 de junio de 2001. El URI de este documento es http://html.conclase.net/w3c/dom1-es/cover.html El URI del documento original es http://www.w3.org/TR/1998/REC-DOM-Level-119981001 El URI de la última versión de la Recomendación en inglés es http://www.w3.org/TR/RECDOM-Level-1 La única versión normativa de este documento es la versión original en inglés que se encuentra en el sitio web del W3C. Ninguna parte del presente documento en castellano es normativa aunque se especifique lo contrario. Véase el Aviso de copyright al final de este documento. Este documento puede contener errores de traducción. La traducción ha sido realizada por Juan R. Pozo, <[email protected]> Versiones comprimidas: dom1-es.zip [103KB], dom1-es.tgz [92KB] REC-DOM-Level-1-19981001 Especificación del Modelo de Objetos del Documento (DOM), Nivel 1 Document Object Model (DOM) Level 1 Specification Versión 1.0 Recomendación del W3C 1 de octubre de 1998 Esta versión (en inglés) http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001 http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.ps http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.pdf http://html.conclase.net/w3c/dom1-es/cover.html (1 de 5) [16/10/2003 13:42:23] Especificación del Modelo de Objetos del Documento (DOM), Nivel 1 http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.tgz http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.zip http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/DOM.txt Versión más reciente (en inglés) http://www.w3.org/TR/REC-DOM-Level-1 Versiones anteriores (en inglés) http://www.w3.org/TR/1998/PR-DOM-Level-1-19980818 http://www.w3.org/TR/1998/WD-DOM-19980720 http://www.w3.org/TR/1998/WD-DOM-19980416 http://www.w3.org/TR/WD-DOM-19980318 http://www.w3.org/TR/WD-DOM-971209 http://www.w3.org/TR/WD-DOM-971009 Presidente del Grupo de Trabajo Lauren Wood, SoftQuad, Inc. Editores Vidur Apparao, Netscape Steve Byrne, Sun Mike Champion, ArborText Scott Isaacs, Microsoft Ian Jacobs, W3C Arnaud Le Hors, W3C Gavin Nicol, Inso EPS Jonathan Robie, Texcel Research Robert Sutor, IBM Chris Wilson, Microsoft Lauren Wood, SoftQuad, Inc. Principales Colaboradores Vidur Apparao, Netscape Steve Byrne, Sun (hasta noviembre de 1997) Mike Champion, ArborText, Inc. Scott Isaacs, Microsoft (hasta enero de 1998) Arnaud Le Hors, W3C Gavin Nicol, Inso EPS Jonathan Robie, Texcel Research Peter Sharpe, SoftQuad, Inc. Bill Smith, Sun (a partir de noviembre de 1997) Jared Sorensen, Novell Robert Sutor, IBM Ray Whitmer, iMall Chris Wilson, Microsoft (después de enero de 1998) Status de este documento http://html.conclase.net/w3c/dom1-es/cover.html (2 de 5) [16/10/2003 13:42:23] Especificación del Modelo de Objetos del Documento (DOM), Nivel 1 Este documento ha sido revisado por Miembros del W3C y otras partes interesadas y ha sido aprobado por el Director como Recomendación del W3C. Es un documento estable y puede ser usado como material de referencia o citado como referencia normativa en otros documentos. La intención del W3C al hacer esta Recomendación es llamar la atención sobre la especificación y promover su difusión general. Esto impulsa la funcionalidad y la interoperabilidad de la Web. Los autores de este documento son los miembros del Grupo de Trabajo DOM, y cada capítulo puede tener editores diferentes. Los comentarios sobre este documento deberían enviarse a la lista pública de correo [email protected]. Puede encontrarse una lista de las recomendaciones actuales y otros documentos técnicos del W3C en http://www.w3.org/TR. Erratas La lista de los errores conocidos de este documento se encuentra en http://www.w3.org/DOM/updates/REC-DOM-Level-1-19981001-errata.html. N.T.: La correción de estas erratas ya ha sido tenida en cuenta en la traducción al castellano del documento. Para informar sobre errores presentes en la traducción española de la especificación, puede ponerse en contacto con el traductor en [email protected]. Gracias por su colaboración. Idiomas disponibles La versión en inglés de esta especificación es la única versión normativa. Sin embargo, para traducciones en otros idiomas, véase http://www.w3.org/DOM/updates/REC-DOM-Level-1translations.html. Resumen Esta especificación define el Nivel 1 del Modelo de Objetos del Documento, una interfaz independiente de la plataforma y del lenguaje que permite a programas y scripts acceder y actualizar dinámicamente los contenidos, la estructura y el estilo de los documentos. El Modelo de Objetos del Documento proporciona un conjunto estándar de objetos para representar documentos HTML y XML, un modelo estándar de cómo pueden combinarse estos objetos y una interfaz estándar para acceder a ellos y manipularlos. Las compañías pueden dar soporte al DOM como interfaz para sus estructuras de datos y APIs propietarias, y los autores de contenido pueden escribir para las interfaces estándar del DOM en lugar de para las APIs específicas de cada producto, lo cual incrementa la interoperabilidad http://html.conclase.net/w3c/dom1-es/cover.html (3 de 5) [16/10/2003 13:42:23] Especificación del Modelo de Objetos del Documento (DOM), Nivel 1 en la Web. El objetivo de la especificación DOM es definir una interfaz programable para HTML y XML. La especificación del Nivel 1 del DOM se divide en dos partes: Núcleo y HTML. La sección sobre el Núcleo del Nivel 1 del DOM proporciona un conjunto de interfaces fundamentales de bajo de nivel que pueden representar cualquier documento estructurado, al mismo tiempo que define interfaces extendidas para representar documentos XML. Estas interfaces extendidas XML no necesitan ser implementadas por las implementaciones del DOM que sólo proporcionen acceso a documentos HTML; deben implementarse todas las interfaces fundamentales de la sección sobre el Núcleo. Las implementaciones conformes con el DOM que implementen las interfaces extendidas XML deben también implementar las interfaces del Núcleo, pero no las interfaces HTML. La sección sobre el Nivel 1 de HTML proporciona interfaces adicionales de alto nivel que se utilizan con las interfaces fundamentales definidas en la sección sobre el Núcleo del Nivel 1 para proporcionar una visión más conveniente de los documentos HTML. Una implementación conforme del DOM HTML implementa todas las interfaces fundamentales del Núcleo así como las interfaces HTML. Tabla de contenidos ● ● ● ● ● ● ● ● ● ● ● ● ● Tabla completa de contenidos Aviso de Copyright ¿Qué es el Modelo de Objetos del Documento? Capítulo 1: Modelo de Objetos del Documento (Núcleo), Nivel 1 Capítulo 2: Modelo de Objetos del Documento (HTML), Nivel 1 Apéndice A: Colaboradores Apéndice B: Glosario Apéndice C: Definiciones IDL Apéndice D: Correspondencias con el Lenguaje Java Apéndice E: Correspondencias con el Lenguaje ECMA Script Referencias Índice Notas sobre la Producción (No Normativas) AVISO DE COPYRIGHT Copyright © 1994-2001 World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). Todos los derechos reservados. http://www.w3.org/Consortium/Legal/ Los titulares del copyright proporcionan los documentos públicos que se encuentran en el sitio web del W3C de acuerdo con la siguiente Licencia. El software y las Definiciones de Tipo de Documento (Document Type Definitions, DTDs) asociadas con las especificaciones http://html.conclase.net/w3c/dom1-es/cover.html (4 de 5) [16/10/2003 13:42:23] Especificación del Modelo de Objetos del Documento (DOM), Nivel 1 del W3C están gobernados por el aviso de copyright de Software. Por el uso y/o la copia de este documento, usted (el beneficiario de la Licencia del copyright) está de acuerdo en que ha leído, entendido y que respetará los siguientes términos y condiciones: Se concede permiso para usar, copiar y distribuir los contenidos de este documento en cualquier medio y para cualquier propósito sin necesidad del pago de fianzas ni royalties, siempre y cuando se incluya la siguiente información en TODAS las copias de este documento, o partes del mismo, que usted utilice: 1. Un vínculo o URL al documento original del W3C. 2. El aviso de copyright pre-existente del autor original; caso de no existir éste, debería utilizarse un aviso de la forma siguiente: "Copyright © [$fecha-del-documento] World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal" (Preferiblemente en hipertexto, pero se permite una representación en texto simple.) 3. Si existe, el STATUS o ESTADO del documento W3C. Cuando el espacio lo permita, debería incluirse una copia del texto completo de esta NOTICIA. Le instamos a que mencione a los autores en cualquier programa, documento, u otro artículo o producto que usted cree como consecuencia de la implementación de los contenidos de este documento o de cualquier parte del mismo. Esta licencia no concede permiso para crear modificaciones o documentos derivados de documentos del W3C. Sin embargo, caso de satisfacerse adicionales (documentados en el Copyright FAQ), el W3C puede conceder permiso para crear modificaciones o documentos derivados a los individuos que satisfagan dichos requisitos. ESTE DOCUMENTO SE OFRECE "TAL COMO ESTÁ". LOS PROPIETARIOS DEL COPYRIGHT NO HACEN GARANTÍAS NI REPRESENTACIONES DE NINGÚN TIPO, EXPRESAS O IMPLÍCITAS, INCLUYENDO, AUNQUE SIN LIMITARSE A, LAS GARANTÍAS DE COMERCIALIZACIÓN, ADECUACIÓN A UN PROPÓSITO ESPECÍFICO, O TÍTULO; QUE LOS CONTENIDOS DEL DOCUMENTO SEAN APROPIADOS PARA CUALQUIER PROPÓSITO; NI QUE LA IMPLEMENTACIÓN DE TALES CONTENIDOS NO INFRINGIRÁ LAS PATENTES, DERECHOS DE AUTOR, MARCAS REGISTRADAS O COMERCIALES U OTROS DERECHOS DE TERCERAS PERSONAS. LOS PROPIETARIOS DEL COPYRIGHT NO SERÁN RESPONSABLES DE NINGÚN DAÑO DIRECTO, INDIRECTO, ESPECIAL O CONSECUENTE DEBIDO A CUALQUIER USO DEL DOCUMENTO O DEL FUNCIONAMIENTO O IMPLEMENTACIÓN DE LOS CONTENIDOS DEL MISMO. El nombre y marcas registradas de los propietarios del copyright NO pueden utilizarse en anuncios o publicidad relativos a este documento o a sus contenidos sin un permiso previo por escrito. Los derechos de autor de este documento pertenecerán en todo momento a los propietarios del copyright. http://html.conclase.net/w3c/dom1-es/cover.html (5 de 5) [16/10/2003 13:42:23] Tabla Completa de Contenidos REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Tabla Completa de Contenidos ● ● ● ● ● Tabla Completa de Contenidos Aviso de Copyright ¿Qué es el Modelo de Objetos del Documento? ❍ Introducción ❍ Lo que el Modelo de Objetos del Documento es ❍ Lo que el Modelo de Objetos del Documento no es ❍ De dónde vino el Modelo de Objetos del Documento ❍ Entidades y el Núcleo del DOM ❍ Interfaces del DOM e Implementaciones del DOM ❍ Limitaciones del Nivel 1 Capítulo 1: Modelo de Objetos del Documento (Núcleo) Nivel 1 ❍ 1.1. Visión general de las Interfaces del Núcleo del DOM ■ 1.1.1. El Modelo de Estructura del DOM ■ 1.1.2. Gestión de Memoria ■ 1.1.3. Convenciones de Nombres ■ 1.1.4. La Herencia frente a las Visiones Planas del API ■ 1.1.5. El tipo DOMString ■ 1.1.6. Distinción entre mayúsculas y minúsculas en el DOM ❍ 1.2. Interfaces Fundamentales ❍ 1.3. Interfaces Extendidas Capítulo 2: Modelo de Objetos del Documento (HTML) Nivel 1 ❍ 2.1. Introducción ❍ 2.2. Aplicación del Núcleo del DOM al HTML http://html.conclase.net/w3c/dom1-es/expanded-toc.html (1 de 2) [16/10/2003 13:43:45] Tabla Completa de Contenidos 2.2.1. Convenciones de nombres 2.3. Definiciones de Objetos Diversos 2.4. Objetos relacionados con documentos HTML 2.5. Elementos HTML ■ 2.5.1. Atributos de Propiedades ■ 2.5.2. Excepciones de Nombres ■ 2.5.3. Exposición de los Nombres de Tipos de Elemento (tagName) ■ 2.5.4. La interfaz HTMLElement ■ 2.5.5. Definiciones de objetos ■ ❍ ❍ ❍ ● ● ● ● ● ● ● ● Apéndice A: Colaboradores Apéndice B: Glosario Apéndice C: Definiciones IDL ❍ C.1. Modelo de Objetos del Documento, Nivel 1, Núcleo ❍ C.2. Modelo de Objetos del Documento, Nivel 1, HTML Apéndice D: Correspondencias con el Lenguaje Java ❍ D.1. Modelo de Objetos del Documento, Nivel 1, Núcleo ❍ D.2. Modelo de Objetos del Documento, Nivel 1, HTML Apéndice E: Relaciones con el Lenguaje ECMA Script ❍ E.1. Modelo de Objetos del Documento, Nivel 1, Núcleo ❍ E.2. Modelo de Objetos del Documento, Nivel 1, HTML Referencias Índice Notas sobre la Producción (No Normativas) ❍ 1. La Definición del Tipo de Documento ❍ 2. El proceso de producción ❍ 3. Definiciones de Objetos http://html.conclase.net/w3c/dom1-es/expanded-toc.html (2 de 2) [16/10/2003 13:43:45] Aviso de Copyright REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Aviso de Copyright Copyright © 1998 World Wide Web Consortium , (Massachusetts Institute of Technology , Institut National de Recherche en Informatique et en Automatique , Keio University ). Todos los derechos reservados. Los titulares del copyright proporcionan los documentos públicos que se encuentran en el sitio web del W3C de acuerdo con la siguiente Licencia. Por el uso y/o la copia de este documento o del documento del W3C al que este Aviso está vinculado, usted está de acuerdo en que ha leído, entendido y que respetará los siguientes términos y condiciones: Se concede permiso para usar, copiar y distribuir los contenidos de este documento o del documento del W3C al que este Aviso está vinculado, en cualquier medio y para cualquier propósito sin necesidad del pago de fianzas ni royalties, siempre y cuando se incluya la siguiente información en TODAS las copias de este documento, o partes del mismo, que usted utilice: 1. Un vínculo o URL al documento original del W3C. 2. El aviso de copyright pre-existente del autor original; caso de no existir éste, un aviso de la forma siguiente: "Copyright © World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved." 3. Si existe, el STATUS o ESTADO del documento W3C. Cuando el espacio lo permita, debería incluirse una copia del texto completo de esta NOTICIA. Le instamos a que mencione a los autores en cualquier programa, documento, u otro artículo o producto que usted cree como consecuencia de la implementación de los contenidos de este documento o de cualquier parte del mismo. Esta licencia no concede permiso para crear modificaciones o documentos derivados de documentos del W3C. http://html.conclase.net/w3c/dom1-es/copyright-notice.html (1 de 2) [16/10/2003 13:44:09] Aviso de Copyright ESTE DOCUMENTO SE OFRECE "TAL COMO ESTÁ". LOS PROPIETARIOS DEL COPYRIGHT NO HACEN GARANTÍAS NI REPRESENTACIONES DE NINGÚN TIPO, EXPRESAS O IMPLÍCITAS, INCLUYENDO, AUNQUE SIN LIMITARSE A, LAS GARANTÍAS DE COMERCIALIZACIÓN, ADECUACIÓN A UN PROPÓSITO ESPECÍFICO, O TÍTULO; QUE LOS CONTENIDOS DEL DOCUMENTO SEAN APROPIADOS PARA CUALQUIER PROPÓSITO; NI QUE LA IMPLEMENTACIÓN DE TALES CONTENIDOS NO INFRINGIRÁ LAS PATENTES, DERECHOS DE AUTOR, MARCAS REGISTRADAS O COMERCIALES U OTROS DERECHOS DE TERCERAS PERSONAS. LOS PROPIETARIOS DEL COPYRIGHT NO SERÁN RESPONSABLES DE NINGÚN DAÑO DIRECTO, INDIRECTO, ESPECIAL O CONSECUENTE DEBIDO A CUALQUIER USO DEL DOCUMENTO O DEL FUNCIONAMIENTO O IMPLEMENTACIÓN DE LOS CONTENIDOS DEL MISMO. El nombre y marcas registradas de los propietarios del copyright NO pueden utilizarse en anuncios o publicidad relativos a este documento o a sus contenidos sin un permiso previo por escrito. Los derechos de autor de este documento pertenecerán en todo momento a los propietarios del copyright. http://html.conclase.net/w3c/dom1-es/copyright-notice.html (2 de 2) [16/10/2003 13:44:09] ¿Qué es el Modelo de Objetos del Documento? REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. ¿Qué es el Modelo de Objetos del Documento? Editores Jonathan Robie, Texcel Research Introducción El Modelo de Objetos del Documento (DOM) es una interfaz de programación de aplicaciones (API) para documentos HTML y XML. Define la estructura lógica de los documentos y el modo en que se accede y manipula un documento. En la especificación del DOM, el término "documento" se utiliza en un sentido amplio. XML se utiliza cada vez más como un medio para representar muchas clases diferentes de información que puede ser almacenada en sistemas diversos, y mucha de esta información se vería, en términos tradicionales, más 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 añadir, 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 añadir usando el Modelo de Objetos del Documento, salvo algunas excepciones. En particular, aún no se han especificado las interfaces DOM para los subconjuntos internos y externos de XML. Siendo una especificación del W3C, uno de los objetivos importantes del Modelo de Objetos del Documento es proporcionar un interfaz estándar de programación que pueda utilizarse en una amplia variedad de entornos y aplicaciones. El DOM se ha diseñado para ser utilizado en cualquier lenguaje de programación. Para proporcionar una especificación de las interfaces DOM precisa e independiente del lenguaje, hemos decidido definir las especificaciones en OMG IDL, según se define en la especificación CORBA 2.2. Además de la especificación OMG IDL, proporcionamos http://html.conclase.net/w3c/dom1-es/introduction.html (1 de 7) [16/10/2003 13:44:22] ¿Qué es el Modelo de Objetos del Documento? 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 podrían haber utilizado otros IDLs. En general, los IDLs se diseñan para entornos de computación específicos. El Modelo de Objetos del Documento puede implementarse en cualquier entorno de computación, y no requiere las librerías de enlazado de objetos (object binding runtimes) generalmente asociadas con tales IDLs. Lo que el Modelo de Objetos del Documento es El DOM es un API de programación para documentos. Guarda una gran similitud con la estructura del documento al que modeliza. Por ejemplo, considérese 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: http://html.conclase.net/w3c/dom1-es/introduction.html (2 de 7) [16/10/2003 13:44:22] ¿Qué es el Modelo de Objetos del Documento? Representación del DOM de la tabla del ejemplo En el DOM, los documentos tienen una estructura lógica que es muy parecida a un árbol. Para ser más precisos, es más bien como un "bosque" o una "arboleda", que puede contener más de un árbol. Sin embargo, el DOM no especifica que los documentos deban ser implementados como un árbol o un bosque, ni tampoco especifica cómo deben implementarse las relaciones entre objetos. El DOM es un modelo lógico que puede implementarse de cualquier manera que sea conveniente. En esta especificación, usamos el término modelo de estructura para describir la representación en forma de árbol de un documento, evitando la utilización de términos tales como "árbol" o "bosque" para evitar la implicación de una implementación 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 representación del mismo documento, ambas crearán el mismo modelo de estructura, con exactamente los mismos objetos y relaciones. Se eligió el nombre "Modelo de Objetos del Documento" porque es un "modelo de objetos" en el sentido tradicional del diseño orientado a objetos: los documentos se modelizan usando objetos, y el modelo comprende no solamente la estructura de un documento, sino también el comportamiento de un documento y de los objetos de los cuales se compone. En otras palabras, los nodos del diagrama anterior no representan una estructura de datos, sino que representan objetos, los cuales pueden tener funciones e identidad. Como modelo de objetos, el DOM identifica: ● ● ● las interfaces y objetos usados para representar y manipular un documento la semántica de estas interfaces y objetos, incluyendo comportamiento y atributos las relaciones y colaboraciones entre estas interfaces y objetos Tradicionalmente, la estructura de los documentos SGML se ha representado mediante un modelo de datos abstractos, no con un modelo de objetos. En un modelo de datos abstractos, el modelo se centra en los datos. En los lenguajes de programación orientados a objetos, los datos se encapsulan en objetos que ocultan los datos, protegiéndolos de su manipulación directa desde el exterior. Las funciones asociadas con estos objetos determinan cómo pueden manipularse los objetos, y son parte http://html.conclase.net/w3c/dom1-es/introduction.html (3 de 7) [16/10/2003 13:44:22] ¿Qué es el Modelo de Objetos del Documento? del modelo de objetos. El Modelo de Objetos del Documento consiste actualmente de dos partes, el Núcleo del DOM y el DOM HTML. El Núcleo del DOM representa la funcionalidad usada para los documentos XML, y también sirve de base para el DOM HTML. Una implementación conforme del DOM debe implementar todas las interfaces fundamentales del capítulo sobre el Núcleo con la semántica definida. Además, debe implementar o bien el DOM HTML o bien las interfaces extendidas (XML), o ambas, con la semántica definida. Lo que el Modelo de Objetos del Documento no es Se ha incluido esta sección para dar una noción más precisa del DOM distinguiéndolo de otros sistemas que aparentemente pueden resultar similares a él. ● ● ● ● ● ● Aunque el Modelo de Objetos del Documento ha recibido una gran influencia del "HTML Dinámico", en el Nivel 1 no implementa todo el "HTML Dinámico". En particular, aún no se han definido los eventos. El Nivel 1 se ha diseñado para establecer un fundamento sólido para esta clase de funcionalidad, por medio de un modelo del propio documento a la vez robusto y flexible. El Modelo de Objetos del Documento no es una especificación binaria. Los programas DOM escritos en el mismo lenguaje serán compatibles entre plataformas a nivel de código fuente, pero el DOM no define ninguna forma de interoperabilidad binaria. El Modelo de Objetos del Documento no es una manera de ofrecer objetos persistentes para XML o HTML. En lugar de especificar cómo pueden representarse objetos en XML, el DOM especifica cómo se representan los documentos XML y HTML como objetos, de modo que puedan ser utilizados por programas orientados a objetos. El Modelo de Objetos del Documento no es un conjunto de estructuras de datos, es un modelo de objetos que especifica interfaces. Aunque este documento contiene diagramas que muestran relaciones padre/hijo, éstas son relaciones lógicas definidas por las interfaces de programación, no representaciones de ninguna estructura interna de datos particular. El Modelo de Objetos del Documento no define "la semántica interna real" del XML o del HTML. La semántica de estos lenguajes está definida por las Recomendaciones correspondientes del W3C. El DOM es un modelo de programación diseñado para respetar estas semánticas. El DOM no tiene ninguna consecuencia en el modo en que se escriben los documentos XML y HTML; cualquier documento que pueda escribirse con estos lenguajes puede ser representado en el DOM. El Modelo de Objetos del Documento, a pesar de su nombre, no es un competidor del modelo de objetos COM. COM, al igual que CORBA, es una manera independiente del lenguaje de especificar interfaces y objetos; el DOM es un conjunto de interfaces y objetos diseñado para manipular documentos HTML y XML. El DOM se puede implementar usando sistemas independientes del lenguaje como COM o CORBA; también se puede implementar usando enlaces específicos del lenguaje, como los especificados en este documento para Java y ECMAScript. http://html.conclase.net/w3c/dom1-es/introduction.html (4 de 7) [16/10/2003 13:44:22] ¿Qué es el Modelo de Objetos del Documento? De dónde vino el Modelo de Objetos del Documento El DOM se originó como una especificación para permitir que los programas Java y los scripts de JavaScript fueran portables entre los navegadores web. El "HTML Dinámico" fue el ascendiente inmediato del Modelo de Objetos del Documento, y originalmente se pensaba en él principalmente en términos de navegadores. Sin embargo, cuando se formó el Grupo de Trabajo DOM en el W3C, también se unieron a él compañías de otros ámbitos, incluyendo los de la edición y archivo de documentos HTML y XML. Varias de estas compañías habían trabajado con SGML antes de que se hubiera desarrollado el XML; como resultado de ello, el DOM ha recibido influencias de los "Groves" de SGML y del estándar HyTime. Algunas de estas compañías también habían desarrollado sus propios modelos de objetos para documentos a fin de proporcionar un API para los editores o los archivos de documentos SGML/XML, y estos modelos de objetos también han influido en el DOM. Las entidades y el núcleo del DOM En las interfaces fundamentales del DOM no hay objetos que representen entidades. Las referencias numéricas de caracteres y las referencias a entidades predefinidas en HTML y en XML son reemplazadas por el carácter individual que constituye la sustitución de la entidad. Por ejemplo, en: <p>This is a dog &amp; a cat</p> el "&amp;" será reemplazado por el carácter "&", y el texto del elemento P formará una única secuencia continua de caracteres. Debido a que las referencias numéricas de caracteres y las entidades predefinidas no son reconocidas como tales en las secciones CDATA, ni en los elementos SCRIPT y STYLE de HTML, no son reemplazadas por el carácter individual al que aparantemente se refieren. Si el ejemplo anterior estuviera contenido en una sección CDATA, el "&amp;" no sería reemplazado por "&"; y el <p> tampoco sería reconocido como una etiqueta inicial. La representación de entidades generales, tanto internas como externas, está definida dentro de las interfaces extendidas (XML) del Nivel 1 de la especificación. Nota: Cuando la representación DOM de un documento sea serializada como texto XML o HTML, las aplicaciones necesitarán comprobar cada carácter de los datos de texto para ver si necesita ser convertido en una secuencia de escape usando una entidad numérica o predefinida. De lo contrario se podría obtener HTML o XML inválido. Además, las implementaciones deberían ser conscientes del hecho de que la serialización en una codificación de caracteres ("charset") que no cubra http://html.conclase.net/w3c/dom1-es/introduction.html (5 de 7) [16/10/2003 13:44:22] ¿Qué es el Modelo de Objetos del Documento? completamente la ISO 10646 puede fallar si hay caracteres en el código o en las secciones CDATA que no estén presentes en esa codificación. Interfaces DOM e Implementaciones DOM El DOM especifica interfaces que pueden utilizarse para manipular documentos XML o HTML. Es importante darse cuenta de que estas interfaces son una abstracción. Comparables a las "clases de base abstractas" de C++, constituyen un medio de especificar una forma de acceder y manipular la representación interna que una aplicación hace de un documento. Las interfaces no implican una implementación concreta en particular. Cada aplicación DOM es libre de mantener los documentos según una representación conveniente cualquiera, siempre y cuando soporte las interfaces mostradas en esta especificación. Algunas implementaciones del DOM serán programas existentes que usen las interfaces del DOM para acceder a programas escritos mucho antes de que existiera la especificación del DOM. Por tanto, el DOM se ha diseñado para evitar dependencias de la implementación. En particular, 1. Los atributos definidos en el IDL no implican objetos concretos que deban tener miembros de datos específicos - en las correspondencias con cada lenguaje, se transforman en pares de funciones get()/set(), no en un miembro de datos. (Los atributos de sólo lectura sólo tendrán una función get().) 2. Las aplicaciones DOM pueden proporcionar interfaces adicionales y objetos que no se encuentren en esta especificación y seguir siendo considerardas como conformes con el DOM. 3. Debido a que especificamos interfaces, y no los objetos reales que deben ser creados, el DOM no puede saber a qué constructores llamará una implementación. En general, los usuarios del DOM llamarán a métodos createXXX() de la clase Document para crear estructuras del documento, y las implementaciones del DOM crearán sus propias representaciones internas de dichas estructuras en sus implementaciones de las funciones createXXX(). Limitaciones del Nivel 1 La especificación del Nivel 1 del DOM se limita deliberadamente a aquellos métodos necesarios para representar y manipular la estructura y el contenido de documentos. El plan para los futuros Niveles de la especificación del DOM es proporcionar: 1. 2. 3. 4. 5. 6. Un modelo de estructura para el subconjunto interno y el subconjunto externo. Validación contra un esquema. Control para representar documentos por medio de hojas de estilo. Control de acceso. Seguridad de hilos de proceso o threads. Eventos. http://html.conclase.net/w3c/dom1-es/introduction.html (6 de 7) [16/10/2003 13:44:22] ¿Qué es el Modelo de Objetos del Documento? http://html.conclase.net/w3c/dom1-es/introduction.html (7 de 7) [16/10/2003 13:44:22] Modelo de Objetos del Documento (Núcleo), Nivel 1 REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. 1. Modelo de Objetos del Documento (Núcleo), Nivel 1 Editores Mike Champion, ArborText (a partir del 20 de noviembre de 1997) Steve Byrne, JavaSoft (hasta el 19 de noviembre de 1997) Gavin Nicol, Inso EPS Lauren Wood, SoftQuad, Inc. Tabla de contenidos ● ● ● 1.1. Visión general de las Interfaces del Núcleo del DOM ❍ 1.1.1. El Modelo de Estructura del DOM ❍ 1.1.2. Gestión de Memoria ❍ 1.1.3. Convenciones de Nombres ❍ 1.1.4. La Herencia frente a las Visiones Planas del API ❍ 1.1.5. El tipo DOMString ❍ 1.1.6. Distinción entre mayúsculas y minúsculas en el DOM 1.2. Interfaces Fundamentales 1.3. Interfaces Extendidas 1.1. Visión general de las Interfaces del Núcleo del DOM Esta sección define un conjunto mínimo de objetos e interfaces para acceder y manipular objetos del documento. La funcionalidad especificada en esta sección (la funcionalidad del Núcleo) debería ser suficiente para permitir a los desarrolladores de programas y a los autores de scripts web acceder y manipular contenido HTML y XML analizado dentro de productos conformes. El API del Núcleo del DOM permite también poblar un objeto Document usando únicamente llamadas al API DOM; la creación del esqueleto del documento Document y su almacenamiento persistente se deja al producto que implementa el API DOM. 1.1.1. El Modelo de Estructura del DOM El DOM presenta los documentos como una jerarquía de objetos Node (nodos) que a su vez implementan otras interfaces más especializadas. Algunos tipos de nodos pueden tener nodos hijos de varios tipos, mientras que otros son nodos hoja que no pueden tener nada bajo ellos en la estructura del documento. Los tipos de nodo, y los tipos de nodo que éstos pueden tener como hijos, son los siguientes: ● ● ● ● ● ● ● ● ● ● Document -- Element (uno como máximo), ProcessingInstruction, Comment, DocumentType DocumentFragment -- Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference DocumentType -- sin hijos EntityReference -- Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference Element -- Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference Attr -- Text, EntityReference ProcessingInstruction -- sin hijos Comment -- sin hijos Text -- sin hijos CDATASection -- sin hijos http://html.conclase.net/w3c/dom1-es/level-one-core.html (1 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 ● ● Entity -- Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference Notation -- sin hijos El DOM especifica además una interfaz NodeList para manejar listas ordenadas de Nodes, como los hijos de un Node o los elementos devueltos por el método Element.getElementsByTagName, y también una interfaz NamedNodeMap para manejar listas no ordenadas de nodos referenciados por su atributo de nombre, como los atributos de un Element. En el DOM, NodeLists y NamedNodeMaps están "vivos", es decir, los cambios en la estructura subyacente del documento se reflejan en todos los NodeLists y NamedNodeMaps relevantes. Por ejemplo, si un usuario del DOM obtiene un objeto NodeList que contenga los hijos de un Element, y a continuación añade más hijos a ese elemento (o los elimina, o los modifica), estos cambios se reflejan automáticamente en el NodeList sin que el usuario tenga que realizar ninguna otra acción. Asimismo, los cambios de un Node del árbol se reflejan en todas las referencias a ese Node desde los NodeLists y los NamedNodeMaps. 1.1.2. Gestión de Memoria La mayoría de los APIs definidos en esta especificación son interfaces más que clases. Eso significa que una implementación concreta sólo necesita exponer los métodos con los nombres definidos y la operación especificada, y no implementar las clases que corresponden directamente a las interfaces. Esto permite que los APIs del DOM se implementen como una fina capa encima de aplicaciones antiguas con sus propias estructuras de datos, o encima de aplicaciones nuevas con jerarquías de clases diferentes. Esto también significa que los constructores ordinarios (en el sentido de Java o C++) no pueden usarse para crear objetos del DOM, ya que los objetos subyacentes que deben ser construidos pueden tener muy poca relación con las interfaces del DOM. La solución convencional a esto en el diseño orientado a objetos es definir métodos constructores ("factory" methods) que creen ejemplares de objetos que implementen las diferentes interfaces. En el Nivel 1 del DOM, los objetos que implementan una interfaz "X" se crean con un método "createX()" de la interfaz Document; esto es así porque todos los objetos del DOM habitan en el contexto de un documento específico. El Nivel 1 del API DOM no define una manera estándar de crear objetos DOMImplementation ni Document; cada implementación del DOM debe proporcionar algún modo propietario de arrancar estas interfaces DOM, y después todos los demás objetos pueden construirse con los métodos Create de Document (o con cualesquiera otros métodos que resulten convenientes). Los APIs del Núcleo del DOM están diseñados para ser compatibles con un amplio espectro de lenguajes, incluyendo tanto los lenguajes de scripts de uso general como los lenguajes más complejos usados principalmente por programadores profesionales. Así, los APIs del DOM necesitan trabajar bajo distintas filosofías de gestión de memoria, desde plataformas de lenguaje que no exponen al usuario a la gestión de memoria en absoluto, a aquellas (especialmente Java) que proporcionan constructores explícitos pero también un mecanismo de recogida automática de basura para reclamar la memoria libre, pasando por aquellas (especialmente C/C++) que generalmente exigen al programador que reserve explícitamente la memoria para el objeto, que controle dónde se usa, y que la libere explícitamente para su reutilización. Para asegurar que el API es consistente en todas estas plataformas, el DOM no contempla en absoluto las cuestiones de gestión de memoria, sino que deja éstas a cada implementación. Ninguno de los enlaces explícitos diseñados por el Grupo de Trabajo DOM para los lenguajes ECMAScript y Java requiere ningún método de gestión de memoria, pero los enlaces con el DOM que se creen para otros lenguajes (especialmente C o C++) probablemente necesitarán tal soporte. Estas extensiones serán responsabilidad de aquellos que adapten el API DOM a un lenguaje específico, no del Grupo de Trabajo DOM. 1.1.3. Convenciones de Nombres Si bien sería deseable tener nombres de atributos y métodos que fueran cortos, informativos, con consistencia interna, y familiares para los usuarios de APIs similares, los nombres tampoco deberían entrar en conflicto con los nombres de APIs antiguas soportadas por las implementaciones del DOM. Además, tanto el IDL del OMG como ECMAScript tienen limitaciones significativas a la hora de eliminar las ambigüedades en los nombres provenientes de espacios de nombres diferentes, de modo que es difícil evitar conflictos con nombres cortos y familiares. Así, los nombres del DOM tienden a ser largos y bastante descriptivos con el fin de ser únicos en todas las plataformas. El Grupo de Trabajo ha intentado también ser consistente internamente al usar los diferentes términos, incluso cuando en otras APIs ciertas distinciones pueden no ser comunes. Por ejemplo, nosotros usamos el nombre de método "remove" ("retirar") cuando el método cambia el modelo estructural, y el nombre del método delete ("borrar") cuando el método suprime algo dentro del modelo de estructura. La cosa que se borra no se devuelve. La cosa que se retira puede devolverse, cuando tenga sentido devolverla. 1.1.4. La Herencia frente a las Visiones Planas del API Las APIs del Núcleo del DOM presentan dos conjuntos un tanto diferentes de interfaces para un documento XML/XHTML: uno que presenta una aproximación "orientada a objetos" con una jerarquía de herencia, y una visión "simplificada" que permite que todas las manipulaciones se realicen a través de la interfaz Node sin necesidad de especificaciones explícitas de tipo o casts (en Java y otros lenguajes como C), o de llamadas a interfaces de petición en entornos COM. Estas operaciones son bastante costosas en Java y COM, y el DOM puede ser utilizado en entornos de rendimiento crítico, por lo que añadimos una funcionalidad significativa usando simplemente la interfaz Node. Como muchos otros usuarios encontrarán la jerarquía hereditaria más fácil de entender que la aproximación de que en el DOM "todo es un Node", también http://html.conclase.net/w3c/dom1-es/level-one-core.html (2 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 soportamos las interfaces completas de alto nivel para aquellos que prefieran un API más orientado a objetos. En la práctica, esto significa que hay una cierta carga de redundancia en el API. El Grupo de Trabajo considera que la aproximación "hereditaria" es la visión primaria del API, y que el conjunto completo de funcionalidades de Node es un "extra" que los usuarios pueden emplear, pero que no elimina la necesidad de métodos que un análisis orientado a objetos consideraría necesarios en otras interfaces. (Por supuesto, cuando el análisis orientado a objetos conduce a un método que es idéntico a otro existente en la interfaz Node, no especificamos uno completamente redundante.) Así, aunque hay un atributo genérico nodeName (nombre de nodo) en la interfaz Node, sigue habiendo un atributo tagName en la interfaz Element; ambos atributos deben contener el mismo valor, pero el Grupo de Trabajo considera que vale la pena soportar ambos, dadas las diferentes exigencias que debe satisfacer el API DOM. 1.1.5. El tipo DOMString Para asegurar la interoperabilidad, el DOM especifica el tipo DOMString como sigue: ● Un DOMString es una secuencia de unidades de 16 bits. Esto, en los términos del IDL, pueden expresarse como: typedef sequence<unsigned short> DOMString; ● Las aplicaciones deben codificar DOMString usando UTF-16 (definido en el Apéndice C.3 de [UNICODE] y en la Enmienda 1 de [ISO10646]). Se ha elegido la codificación UTF-16 por su amplia utilización en la industria. Obsérvese que tanto para HTML como para XML, el conjunto de caracteres del documento (y por tanto la notación de las referencias numéricas de caracteres) está basado en UCS [ISO-10646]. Una referencia numérica de caracteres individual en un documento fuente puede por tanto corresponder en algunos casos a dos unidades de 16 bits en un DOMString (un sustituto de mayor peso y un sustituto de menor peso). Nota: Si bien el DOM especifica que el nombre del tipo cadena sea DOMString, los enlaces con los diferentes lenguajes pueden usar nombres diferentes. Por ejemplo, para Java DOMString se transforma al tipo String, ya que también utiliza UTF-16 como codificación. Nota: A fecha de agosto de 1998, la especificación del IDL del OMG incluía un tipo wstring. Sin embargo, esa definición no satisfacía las exigencias de interoperabilidad del API DOM, ya que para definir la anchura de un carácter se basaba en una negociación de la codificación. 1.1.6. Distinción entre mayúsculas y minúsculas en el DOM El DOM tiene muchas interfaces que implican un emparejamiento de cadenas. Los procesadores de HTML generalmente asumen una normalización de nombres en mayúsculas (con menor frecuencia en minúsculas) para cosas tales como elementos, mientras que XML distingue explícitamente entre mayúsculas y minúsculas. Para los propósitos del DOM, el emparejamiento de cadenas se realiza puramente por comparación binaria entre las unidades de 16 bits de los DOMString. Así, el DOM supone que cualquier normalización tiene lugar en el procesador antes de que se construyan las estructuras del DOM. Esto lleva a plantearse la cuestión de qué normalizaciones tienen lugar exactamente. El Grupo de Trabajo I18N del W3C está actualmente en vías de definir exactamente qué normalizaciones son necesarias para las aplicaciones que implementen el DOM. 1.2. Interfaces Fundamentales Las interfaces contenidas en esta sección se consideran fundamentales, y deben ser completamente implementadas por todas las implementaciones conformes con el DOM, incluyendo todas las implementaciones del DOM HTML. Excepción DOMException Las operaciones del DOM sólo provocan excepciones en circunstancias "excepcionales", es decir, cuando una operación es imposible de realizar (bien por razones lógicas, porque se han perdido datos, o porque la implementación se ha vuelto inestable). En general, los métodos del DOM devuelven códigos de error específicos en situaciones ordinarias de procesamiento, tales como errores de exceso de rango al usar NodeList. Las implementaciones pueden provocar otras excepciones en otras circunstancias. Por ejemplo, las implementaciones pueden provocar excepciones dependientes de la implementación si se pasa un argumento null. Algunos lenguajes y sistemas de objetos no soportan el concepto de excepción. Para tales sistemas las condiciones de error pueden indicarse usando mecanismos nativos para la indicación de errores. Por ejemplo, para algunas implementaciones los métodos pueden devolver códigos de error similares a los enumerados en las descripciones de los métodos correspondientes. http://html.conclase.net/w3c/dom1-es/level-one-core.html (3 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 Definición IDL exception DOMException { unsigned short code; }; // ExceptionCode const unsigned short const unsigned short const unsigned short const unsigned short const unsigned short const unsigned short const unsigned short const unsigned short const unsigned short const unsigned short INDEX_SIZE_ERR = 1; DOMSTRING_SIZE_ERR = 2; HIERARCHY_REQUEST_ERR = 3; WRONG_DOCUMENT_ERR = 4; INVALID_CHARACTER_ERR = 5; NO_DATA_ALLOWED_ERR = 6; NO_MODIFICATION_ALLOWED_ERR = 7; NOT_FOUND_ERR = 8; NOT_SUPPORTED_ERR = 9; INUSE_ATTRIBUTE_ERR = 10; Grupo de definiciones ExceptionCode Un entero que indica el tipo de error generado. Constantes Definidas INDEX_SIZE_ERR DOMSTRING_SIZE_ERR HIERARCHY_REQUEST_ERR Si el índice o el tamaño son negativos, o mayores que el valor permitido Si el tamaño del texto especificado no cabe en un DOMString Si se inserta un nodo en algún sitio al que no pertenece Si se usa un nodo en un documento diferente del que lo creó (que no lo WRONG_DOCUMENT_ERR soporte) INVALID_CHARACTER_ERR Si se especifica un carácter inválido, como por ejemplo en un nombre. NO_DATA_ALLOWED_ERR Si se especifican datos para un nodo que no soporta datos NO_MODIFICATION_ALLOWED_ERR Si se intenta modificar un objeto que no admite modificaciones NOT_FOUND_ERR Si se intenta hacer referencia a un nodo en un contexto en que no existe NOT_SUPPORTED_ERR Si la implementación no soporta el tipo de objeto requerido INUSE_ATTRIBUTE_ERR Si se intenta añadir un atributo que ya está siendo usado en algún otro lugar Interfaz DOMImplementation La interfaz DOMImplementation proporciona un conjunto de métodos para realizar operaciones que son independientes de cualquier ejemplar particular del modelo de objetos del documento. El Nivel 1 del DOM no especifica ningún modo de crear un ejemplar de documento, y por tanto la creación de documentos es una operación específica de cada implementación. Se espera que los Niveles futuros del DOM proporcionen métodos para crear documentos directamente. Definición IDL interface DOMImplementation { boolean hasFeature(in DOMString feature, in DOMString version); }; Métodos hasFeature Comprueba si la implementación del DOM implementa un característica específica. http://html.conclase.net/w3c/dom1-es/level-one-core.html (4 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 Parámetros feature El nombre del paquete de la característica a comprobar. En el Nivel 1, los valores legales son "HTML" y "XML" (no se distingue entre mayúsculas y minúsculas). version Este es el número de versión del nombre del paquete a comprobar. En el Nivel 1, versión 1.0, es la cadena "1.0". Cuando no se especifica la versión, si se soporta cualquier versión de la característica se devolverá el valor true. Valor de Retorno true si la característica está implementada en la versión especificada, false en caso contrario. Este método no provoca excepciones. Interfaz DocumentFragment DocumentFragment es un objeto Document "aligerado" o "mínimo". Es muy común querer extraer una porción del árbol de un documento o crear un nuevo fragmento de un documento. Imaginemos por ejemplo la implementación de un comando de usuario como cortar o reordenar un documento moviendo fragmentos. Es deseable tener un objeto que pueda contener dichos fragmentos y resulta bastante natural utilizar para este fin un Nodo. Si bien es cierto que un objeto Document podría realizar este papel, un objeto Document puede ser potencialmente un objeto pesado, dependiendo de la implementación subyacente. Lo que en realidad se necesita para esto es un objeto muy ligero. DocumentFragment es este objeto. Además, ciertas operaciones -- tales como insertar nodos como hijos de otro Node -- pueden tomar objetos DocumentFragment como argumentos; esto hace que todos los nodos hijos del DocumentFragment sean movidos a la lista de hijos de este nodo. Los hijos de un DocumentFragment son cero o más nodos que representan las partes superiores de un número de sub-árboles que definen la estructura del documento. Los nodos DocumentFragment no necesitan ser documentos XML bien formados (aunque necesitan seguir las reglas impuestas sobre entidades analizadas XML bien formadas, las cuales pueden tener varios nodos superiores). Por ejemplo, un DocumentFragment podría tener un único hijo y ese nodo hijo podría ser un nodo Text. Este modelo de estructura no representaría ni a un documento HTML ni a un documento XML bien formado. Cuando se inserta un DocumentFragment dentro de un Document (o en cualquier otro nodo Node que pueda tener hijos), son los hijos del DocumentFragment los que se insertan en el Node, y no el DocumentFragment. Esto hace que DocumentFragment sea muy útil cuando el usuario quiere crear nodos que sean hermanos: el DocumentFragment actúa como el padre de estos nodos de modo tal que el usuario puede usar los métodos estándar de la interfaz Node, como por ejemplo insertBefore() ("insertar antes") y appendChild() ("añadir hijo"). Definición IDL interface DocumentFragment : Node { }; Interfaz Document La interfaz Document representa el documento HTML o XML completo. Conceptualmente, es la raíz del árbol del documento, y proporciona el acceso primario a los datos del documento. Como los elementos, nodos de texto, comentarios, instrucciones de procesamiento, etc., no pueden existir fuera del contexto de un Document, la interfaz Document también contiene los métodos constructores necesarios para crear estos objetos. Los objetos Node creados tienen un atributo ownerDocument que los asocia con el Document dentro de cuyo contexto fueron creados. Definición IDL interface Document : Node { readonly attribute DocumentType doctype; readonly attribute DOMImplementation implementation; readonly attribute Element documentElement; Element createElement(in DOMString tagName) raises(DOMException); DocumentFragment createDocumentFragment(); http://html.conclase.net/w3c/dom1-es/level-one-core.html (5 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 Text Comment CDATASection ProcessingInstruction Attr EntityReference NodeList createTextNode(in DOMString data); createComment(in DOMString data); createCDATASection(in DOMString data) raises(DOMException); createProcessingInstruction(in DOMString target, in DOMString data) raises(DOMException); createAttribute(in DOMString name) raises(DOMException); createEntityReference(in DOMString name) raises(DOMException); getElementsByTagName(in DOMString tagname); }; Atributos doctype La Declaración del Tipo del Documento (ver DocumentType) asociada con este documento. Para documentos HTML así como para documentos XML sin una declaración del tipo de documento esto devuelve null. El Nivel 1 del DOM no soporta la edición de la Declaración del Tipo de Documento, y por tanto docType no puede modificarse de ningún modo. implementation El objeto DOMImplementation que manipula este documento. Una aplicación DOM puede usar objetos de varias implementaciones. documentElement Este es un atributo de conveniencia que permite acceder directamente al nodo hijo que es el elemento raíz del documento. Para documentos HTML, este es el elemento con tagName "HTML". Métodos createElement Crea un elemento del tipo especificado. Obsérvese que el ejemplar devuelto implementa la interfaz Element, de modo que se pueden especificar directamente los atributos del objeto devuelto. Además, si hay atributos conocidos con valores por defecto, los nodos Attr que los representan se crean y adjuntan automáticamente al elemento. Parámetros tagName El nombre del tipo de elemento a crear. Para XML, se distingue entre mayúsculas y minúsculas. Para HTML, se puede dar el tagName en mayúsculas o en minúsculas, pero la implementación DOM debe transformarlo en la forma canónica en mayúsculas. Valor de Retorno Un nuevo objeto Element. Excepciones DOMException INVALID_CHARACTER_ERR: Provocada si el nombre especificado contiene un carácter inválido. createDocumentFragment Crea un objeto DocumentFragment vacío. Valor de Retorno Un nuevo DocumentFragment. Este método no tiene parámetros. Este método no provoca excepciones. createTextNode Crea un nodo Text al que se le da la cadena especificada. Parámetros data Los datos para el nodo. Valor de Retorno El nuevo objeto Text. Este método no provoca excepciones. createComment Crea un nodo Comment al que se la da la cadena especificada. Parámetros http://html.conclase.net/w3c/dom1-es/level-one-core.html (6 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 data Los datos para el nodo. Valor de Retorno El nuevo objeto Comment. Este método no provoca excepciones. createCDATASection Crea un nodo CDATASection cuyo valor es la cadena especificada. Parámetros data Los datos para los contenidos de la sección CDATASection. Valor de Retorno El nuevo objeto CDATASection. Excepciones DOMException NOT_SUPPORTED_ERR: Provocada si el documento es un documento HTML. createProcessingInstruction Crea un nodo ProcessingInstruction al que se le dan las cadenas de nombre y datos especificadas. Parámetros target La parte destino de la instrucción de procesamiento. Los datos para el nodo. data Valor de Retorno El nuevo objeto ProcessingInstruction. Excepciones DOMException INVALID_CHARACTER_ERR: Provocada si se especifica un carácter inválido. NOT_SUPPORTED_ERR: Provocada si el documento es un documento HTML. createAttribute Crea un atributo Attr con el nombre dado. Obsérvese que el ejemplar Attr puede ser establecido a continuación en un Element usando el método setAttribute. Parámetros name El nombre del atributo. Valor de Retorno Un nuevo objeto Attr. Excepciones DOMException INVALID_CHARACTER_ERR: Provocada si el nombre especificado contiene un carácter inválido. createEntityReference Crea un objeto EntityReference. Además, si la entidad referenciada es conocida, la lista de hijos del nodo EntityReference se hace igual a la del nodo Entity correspondiente. Parámetros name El nombre de la entidad a referenciar. Valor de Retorno El nuevo objeto EntityReference. Excepciones DOMException INVALID_CHARACTER_ERR: Provocada si el nombre especificado contiene un carácter inválido. NOT_SUPPORTED_ERR: Provocada si el documento es un documento HTML. http://html.conclase.net/w3c/dom1-es/level-one-core.html (7 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 getElementsByTagName Devuelve una lista NodeList de todos los Elements que tengan un nombre de etiqueta dado en el orden en que se encontrarían al realizar un recorrido preordenado (preorder traversal) del árbol del Document. Parámetros tagname El nombre de la etiqueta a emparejar. El valor especial "*" se empareja con todas las etiquetas. Valor de Retorno Un nuevo objeto NodeList que contiene todos los Elements concordantes. Este método no provoca excepciones. Interfaz Node La interfaz Node es el tipo de datos primario del Modelo de Objetos del Documento. Representa un nodo individual del árbol del documento. Si bien todos los objetos que implementan la interfaz Node exponen métodos para tratar con hijos, no todos los objetos que implementan la interfaz Node pueden tener hijos. Por ejemplo, los nodos Text no pueden tener hijos, y al añadir hijos a estos nodos se provoca una excepción DOMException. Los atributos nodeName, nodeValue y attributes se han incluido como un mecanismo para obtener información sobre el nodo sin tener que realizar una conversión explícita a la interfaz específica derivada. En los casos en que no haya una transformación obvia para estos atributos para un tipo de nodo nodeType específico (p.ej., nodeValue para un elemento o attributes para un comentario), se devuelve null. Obsérvese que las interfaces especializadas pueden contener mecanismos adicionales y más convenientes para obtener y establecer la información relevante. Definición IDL interface Node { // NodeType const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned short short short short short short short short short short short short readonly attribute attribute readonly readonly readonly readonly readonly readonly readonly readonly readonly Node Node Node Node attribute attribute attribute attribute attribute attribute attribute attribute attribute ELEMENT_NODE = 1; ATTRIBUTE_NODE = 2; TEXT_NODE = 3; CDATA_SECTION_NODE = 4; ENTITY_REFERENCE_NODE = 5; ENTITY_NODE = 6; PROCESSING_INSTRUCTION_NODE = 7; COMMENT_NODE = 8; DOCUMENT_NODE = 9; DOCUMENT_TYPE_NODE = 10; DOCUMENT_FRAGMENT_NODE = 11; NOTATION_NODE = 12; DOMString DOMString nodeName; nodeValue; // raises(DOMException) on setting // raises(DOMException) on retrieval unsigned short nodeType; Node parentNode; NodeList childNodes; Node firstChild; Node lastChild; Node previousSibling; Node nextSibling; NamedNodeMap attributes; Document ownerDocument; insertBefore(in Node newChild, in Node refChild) raises(DOMException); replaceChild(in Node newChild, in Node oldChild) raises(DOMException); removeChild(in Node oldChild) raises(DOMException); appendChild(in Node newChild) raises(DOMException); http://html.conclase.net/w3c/dom1-es/level-one-core.html (8 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 boolean Node hasChildNodes(); cloneNode(in boolean deep); }; Grupo de definiciones de NodeType Un entero que indica qué tipo de nodo es éste. Constantes Definidas ELEMENT_NODE El nodo es un Element. ATTRIBUTE_NODE El nodo es un Attr. TEXT_NODE El nodo es un nodo Text node. CDATA_SECTION_NODE El nodo es una sección CDATASection. ENTITY_REFERENCE_NODE El nodo es una EntityReference. ENTITY_NODE El nodo es una Entity. PROCESSING_INSTRUCTION_NODE El nodo es una ProcessingInstruction. COMMENT_NODE El nodo es un Comment. DOCUMENT_NODE El nodo es un Document. DOCUMENT_TYPE_NODE El nodo es un DocumentType. DOCUMENT_FRAGMENT_NODE El nodo es un DocumentFragment. NOTATION_NODE El nodo es un nodo Notation. Los valores nodeName, nodeValue y attributes varían según el tipo de nodo según se especifica a continuación: nodeName nodeValue attributes Element nombre de etiqueta (tagName) null NamedNodeMap Attr nombre del atributo valor del atributo null Text #text contenido del nodo de texto null CDATASection #cdata-section contenido de la Sección CDATA null EntityReference nombre de la entidad referenciada null null Entity nombre de la entidad null null ProcessingInstruction destino (target) contenido completo excluyendo el destino null Comment #comment contenido del comentario null Document #document null null DocumentType nombre del tipo de documento null null DocumentFragment #document-fragment null null Notation nombre de la notación null null Atributos nodeName El nombre de este nodo, dependiendo de su tipo; ver la tabla precedente. nodeValue El valor de este nodo, dependiendo de su tipo; ver la tabla precedente. Excepciones al establecer DOMException NO_MODIFICATION_ALLOWED_ERR: Provocada cuando es de sólo lectura. Excepciones al leer DOMException DOMSTRING_SIZE_ERR: Provocada cuando devolvería más caracteres de los que cabrían en una variable DOMString de la plataforma de la implementación. nodeType Un código que representa el tipo del objeto subyacente, según se define arriba. http://html.conclase.net/w3c/dom1-es/level-one-core.html (9 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 parentNode El padre de este nodo. Todos los nodos, excepto Document, DocumentFragment y Attr, pueden tener un padre. Sin embargo, si un nodo acaba de ser creado y aún no ha sido añadido al árbol, o si ha sido retirado del árbol, esto es null. childNodes Una lista NodeList que contiene todos los hijos de este nodo. Si no hay hijos, esto es un NodeList que no contiene ningún nodo. El contenido del NodeList devuelto está "vivo", en el sentido de que, por ejemplo, los cambios en los hijos del objeto nodo a partir del cual se crearon se reflejan inmediatamente en los nodos devueltos por los métodos de acceso de NodeList; no es una fotografía estática del contenido del nodo. Esto se cumple para todas las listas NodeList, incluyendo las que devuelve el método getElementsByTagName. firstChild El primer hijo de este nodo. Si no existe tal nodo, esto devuelve null. lastChild El último hijo de este nodo. Si no existe tal nodo, esto devuelve null. previousSibling El nodo que precede inmediatamente a este nodo. Si no existe tal nodo, esto devuelve null. nextSibling El nodo que sigue inmediatamente a este nodo. Si no existe tal nodo, esto devuelve null. attributes Un NamedNodeMap que contiene los atributos de este nodo (si se trata de un Element), o null en cualquier otro caso. ownerDocument El objeto Document asociado a este nodo. Esto también es el objeto Document usado para crear nuevos nodos. Cuando este nodo es un Document esto es null. Métodos insertBefore Inserta el nodo newChild antes del nodo hijo existente refChild. Si refChild es null, newChild se inserta al final de la lista de hijos. Si newChild es un objeto DocumentFragment, se insertan todos sus hijos, en el mismo orden, antes de refChild. Si newChild ya está en el árbol, se retira primero. Parámetros newChild El nodo a insertar. refChild El nodo de referencia, es decir, el nodo antes del cual debe insertarse el nuevo nodo. Valor de Retorno El nodo insertado. Excepciones DOMException HIERARCHY_REQUEST_ERR: Provocada si este nodo es de un tipo que no permite hijos del tipo del nodo newChild, o si el nodo a insertar es uno de los ascendientes de este nodo. WRONG_DOCUMENT_ERR: Provocada si newChild fue creado a partir de un documento diferente del que creó a este nodo. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. NOT_FOUND_ERR: Provocada si refChild no es un hijo de este nodo. replaceChild Reemplaza el nodo hijo oldChild con newChild en la lista de hijos, y devuelve el nodo oldChild. Si el newChild ya está en el árbol, se retira primero. Parámetros newChild El nuevo nodo a poner en la lista de hijos. oldChild El nodo que se va a reemplazar en la lista. Valor de Retorno El nodo reemplazado. Excepciones DOMException HIERARCHY_REQUEST_ERR: Provocada si este nodo es de un tipo que no permite hijos del tipo del nodo newChild, o si el nodo a introducir es uno de los ascendientes de este nodo. http://html.conclase.net/w3c/dom1-es/level-one-core.html (10 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 WRONG_DOCUMENT_ERR: Provocada si newChild fue creado a partir de un documento diferente del que creó a este nodo. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. NOT_FOUND_ERR: Provocada si oldChild no es un hijo de este nodo. removeChild Retira el nodo hijo indicado por oldChild de la lista de hijos, y lo devuelve como valor de retorno. Parámetros oldChild El nodo a retirar. Valor de Retorno El nodo retirado. Excepciones DOMException NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. NOT_FOUND_ERR: Provocada si oldChild no es un hijo de este nodo. appendChild Añade el nodo newChild al final de la lista de hijos de este nodo. Si el newChild ya está en el árbol, se retira primero. Parámetros newChild El nodo a añadir. Si es un objeto DocumentFragment, se mueven todos los contenidos del fragmento de documento a la lista de hijos de este nodo Valor de Retorno El nodo añadido. Excepciones DOMException HIERARCHY_REQUEST_ERR: Provocada si este nodo es de un tipo que no permite hijos del tipo del nodo newChild, o si el nodo a añadir es uno de los ascendientes de este nodo. WRONG_DOCUMENT_ERR: Provocada si newChild fue creado a partir de un documento diferente del que creó a este nodo. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. hasChildNodes Este es un método de conveniencia que permite determinar fácilmente si un nodo tiene algún hijo. Valor de Retorno true si el nodo tiene algún hijo, false si el nodo no tiene ningún hijo. Este método no tiene parámetros. Este método no provoca excepciones. cloneNode Devuelve una réplica de este nodo, es decir, sirve como constructor genérico de copia para nodos. El nodo réplica no tiene padre (parentNode devuelve null). Cuando se clona un Element se copian todos los atributos y sus valores, incluyendo aquéllos generados por el procesador XML para representar los atributos con valores por defecto, pero este método no copia ningún texto de su contenido a menos que se trate de clon profundo, ya que el texto está contenido en un nodo hijo de tipo Text. La clonación de cualquier otro tipo de nodo devuelve simplemente una copia de este nodo. Parámetros deep Si es true, se clona recursivamente el sub-árbol bajo el nodo especificado. Si es false, se clona sólo el nodo en sí (y sus atributos si es un Element). Valor de Retorno http://html.conclase.net/w3c/dom1-es/level-one-core.html (11 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 El nodo réplica. Este método no provoca excepciones. Interfaz NodeList La interfaz NodeList proporciona la abstracción de un conjunto ordenado de nodos, sin definir o restringir cómo se implementa este conjunto. Se puede acceder a los objetos de un NodeList a través de un índice entero que comienza en el 0. Definición IDL interface NodeList { Node readonly attribute }; item(in unsigned long index); unsigned long length; Métodos item Devuelve el objeto del conjunto cuyo índice es index. Si index es mayor o igual que el número de nodos de la lista, esto devuelve null. Parámetros index Índice dentro del conjunto. Valor de Retorno El nodo en la posición index de la lista NodeList, o null si aquél no es un índice válido. Este método no provoca excepciones. Atributos length El número de nodos de la lista. El rango de índices válidos de nodos hijos va desde 0 hasta length-1, ambos inclusive. Interfaz NamedNodeMap Los objetos que implementan la intertaz NamedNodeMap se usan para representar conjuntos de nodos a los que se puede acceder por su nombre. Obsérvese que NamedNodeMap no se hereda de un NodeList; en efecto, los NamedNodeMaps no se mantienen en ningún orden particular. También se puede acceder a los objetos contenidos en un objeto que implemente NamedNodeMap mediante un índice ordinal, pero esto es simplemente para permitir la enumeración conveniente de los contenidos de un NamedNodeMap, y no implica que el DOM especifique un orden para estos nodos. Definición IDL interface NamedNodeMap { Node Node Node Node readonly attribute getNamedItem(in DOMString name); setNamedItem(in Node arg) raises(DOMException); removeNamedItem(in DOMString name) raises(DOMException); item(in unsigned long index); unsigned long length; }; Métodos getNamedItem Obtiene el nodo especificado por el nombre name. Parámetros name El nombre del nodo a obtener. Valor de Retorno http://html.conclase.net/w3c/dom1-es/level-one-core.html (12 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 Un Node (de cualquier tipo) con el nombre especificado, o null si el nombre especificado no identificó a ningún nodo del conjunto. Este método no provoca excepciones. setNamedItem Añade un nodo usando su atributo nodeName. Como el atributo nodeName se utiliza para determinar el nombre bajo el cual debe almacenarse el nodo, no pueden almacenarse varios nodos de ciertos tipos (aquellos que tengan un valor de cadena "especial") ya que los nombres entrarían en conflicto. Se considera que esto es preferible a permitir que se pueda dar un alias a los nodos. Parámetros arg Un nodo a almacenar en un mapa de nodos con nombre. El nodo será después accesible usando el valor del atributo nodeName del nodo. Si ya hay algún nodo con ese nombre en el mapa, se reemplaza por el nuevo. Valor de Retorno Si el nuevo Node reemplaza a algún nodo existente con el mismo nombre, se devuelve el Node existente previamente; en caso contrario se devuelve null. Excepciones DOMException WRONG_DOCUMENT_ERR: Provocada si arg fue creado a partir de un documento diferente del que creó al NamedNodeMap. NO_MODIFICATION_ALLOWED_ERR: Provocada si este NamedNodeMap es de sólo lectura. INUSE_ATTRIBUTE_ERR: Provocada si arg es un Attr que ya es un atributo de otro objeto Element. El usuario del DOM debe clonar explícitamente los nodos Attr para reutilizarlos en otros elementos. removeNamedItem Retira un nodo especificado por su nombre. Si el nodo retirado es un Attr con un valor por defecto se reemplaza inmediatamente. Cuando este mapa NamedNodeMap contiene los atributos asociados a un elemento, tal y como se devuelve por el atributo attributes de la interfaz Node, si se sabe que el atributo retirado tiene un valor por defecto, inmediatamente aparece un atributo que contiene el valor por defecto. Parámetros name El nombre del nodo a retirar. Valor de Retorno El nodo retirado del mapa si existe algún nodo con el nombre especificado. Excepciones DOMException NOT_FOUND_ERR: Provocada si no hay ningún nodo con el nombre name en el mapa. NO_MODIFICATION_ALLOWED_ERR: Provocada si este NamedNodeMap es de sólo lectura. item Devuelve el objeto del mapa cuyo índice es index. Si index es mayor o igual que el número de nodos del mapa, esto devuelve null. Parámetros index Índice dentro del mapa. Valor de Retorno El nodo en la posición index dentro del NamedNodeMap, o null si aquél no es un índice válido. Este método no provoca excepciones. Atributos length El número de nodos del mapa. El rango de índices válidos de nodos hijos va desde 0 hasta length-1, ambos inclusive. Interfaz CharacterData La interfaz CharacterData extiende a Node con un conjunto de atributos y métodos para acceder a datos de caracteres en el DOM. Por claridad se define este conjunto aquí en lugar de hacerlo en cada objeto que utilice estos atributos y métodos. No hay ningún objeto del DOM que corresponda directamente a CharacterData, aunque Text y otros heredan su interfaz de él. Todos los offsets de http://html.conclase.net/w3c/dom1-es/level-one-core.html (13 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 esta interfaz comienzan desde 0. Definición IDL interface CharacterData : Node { attribute DOMString readonly attribute DOMString void void void void data; // raises(DOMException) on setting // raises(DOMException) on retrieval unsigned long length; substringData(in unsigned long offset, in unsigned long count) raises(DOMException); appendData(in DOMString arg) raises(DOMException); insertData(in unsigned long offset, in DOMString arg) raises(DOMException); deleteData(in unsigned long offset, in unsigned long count) raises(DOMException); replaceData(in unsigned long offset, in unsigned long count, in DOMString arg) raises(DOMException); }; Atributos data Los datos de caracteres del nodo que implementa esta interfaz. La implementación DOM puede no poner límites arbritrarios en la cantidad de datos que pueden almacenarse en un nodo CharacterData. Sin embargo, los límites de una implementación pueden hacer que no quepa en un solo DOMString la totalidad de los datos de un nodo. En estos casos, el usuario puede llamar a substringData para obtener los datos en bloques de tamaño apropiado. Excepciones al establecer DOMException NO_MODIFICATION_ALLOWED_ERR: Provocada cuando el nodo es de sólo lectura. Excepciones al leer DOMException DOMSTRING_SIZE_ERR: Provocada cuando se devolverían más caracteres de los que caben en una variable DOMString en la plataforma de la implementación. length El número de unidades de 16 bits que están disponibles a través de data y del método substringData descrito abajo. Esto puede ser el valor cero, es decir, los nodos CharacterData pueden estar vacíos. Métodos substringData Extrae una subcadena de datos del nodo. Parámetros offset Offset del inicio de la subcadena a extraer. count El número de unidades de 16 bits a extraer. Valor de Retorno La subcadena especificada. Si la suma de offset y count excede de la longitud length, entonces se devuelven todas las unidades de 16 bits hasta el final de los datos. Excepciones DOMException INDEX_SIZE_ERR: Provocada si el offset especificado es negativo o mayor que el número de unidades de 16 bits de data, o si la cuenta count especificada es negativa. DOMSTRING_SIZE_ERR: Provocada si la subcadena de texto especificada no cabe en un DOMString. http://html.conclase.net/w3c/dom1-es/level-one-core.html (14 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 appendData Añade la cadena al final de los datos de caracteres del nodo. En caso de éxito, data proporciona acceso a la concatenación de data y el DOMString especificado. Parámetros arg El DOMString a añadir. Excepciones DOMException NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. Este método no devuelve nada. insertData Inserta una cadena en el offset de unidades de 16 bits especificado. Parámetros offset El offset de unidades de 16 bits en el cual insertar la cadena. arg El DOMString a insertar. Excepciones DOMException INDEX_SIZE_ERR: Provocada si el offset especificado es negativo o mayor que el número de unidades de 16 bits de data. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. Este método no devuelve nada. deleteData Borra una subcadena de unidades de 16 bits del nodo. En caso de éxito, data y length reflejan el cambio. Parámetros offset El offset a partir del cual borrar las unidades de 16 bits. count El número de unidades de 16 bits a borrar. Si la suma de offset y count excede de la longitud length, entonces se borran todas las unidades de 16 bits desde offset hasta el final de los datos. Excepciones DOMException INDEX_SIZE_ERR: Provocada si el offset especificado es negativo o mayor que el número de unidades de 16 bits de data, o si la cuenta count especificada es negativa. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. Este método no devuelve nada. replaceData Reemplaza las unidades de 16 bits desde el offset especificado con la cadena especificada. Parámetros offset El offset a partir del cual comenzar el reemplazamiento. count El número de unidades de 16 bits a reemplazar. Si la suma de offset y count excede de la longitud length, entonces se reemplazan todas las unidades de 16 bits hasta el final de los datos (es decir, el efecto es el mismo que el de una llamada al método remove con la misma subcadena, seguida de una invocación al método append). arg El DOMString por el que debe ser reemplazada la subcadena. Excepciones DOMException INDEX_SIZE_ERR: Provocada si el offset especificado es negativo o mayor que el número de unidades de 16 bits de data, o si la cuenta count especificada es negativa. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. Este método no devuelve nada. Interfaz Attr http://html.conclase.net/w3c/dom1-es/level-one-core.html (15 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 La interfaz Attr representa un atributo de un objeto Element. Normalmente los valores permitidos para el atributo están definidos en la definición del tipo de documento. Los objetos Attr heredan la interfaz Node, pero como en realidad no son nodos hijos del elemento al que describen, el DOM no los considera parte del árbol del documento. Así, los atributos de Node parentNode, previousSibling y nextSibling tiene un valor null para los objetos Attr. El DOM considera que los atributos son propiedades de elementos, es decir, que no tienen una identidad separada de los elementos a los que están asociados; gracias a esto debería ser más sencillo implementar características tales como atributos por defecto asociados a elementos de un tipo dado. Además, los nodos Attr no pueden ser hijos inmediatos de un DocumentFragment. Sin embargo, pueden asociarse a nodos Element contenidos dentro de un DocumentFragment. En resumen, los usuarios y los implementadores del DOM deben darse cuenta de que los nodos Attr tienen algunas cosas en común con otros objetos que heredan la interfaz Node, pero que son al mismo tiempo bastante diferentes a ellos. El valor efectivo del atributo se determina de la siguiente manera: si se le ha asignado un valor a este atributo explícitamente, ese valor es el valor efectivo del atributo; en caso contrario, si hay una declaración para este atributo, y dicha declaración incluye un valor por defecto, entonces el valor por defecto es el valor efectivo del atributo; en otro caso, no existe el atributo para este elemento en el modelo de estructura mientras no se haya añadido explícitamente. Obsérvese que el atributo nodeValue del ejemplar Attr también puede utilizarse para obtener la versión en forma de cadena del valor o valores del atributo. En XML, en el cual el valor de un atributo puede contener referencias a entidades, los nodos hijos del nodo Attr proporcionan una representación en la cual las referencias a entidades no son expandidas. Estos nodos hijos pueden ser o bien nodos Text o bien nodos EntityReference. Como el tipo de atributo puede ser desconocido, no hay valores de atributos de tipo simbólico (tokenized attributes). Definición IDL interface Attr : Node readonly attribute readonly attribute attribute { DOMString boolean DOMString name; specified; value; // raises(DOMException) on setting }; Atributos name Devuelve el nombre de este atributo. specified Si se dio un valor a este atributo explícitamente en el documento original, esto es true; en caso contrario, es false. Obsérvese que la implementación, y no el usuario, está al cargo de este atributo. Si el usuario cambia el valor del atributo (incluso si acaba teniendo el mismo valor que el valor por defecto) entonces el indicador specified se conmuta automáticamente a true. Para especificar de nuevo que el valor tenga el valor por defecto del DTD, el usuario debe borrar el atributo. La implementación dispondrá entonces un nuevo atributo con specified establecido en false y el valor por defecto (si existe). En resumen: ■ ■ ■ Si se ha asignado un valor al atributo en el documento, entonces specified es true, y el valor es el valor asignado. Si no se ha asignado un valor al atributo en el documento y tiene un valor por defecto en el DTD, entonces specified es false, y el valor es el valor por defecto en el DTD. Si no se ha asignado un valor al atributo en el documento y tiene un valor de #IMPLIED en el DTD, entonces el atributo no aparece en el modelo de estructura del documento. value Cuando se lee, se devuelve el valor del atributo como una cadena. Las referencias a entidades generales y de caracteres se reemplazan por sus valores. Cuando se establece, esto crea un nodo Text con los contenidos no analizados de la cadena. Excepciones al establecer DOMException http://html.conclase.net/w3c/dom1-es/level-one-core.html (16 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 NO_MODIFICATION_ALLOWED_ERR: Provocada cuando el nodo es de sólo lectura. Interfaz Element La gran mayoría de los objetos (aparte del texto) que encuentran los autores cuando recorren un documento son con mucho nodos Element. Imaginemos el siguiente documento XML: <elementoEjemplo id="demo"> <subelemento1/> <subelemento2><subsubelemento1/></subelemento2> </elementoEjemplo> Si lo representamos usando el DOM, el nodo superior es un nodo Element para "elementoEjemplo", el cual contiene dos nodos Element hijos, uno para "subelemento1" y otro para "subelemento2". "subelemento1" no contiene nodos hijos. Los elementos pueden tener atributos asociados a ellos; como la interfaz Element se hereda de Node, puede utilizarse el atributo de la interfaz genérica Node attributes para obtener el conjunto de todos los atributos de un elemento. Existen métodos en la interfaz Element para obtener o bien un objeto Attr por su nombre o bien un valor de atributo por su nombre. En XML, en el cual un valor de atributo puede contener referencias a entidades, debería obtenerse un objeto Attr para examinar el posiblemente complejo sub-árbol que representa el valor del atributo. Por otra parte, en HTML, en el cual todos los atributos tienen valores de cadenas simples, pueden emplearse con seguridad métodos más convenientes para acceder directamente al valor de un atributo. Definición IDL interface Element : Node { readonly attribute DOMString tagName; DOMString getAttribute(in DOMString name); void setAttribute(in DOMString name, in DOMString value) raises(DOMException); void removeAttribute(in DOMString name) raises(DOMException); Attr getAttributeNode(in DOMString name); Attr setAttributeNode(in Attr newAttr) raises(DOMException); Attr removeAttributeNode(in Attr oldAttr) raises(DOMException); NodeList getElementsByTagName(in DOMString name); void normalize(); }; Atributos tagName El nombre del elemento. Por ejemplo, en: <elementoEjemplo id="demo"> ... </elementoEjemplo> , tagName tiene el valor "elementoEjemplo". Obsérvese que en XML se conserva la distinción entre mayúsculas y minúsculas, como en todas las operaciones del DOM. El DOM HTML devuelve el tagName de un elemento HTML en la forma canónica en mayúsculas, independientemente de la forma en que se presentaba en el documento fuente HTML. http://html.conclase.net/w3c/dom1-es/level-one-core.html (17 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 Métodos getAttribute Obtiene el valor de un atributo por su nombre. Parámetros name El nombre del atributo a obtener. Valor de Retorno El valor Attr en forma de cadena, o la cadena vacía si el atributo no tiene un valor especificado o por defecto. Este método no provoca excepciones. setAttribute Añade un nuevo atributo. Si ya hay presente en el elemento un atributo con ese nombre, su valor se cambia al del parámetro value. Este valor es una cadena simple, no es analizada en el momento de establecerla. De modo que cualquier código o markup (como por ejemplo sintaxis que debe ser reconocida como una referencia a una entidad) se trata como texto literal, y la implementación debe transformarlo en secuencias de escape de forma apropiada al producir su salida. Para asignar a un atributo un valor que contenga referencias a entidades, el usuario debe crear un nodo Attr y además nodos Text y EntityReference, construir el sub-árbol apropiado, y usar setAttributeNode para asignarlo como valor del atributo. Parámetros name El nombre del atributo a crear o modificar. value Valor a establecer, en forma de cadena. Excepciones DOMException INVALID_CHARACTER_ERR: Provocada si el nombre especificado contiene un carácter inválido. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. Este método no devuelve nada. removeAttribute Retira un atributo especificado por su nombre. Si se sabe que el atributo retirado tiene un valor por defecto, aparece inmediatamente un atributo que contiene el valor por defecto. Parámetros name El nombre del atributo a retirar. Excepciones DOMException NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. Este método no devuelve nada. getAttributeNode Obtiene un nodo Attr especificado por su nombre. Parámetros name El nombre del atributo a obtener. Valor de Retorno El nodo Attr con el nombre de atributo especificado, o null si no existe tal atributo. Este método no provoca excepciones. setAttributeNode Añade un nuevo atributo. Si ya hay presente en el elemento un atributo con ese nombre, se reemplaza con el nuevo. Parámetros newAttr El nodo Attr a añadir a la lista de atributos. Valor de Retorno Si el atributo newAttr reemplaza a un atributo existente con el mismo nombre, se devuelve el nodo Attr previamente existente. En caso contrario, se devuelve null. Excepciones DOMException WRONG_DOCUMENT_ERR: Provocada si newAttr fue creado a partir de un documento diferente del creó al elemento. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. http://html.conclase.net/w3c/dom1-es/level-one-core.html (18 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 INUSE_ATTRIBUTE_ERR: Provocada si newAttr ya es un atributo de otro objeto Element. El usuario del DOM debe clonar explícitamente los nodos Attr para reutilizarlos en otros elementos. removeAttributeNode Retira el atributo especificado. Parámetros oldAttr El nodo Attr a retirar de la lista de atributos. Si el Attr retirado tiene un valor por defecto se reemplaza inmediatamente. Valor de Retorno El nodo Attr que ha sido retirado. Excepciones DOMException NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. NOT_FOUND_ERR: Provocada si oldAttr no es un atributo del elemento. getElementsByTagName Devuelve una lista NodeList de todos los elementos descendientes con un nombre de etiqueta dado, en el orden en que se encontrarían normalmente al realizar un recorrido en preorden del árbol del Element. Parámetros name El nombre de la etiqueta a emparejar. El valor especial "*" se empareja con todas las etiquetas. Valor de Retorno Una lista de todos los nodos Element emparejados. Este método no provoca excepciones. normalize Coloca a todos los nodos Text contenidos en todos los niveles del sub-árbol que queda por debajo de este Element en forma "normal", en la cual únicamente el código (p.ej., etiquetas, comentarios, instrucciones de procesamiento, secciones CDATA y referencias a entidades) separa a los nodos Text. Es decir, no hay nodos Text adyacentes. Esto puede utilizarse para asegurarse de que la vista DOM de un documento es la misma que si se guardara y recargara, y es útil cuando deben realizarse operaciones (tales como búsquedas XPointer) que dependen de una estructura de árbol particular del documento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. Interfaz Text La interfaz Text representa el contenido textual (los llamados datos de caracteres en XML) de un Element o Attr. Si no hay código dentro de los contenidos de un elemento, el texto está contenido en un solo objeto que implementa la interfaz Text y que es el único hijo del elemento. Si hay código, se traduce en una lista de hijos del elemento. Cuando se dispone un documento por primera vez a través del DOM, hay sólo un nodo Text por cada bloque de texto. Los usuarios pueden crear nodos Text adyacentes que representen los contenidos de un elemento dado sin ningún código intermedio, pero deberían recordar que no hay manera de representar las separaciones entre estos nodos en XML o en HTML, de modo que, en general, no persistirán entre sesiones de edición del DOM. El método normalize() de Element combina estos objetos Text adyacentes en un solo nodo para cada bloque de texto; se recomienda hacer esto antes de emplear operaciones que dependan de una estructura particular del documento, como la navegación con XPointers. Definición IDL interface Text : CharacterData { Text splitText(in unsigned long offset) raises(DOMException); }; Métodos http://html.conclase.net/w3c/dom1-es/level-one-core.html (19 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 splitText Divide este nodo Text en dos nodos Text por el offset especificado, manteniendo a ambos en el árbol como hermanos. Este nodo contendrá entonces todos los datos hasta el punto offset. Y el nuevo nodo Text, que se inserta como el siguiente hermano de este nodo, contendrá todo el contenido a partir del punto offset incluido. Parámetros offset El offset de la unidad de 16 bits en el cual se producirá la división, comenzando en cero. Valor de Retorno El nuevo nodo Text. Excepciones DOMException INDEX_SIZE_ERR: Provocada si el offset especificado es negativo o mayor que el número de unidades de 16 bits de data. NO_MODIFICATION_ALLOWED_ERR: Provocada si este nodo es de sólo lectura. Interfaz Comment Representa el contenido de un comentario, es decir, todos los caracteres entre el '<!--' inicial y el '-->' final. Obsérvese que esta es la definición de un comentario en XML y, en la práctica, en HTML, aunque algunas herramientas HTML pueden implementar la estructura completa de comentarios SGML. Definición IDL interface Comment : CharacterData { }; 1.3. Interfaces Extendidas Las interfaces aquí definidas forman parte del Núcleo del Nivel 1 de la especificación DOM, pero los objetos que expongan estas interfaces no se encontrarán nunca en implementaciones DOM que sólo traten con HTML. Como tales, las implementaciones de DOM sólo para HTML no necesitan tener objetos que implementen estas interfaces. Interfaz CDATASection Las secciones CDATA se usan para transformar en secuencias de escape bloques de texto que contienen caracteres que de otro modo serían considerados como código. El único delimitador reconocido en una sección CDATA es la cadena "]]>" que finaliza la sección CDATA. Las secciones CDATA no pueden anidarse. El propósito principal es la inclusión de material tal como fragmentos XML sin necesidad de transformar todos los delimitadores en secuencias de escape. El atributo DOMString del nodo Text contiene el texto que está contenido en la sección CDATA. Obsérvese que ésta puede contener caracteres que necesiten ser transformados en secuencias de escape fuera de secciones CDATA y que, dependiendo de la codificación de caracteres ("charset") elegida para la serialización, puede ser imposible escribir en la salida ciertos caracteres como parte de una sección CDATA. La interfaz CDATASection se hereda de la interfaz CharacterData a través de la interfaz Text. Los nodos CDATASection adyacentes no son combinados cuando se usa el método Element.normalize(). Definición IDL interface CDATASection : Text { }; http://html.conclase.net/w3c/dom1-es/level-one-core.html (20 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 Interfaz DocumentType Todo documento Document tiene un atributo doctype cuyo valor es o bien null o bien un objeto DocumentType. La interfaz DocumentType del Núcleo del Nivel 1 del DOM proporciona una interfaz a la lista de entidades definidas para el documento, y poco más, debido a que el efecto de los espacios de nombres y de los distintos esfuerzos de esquemas XML en la representación del DTD no se entienden claramente a fecha de la redacción de este documento. El Nivel 1 del DOM no soporta la edición de los nodos DocumentType. Definición IDL interface DocumentType : Node { readonly attribute DOMString readonly attribute NamedNodeMap readonly attribute NamedNodeMap }; name; entities; notations; Atributos name El nombre del DTD, es decir, el nombre que sigue inmediatamente a la palabra clave DOCTYPE. entities Un NamedNodeMap que contiene las entidades generales, tanto externas como internas, declaradas en el DTD. Los duplicados se descartan. Por ejemplo, en: <!DOCTYPE ex SYSTEM "ex.dtd" [ <!ENTITY foo "foo"> <!ENTITY bar "bar"> <!ENTITY % baz "baz"> ]> <ex/> la interfaz proporciona acceso a foo y a bar, pero no a baz. Todos los nodos de este mapa implementan además la interfaz Entity. El Nivel 1 del DOM no soporta la edición de entidades, y por tanto las entities no pueden modificarse de ningún modo. notations Un NamedNodeMap que contiene las notaciones declaradas en el DTD. Los duplicados se descartan. Todos los nodos de este mapa implementan además la interfaz Notation. El Nivel 1 del DOM no soporta la edición de notaciones, y por tanto las notations no pueden modificarse de ningún modo. Interfaz Notation Esta interfaz representa una notación declarada en el DTD. Una notación o bien declara, por el nombre, el formato de una entidad no analizada (ver la sección 4.7 de la especificación de XML 1.0), o bien se usa para la declaración formal de destinos de Instrucciones de Procesamiento (ver la sección 2.6 de la especificación XML 1.0). El atributo nodeName heredado de Node se hace igual al nombre declarado de la notación. El Nivel 1 del DOM no soporta la edición de nodos Notation; son por lo tanto de sólo lectura. Un nodo Notation no tiene ningún padre. Definición IDL http://html.conclase.net/w3c/dom1-es/level-one-core.html (21 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 interface Notation : Node { readonly attribute DOMString readonly attribute DOMString }; publicId; systemId; Atributos publicId El identificador público de esta notación. Si el identificador público no ha sido especificado, esto es null. systemId El identificador de sistema de esta notación. Si el identificador de sistema no ha sido especificado, esto es null. Interfaz Entity Esta interfaz representa una entidad, analizada o no analizada, en un documento XML. Obsérvese que esto modeliza la entidad en sí misma, no la declaración de la entidad. La modelización de la declaración Entity se ha dejado para un Nivel posterior de la especificación del DOM. El atributo nodeName que está heredado de Node contiene el nombre de la entidad. Un procesador XML puede optar por expandir completamente las entidades antes de pasar el modelo de estructura al DOM. En este caso no habrá ningún nodo EntityReference en el árbol del documento. XML no obliga a que un procesador XML no validador lea y procese las declaraciones de entidades hechas en el subconjunto externo o declaradas en entidades paramétricas externas. Esto significa que algunas clases de aplicaciones no necesitan expandir las entidades analizadas declaradas en el subconjunto externo, y que el valor por el que se reemplaza la entidad puede no estar disponible. Cuando el valor de reemplazamiento está disponible, la lista de nodos hijos del nodo Entity correspondiente representa la estructura del texto de reemplazamiento. En caso contrario, la lista de hijos está vacía. La resolución de los hijos de la entidad (el valor de reemplazamiento) puede ser evaluada de manera laxa; se supone que las acciones del usuario (tales como llamar al método childNodes del nodo Entity) activan la evaluación. El Nivel 1 del DOM no soporta la edición de nodos Entity. Si un usuario quiere hacer cambios en los contenidos de un objeto Entity, todos los nodos EntityReference relacionados se deben reemplazar en el modelo de estructura por un clon de los contenidos de la entidad, y los cambios deseados deben realizarse en cada uno de esos clones. Todos los descendientes de un nodo Entity son de sólo lectura. Un nodo Entity no tiene ningún padre. Definición IDL interface Entity : Node { readonly attribute DOMString readonly attribute DOMString readonly attribute DOMString }; publicId; systemId; notationName; Atributos publicId El identificador público asociado con la entidad, si está especificado. Si el identificador público no ha sido especificado, esto es null. systemId El identificador de sistema asociado con la entidad, si está especificado. Si el identificador de sistema no ha sido especificado, esto es null. notationName Para entidades no analizadas, el nombre de la notación de la entidad. Para entidades analizadas, esto es null. Interfaz EntityReference http://html.conclase.net/w3c/dom1-es/level-one-core.html (22 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (Núcleo), Nivel 1 Los objetos EntityReference se pueden insertar en el modelo de estructura cuando hay una referencia a una entidad en el documento fuente, o cuando el usuario desea insertar una referencia a una entidad. Obsérvese que las referencias de caracteres y las referencias a entidades predefinidas se consideran expandidas por el procesador HTML o XML de modo que los caracteres son representados por su equivalente Unicode más que por una referencia de entidades. Además, el procesador XML puede expandir completamente las referencias a entidades mientras construye el modelo de estructura, en lugar de proporcionar objetos EntityReference. Si lo que hace es proporcionar estos objetos, entonces, para un nodo EntityReference dado, puede ser que no haya ningún nodo Entity que represente la entidad referenciada. Pero si existe tal Entity, entoces la lista de hijos del nodo EntityReference es la misma que la del nodo Entity. Como con el nodo Entity, todos los descendientes de EntityReference son de sólo lectura. La resolución de los hijos de EntityReference (el valor de reemplazamiento de la entidad Entity referenciada) puede ser evaluada de manera laxa. Se supone que las acciones del usuario (como por ejemplo llamar al método childNodes del nodo EntityReference) activan la evaluación. Definición IDL interface EntityReference : Node { }; Interfaz ProcessingInstruction La interfaz ProcessingInstruction representa una "instrucción de procesamiento", utilizada en XML como medio de mantener información específica del procesador en el texto del documento. Definición IDL interface ProcessingInstruction : Node { readonly attribute DOMString target; attribute DOMString data; // raises(DOMException) on setting }; Atributos target El destino de esta instrucción de procesamiento. XML define a éste como la primera palabra ("token") que sigue al código que inicia la instrucción de procesamiento. data El contenido de esta instrucción de procesamiento. Esto va desde el primer carácter después del destino que no es espacio en blanco hasta el carácter que precede inmediatamente a ?>. Excepciones al establecer DOMException NO_MODIFICATION_ALLOWED_ERR: Provocada cuando el nodo es de sólo lectura. http://html.conclase.net/w3c/dom1-es/level-one-core.html (23 de 23) [16/10/2003 13:44:50] Modelo de Objetos del Documento (HTML), Nivel 1 REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. 2. Modelo de Objetos del Documento (HTML), Nivel 1 Editores Mike Champion, ArborText Vidur Apparao, Netscape Scott Isaacs, Microsoft (hasta enero de 1998) Chris Wilson, Microsoft (a partir de enero de 1998) Ian Jacobs, W3C Tabla de contenidos ● ● ● ● ● 2.1. Introducción 2.2. Aplicación del Núcleo del DOM a HTML ❍ 2.2.1. Convenciones de nombres 2.3. Definiciones de Objetos Diversos 2.4. Objetos relacionados con documentos HTML 2.5. Elementos HTML ❍ 2.5.1. Atributos como Propiedades ❍ 2.5.2. Excepciones en Nombres ❍ 2.5.3. Exposición de los Nombres de Tipos de Elemento (tagName) ❍ 2.5.4. La Interface HTMLElement ❍ 2.5.5. Definiciones de objetos 2.1. Introducción Esta sección extiende el Núcleo del Nivel 1 del API para describir objetos y métodos específicos de documentos HTML. En general, la funcionalidad necesaria para manipular estructuras jerárquicas de documentos, elementos y atributos se encontrará en la sección sobre el núcleo; la funcionalidad que dependa de elementos específicos definidos en HTML se encontrará en esta sección. Los fines del API DOM específico de HTML son: ● ● especializar y añadir funcionalidad relacionada con documentos y elementos HTML. tratar de resolver asuntos de compatibilidad con el "Nivel 0 del DOM". http://html.conclase.net/w3c/dom1-es/level-one-html.html (1 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 ● proporcionar mecanismos convenientes, siempre que sea apropiado, para operaciones comunes y frecuentes en documentos HTML. El término "Nivel 0 del DOM" se refiere a una mezcla (no especificada formalmente) de funcionalidades para documentos HTML ofrecidas por Netscape Navigator versión 3.0 y Microsoft Internet Explorer versión 3.0. En algunos casos, se han incluido atributos o métodos por motivos de compatibilidad con el "Nivel 0 del DOM". Las diferencia fundamental entre el Núcleo del DOM y la aplicación del DOM a HTML es que el Modelo de Objetos del Documento HTML expone ciertos métodos y propiedades de conveniencia que son consistentes con los modelos existentes y que son más apropiados para los autores de scripts. En muchos casos, estas mejoras no son aplicables a un DOM general, ya que se basan en la presencia de un DTD predefinido. Para el Nivel 1 del DOM, se asumen los DTDs Transicional y de Documentos con Marcos de HTML 4.0. La interoperabilidad entre aplicaciones sólo está garantizada para aquellos elementos y atributos que estén especificados en estas DTDs. Más concretamente, este documento incluye las siguientes especializaciones para HTML: ● ● ● Una Interfaz HTMLDocument, derivada de la interfaz Document del núcleo. HTMLDocument especifica las operaciones y consultas que pueden realizarse en un documento HTML. Una Interfaz HTMLElement, derivada de la interfaz Element del núcleo. HTMLElement especifica las operaciones y consultas que pueden realizarse en cualquier elemento HTML. Entre los métodos de HTMLElement se incluyen aquellos que permiten leer y modificar los atributos que se aplican a todos los elementos HTML. Especializaciones para todos los elementos HTML que tengan atributos que vayan más allá de los especificados en la Interfaz HTMLElement. La interfaz derivada para el elemento contiene para todos estos atributos métodos explícitos para establecer y obtener los valores. El Nivel 1 del DOM no incluye mecanismos para acceder y modificar estilos especificados con CSS1. Tampoco define un modelo de eventos para documentos HTML. Se espera especificar esta funcionalidad en un futuro Nivel de esta especificación. 2.2. Aplicación del Núcleo del DOM a HTML 2.2.1. Convenciones de Nombres El DOM HTML adopta una convención de nombres para propiedades, métodos, eventos, conjuntos y tipos de datos. Todos los nombres se definen como una o más palabras en inglés concatenadas para formar una sola cadena. Propiedades y Métodos El nombre de un método o propiedad comienza con la palabra inicial en minúscula, y cada palabra subsiguiente comienza con una letra mayúscula. Por ejemplo, si una propiedad devuelve metainformación sobre el documento tal como la fecha en que se creó el fichero, se podría denominar "fileDateCreated". En la correspondencia con ECMAScript, las propiedades se exponen como propiedades de un objeto dado. En Java, las propiedades se exponen con métodos get y set. Atributos e interfaces no HTML 4.0 Si bien la mayor parte de las interfaces abajo definidas pueden transformarse directamente en elementos definidos en la Recomendación HTML 4.0, para algunas de ellas esto no es posible. Análogamente, no todos los atributos enumerados tienen contrapartida en la especificación HTML 4.0 (y algunos que sí la tienen han sido renombrados para evitar conflictos con lenguajes de scripts). Las definiciones de interfaces y atributos enlazados con la especificación HTML 4.0 tienen allí las definiciones de los elementos y atributos correspondientes; todas las demás son añadidas por la presente especificación, bien por conveniencia, bien por compatibilidad con las implementaciones del "Nivel 0 del DOM". 2.3. Definiciones de Objetos Diversos Interfaz HTMLCollection http://html.conclase.net/w3c/dom1-es/level-one-html.html (2 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Un conjunto HTMLCollection es una lista de nodos. Se puede acceder a cada nodo individual, bien por su índice ordinal, bien por los atributos name o id del nodo. Nota: Se supone que los conjuntos del DOM HTML están vivos, en el sentido de que se actualizan automáticamente cuando el documento subyacente se modifica. Definición IDL interface HTMLCollection { readonly attribute unsigned long length; Node item(in unsigned long index); Node namedItem(in DOMString name); }; Atributos length Este atributo especifica la longitud o tamaño de la lista. Métodos item Este método obtiene un nodo especificado por un índice ordinal. Los nodos están numerados en el orden del árbol (orden de recorrido en profundidad o depth-first). Parámetros index El índice del nodo a obtener. El origen de índices es 0. Valor de Retorno El Node en la posición correspondiente en caso de éxito. Se devuelve un valor null si el índice está fuera de límites. Este método no provoca excepciones. namedItem Este método obtiene un Node usando un nombre. Primero busca un Node con un atributo id concordante. Si no encuentra ninguno, entonces busca un Node con un atributo name concordante, pero sólo entre aquellos elementos que puedan tener un atributo name. Parámetros name El nombre del Node a obtener. Valor de Retorno El Node con un atributo name o id cuyo valor corresponda a la cadena especificada. Si no tiene éxito (p.ej., porque no existe ningún nodo con ese nombre), devuelve null. Este método no provoca excepciones. 2.4. Objetos relacionados con documentos HTML Interfaz HTMLDocument Un HTMLDocument es la raíz de la jerarquía HTML y almacena todos los contenidos. Además de proporcionar acceso a la jerarquía, también proporciona algunos métodos de conveniencia para acceder a ciertos conjuntos de información del documento. Las siguientes propiedades han sido desaprobadas en favor de las correspondientes del elemento BODY: http://html.conclase.net/w3c/dom1-es/level-one-html.html (3 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 ❍ ❍ ❍ ❍ ❍ ❍ alinkColor background bgColor fgColor linkColor vlinkColor Definición IDL interface HTMLDocument : Document { attribute DOMString title; readonly attribute DOMString referrer; readonly attribute DOMString domain; readonly attribute DOMString URL; attribute HTMLElement body; readonly attribute HTMLCollection images; readonly attribute HTMLCollection applets; readonly attribute HTMLCollection links; readonly attribute HTMLCollection forms; readonly attribute HTMLCollection anchors; attribute DOMString cookie; void open(); void close(); void write(in DOMString text); void writeln(in DOMString text); Element getElementById(in DOMString elementId); NodeList getElementsByName(in DOMString elementName); }; Atributos title El título de un documento según se especifica en el elemento TITLE de la cabecera del documento. referrer Devuelve el URI de la página que referenció a esta página. Si el usuario navegó hasta esta página directamente (no a través de un vínculo sino, por ejemplo, desde su lista de favoritos) el valor es una cadena vacía. domain El nombre de dominio del servidor que sirvió el documento, o una cadena vacía si el servidor no puede ser identificado por un nombre de dominio. URL El URI completo del documento. body El elemento que contiene el contenido del documento. En documentos en que el contenido está en BODY devuelve el elemento BODY, y en elementos con marcos devuelve el elemento FRAMESET más externo. images Un conjunto de todos los elementos IMG de un documento. Por motivos de compatibilidad, el comportamiento se limita a elementos IMG. applets Un conjunto de todos los elementos OBJECT que incluyan aplicaciones y elementos APPLET (desaprobados) de un documento. links Un conjunto de todos los elementos AREA y elementos ancla (A) de un documento con un valor para el http://html.conclase.net/w3c/dom1-es/level-one-html.html (4 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 atributo href. forms Un conjunto de todos los formularios de un documento. anchors Un conjunto de todos los elementos ancla (A) de un documento con un valor para el atributo name. Nota: Por motivos de compatibilidad, el conjunto de anclas devuelto sólo incluye aquellas anclas creadas con el atributo name, no aquéllas creadas con el atributo id. cookie Las cookies asociadas a este documento. Si no hay ninguna, el valor es una cadena vacía. En caso contrario, el valor es una cadena: una lista de parejas "nombre, valor" separadas por punto y coma para todas las cookies asociadas a la página. Por ejemplo, name=value;expires=date. Métodos open Nota. Este método y los que siguen permiten a un usuario añadir o reemplazar el modelo de estructura usando cadenas de HTML sin analizar. En el momento de la redacción de este documento, se estaban considerando métodos alternativos para proporcionar funcionalidades similares tanto para documentos HTML como XML. Los siguientes métodos pueden ser desaprobados en algún momento del futuro en favor de un mecanismo de propósito más general. Abre un flujo de documento para escribir. Si existe un documento en el destino, este método lo borra. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. close Cierra un flujo de documento abierto por open() y fuerza la representación. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. write Escribe una cadena de texto en un flujo de documento abierto por open(). El texto es analizado al integrarse en el modelo de estructura del documento. Parámetros text La cadena a analizar e introducir en alguna estructura del modelo de estructura del documento. Este método no devuelve nada. Este método no provoca excepciones. writeln Escribe una cadena de texto seguida por un carácter de nueva línea en un flujo de documento abierto por open(). El texto es analizado al integrarse en el modelo de estructura del documento. Parámetros text La cadena a analizar e introducir en alguna estructura del modelo de estructura del documento. Este método no devuelve nada. Este método no provoca excepciones. getElementById Devuelve el elemento cuyo id está dado por elementId. Si no existe tal elemento, devuelve null. Si existe más de un elemento que tenga este id el comportamiento queda sin definir. Parámetros elementId El valor único de id de un elemento. Valor de Retorno El elemento concordante. http://html.conclase.net/w3c/dom1-es/level-one-html.html (5 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Este método no provoca excepciones. getElementsByName Devuelve el conjunto (posiblemente vacío) de elementos cuyo valor name está dado por elementName. Parámetros elementName El valor del atributo name de un elemento. Valor de Retorno Los elementos concordantes. Este método no provoca excepciones. 2.5. Elementos HTML 2.5.1. Atributos como Propiedades Los atributos de HTML se exponen como propiedades del objeto del elemento. El nombre de la propiedad expuesta siempre sigue las convenciones de nombres y no distingue para el atributo del documento fuente entre mayúsculas y minúsculas. El tipo de datos de la propiedad está determinado por el tipo del atributo, que a su vez está determinado por los DTDs transicional y de elementos con marcos de HTML 4.0. Los atributos tienen la semántica dada en la especificación HTML 4.0 (incluyendo la distinción entre mayúsculas y minúsculas). Los atributos se exponen como propiedades por compatibilidad con el "Nivel 0 del DOM". Este uso está desaprobado, porque no puede generalizarse a todos los posibles nombre de atributos, como es necesario tanto para XML como para potenciales versiones futuras de HTML. Recomendamos la utilización de métodos genéricos de la interfaz Element del núcleo para establecer, leer y borrar atributos. Tipo de Datos en el DTD Tipo de Datos en el Modelo de Objetos CDATA DOMString Lista de valores (p.ej., (left | right | center)) DOMString Lista de valores un valor (p.ej., (border)) boolean Número (Number) long int El valor de retorno de un atributo que tenga un tipo de datos que sea una lista de valores siempre se escribe con mayúscula, independientemente de cómo estuviera en el documento fuente. Por ejemplo, si el valor del atributo align de un elemento P es "left" entonces se devuelve como "Left". Para atributos con tipo de datos CDATA, se conservan el valor del atributo tal y como aparece en el documento fuente. 2.5.2. Excepciones en Nombres Para evitar conflictos en los espacios de nombres, se coloca un prefijo delante de los atributos que tengan el mismo nombre que una palabra clave de alguno de los lenguajes para los que hemos decidido crear correspondencias. Para HTML, el prefijo usado es "html". Por ejemplo, el atributo for del elemento LABEL está en conflicto con las convenciones de nombres de estructuras iterativas, y se renombra como htmlFor. 2.5.3. Exposición de Nombres de Tipos de Elemento (tagName) Los nombres de tipos de elemento expuestos a través de una propiedad están en mayúsculas. Por ejemplo, el nombre del tipo de elemento body se expone a través de la propiedad "tagName" como "BODY". http://html.conclase.net/w3c/dom1-es/level-one-html.html (6 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 2.5.4. La interfaz HTMLElement Interfaz HTMLElement Todas las interfaces de elementos HTML derivan de esta interfaz. Los elementos que sólo exponen los atributos básicos de HTML se representan con la interfaz base HTMLElement. Estos elementos son los siguientes: ❍ ❍ ❍ ❍ ❍ ❍ ❍ HEAD especiales: SUB, SUP, SPAN, BDO de fuente: TT, I, B, U, S, STRIKE, BIG, SMALL de frase: EM, STRONG, DFN, CODE, SAMP, KBD, VAR, CITE, ACRONYM, ABBR listas: DD, DT NOFRAMES, NOSCRIPT ADDRESS, CENTER Nota. El atributo style de esta interfaz se reserva para uso futuro. Definición IDL interface HTMLElement attribute attribute attribute attribute attribute }; : Element { DOMString DOMString DOMString DOMString DOMString id; title; lang; dir; className; Atributos id El identificador del elemento. Véase la definición del atributo id en HTML 4.0. title El título consultivo del elemento. Véase la definición del atributo title en HTML 4.0. lang Código de idioma definido en RFC 1766. Véase la definición del atributo lang en HTML 4.0. dir Especifica la dirección base de la direccionalidad del texto neutral y la de direccionalidad de tablas. Véase la definición del atributo dir en HTML 4.0. className El atributo de clase del elemento. Este atributo ha sido renombrado debido a conflictos con la palabra clave "class" expuesta en muchos lenguajes. Véase la definición del atributo class en HTML 4.0. 2.5.5. Definiciones de objetos Interfaz HTMLHtmlElement La raíz de un documento HTML. Véase la definición del elemento HTML en HTML 4.0. Definición IDL http://html.conclase.net/w3c/dom1-es/level-one-html.html (7 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 interface HTMLHtmlElement : HTMLElement { attribute DOMString }; version; Atributos version Información sobre la versión del DTD del documento. Véase la definición del atributo version en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLHeadElement Información de cabecera del documento. Véase la definición del elemento HEAD en HTML 4.0. Definición IDL interface HTMLHeadElement : HTMLElement { attribute DOMString }; profile; Atributos profile Un URI que designa un perfil de metadatos. Véase la definición del atributo profile en HTML 4.0. Interfaz HTMLLinkElement El elemento LINK especifica un vínculo a un recurso externo, y define la relación de este documento con ese recurso (o viceversa). Véase la definición del elemento LINK en HTML 4.0. Definición IDL interface HTMLLinkElement : HTMLElement { attribute boolean attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString }; Atributos disabled http://html.conclase.net/w3c/dom1-es/level-one-html.html (8 de 44) [16/10/2003 13:45:27] disabled; charset; href; hreflang; media; rel; rev; target; type; Modelo de Objetos del Documento (HTML), Nivel 1 Habilita/deshabilita el vínculo. Actualmente esto sólo se utiliza para vínculos con hojas de estilo, y se puede usar para activar o desactivar hojas de estilo. charset La codificación de caracteres del recurso que está siendo vinculado. Véase la definición del atributo charset en HTML 4.0. href El URI del recurso vinculado. Véase la definición del atributo href en HTML 4.0. hreflang El código del idioma del recurso vinculado. Véase la definición del atributo hreflang en HTML 4.0. media Diseñado para usar con uno o más medios destino. Véase la definición del atributo media en HTML 4.0. rel Tipo de vínculo directo. Véase la definición del atributo rel en HTML 4.0. rev Tipo de vínculo inverso. Véase la definición del atributo rev en HTML 4.0. target Marco en el que representar el recurso. Véase la definición del atributo target en HTML 4.0. type Tipo de contenido consultivo. Véase la definición del atributo type en HTML 4.0. Interfaz HTMLTitleElement El título del documento. Véase la definición del elemento TITLE en HTML 4.0. Definición IDL interface HTMLTitleElement : HTMLElement { attribute DOMString text; }; Atributos text El título especificado en forma de cadena. Interfaz HTMLMetaElement Contiene metainformación genérica sobre el documento. Véase la definición del elemento META en HTML 4.0. Definición IDL interface HTMLMetaElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString attribute DOMString }; http://html.conclase.net/w3c/dom1-es/level-one-html.html (9 de 44) [16/10/2003 13:45:27] content; httpEquiv; name; scheme; Modelo de Objetos del Documento (HTML), Nivel 1 Atributos content Información asociada. Véase la definición del atributo content en HTML 4.0. httpEquiv Nombre de encabezado de respuesta HTTP. Véase la definición del atributo http-equiv en HTML 4.0. name Nombre de metainformación. Véase la definición del atributo name en HTML 4.0. scheme Selecciona la forma del contenido. Véase la definición del atributo scheme en HTML 4.0. Interfaz HTMLBaseElement URI base del documento. Véase la definición del elemento BASE en HTML 4.0. Definición IDL interface HTMLBaseElement : HTMLElement { attribute DOMString attribute DOMString }; href; target; Atributos href El URI base. Véase la definición del atributo href en HTML 4.0. target El marco destino por defecto. Véase la definición del atributo target en HTML 4.0. Interfaz HTMLIsIndexElement Este elemento se usa para la entrada de una sola línea de texto. Véase la definición del elemento ISINDEX en HTML 4.0. Este elemento está desaprobado en HTML 4.0. Definición IDL interface HTMLIsIndexElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString prompt; }; Atributos form Devuelve el elemento FORM que contiene a este control. Devuelve null si el control no está en el contexto de un formulario. prompt El mensaje de indicación. Véase la definición del atributo prompt en HTML 4.0. Este atributo está desaprobado en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (10 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Interfaz HTMLStyleElement Información de estilo. Se espera definir un modelo de objetos de hojas de estilo más detallado en un documento aparte. Véase la definición del elemento STYLE en HTML 4.0. Definición IDL interface HTMLStyleElement : HTMLElement { attribute boolean disabled; attribute DOMString media; attribute DOMString type; }; Atributos disabled Habilita/deshabilita la hoja de estilo. media Diseñado para usar con uno o más medios destino. Véase la definición del atributo media en HTML 4.0. type El lenguaje de la hoja de estilo (tipo de medios de Internet). Véase la definición del atributo type en HTML 4.0. Interfaz HTMLBodyElement El cuerpo del documento HTML. Este elemento siempre está presente en al API DOM, aunque las etiquetas no estén presentes en el documento fuente. Véase la definición del elemento BODY en HTML 4.0. Definición IDL interface HTMLBodyElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString }; aLink; background; bgColor; link; text; vLink; Atributos aLink Color de los vínculos activos (después de pulsar el botón del ratón, pero antes de soltarlo). Véase la definición del atributo alink en HTML 4.0. Este atributo está desaprobado en HTML 4.0. background El URI de la imagen de textura de fondo. Véase la definición del atributo background en HTML 4.0. Este atributo está desaprobado en HTML 4.0. bgColor http://html.conclase.net/w3c/dom1-es/level-one-html.html (11 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Color de fondo del documento. Véase la definición del atributo bgcolor en HTML 4.0. Este atributo está desaprobado en HTML 4.0. link Color de los vínculos que no están ni activos ni sin visitar. Véase la definición del atributo link en HTML 4.0. Este atributo está desaprobado en HTML 4.0. text Color de texto del documento. Véase la definición del atributo text en HTML 4.0. Este atributo está desaprobado en HTML 4.0. vLink Color de los vínculos que han sido visitados por el usuario. Véase la definición del atributo vlink en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLFormElement El elemento FORM reúne un comportamiento similar al de un conjunto y al de un elemento. Proporciona acceso directo a los elementos contenidos de entrada de datos, así como a los atributos del elemento de formulario. Véase la definición del elemento FORM en HTML 4.0. Definición IDL interface HTMLFormElement : HTMLElement { readonly attribute HTMLCollection readonly attribute long attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString void submit(); void reset(); }; elements; length; name; acceptCharset; action; enctype; method; target; Atributos elements Devuelve un conjunto de todos los elementos de control del formulario. length El número de controles de formulario del formulario. name Da nombre al formulario. acceptCharset Lista de juegos de caracteres soportados por el servidor. Véase la definición del atributo acceptcharset en HTML 4.0. action Procesador del formulario en el servidor. Véase la definición del atributo action en HTML 4.0. enctype El tipo de contenido del formulario enviado, generalmente "application/x-www-form-urlencoded". Véase la definición del atributo enctype en HTML 4.0. method Método HTTP utilizado para enviar el formulario. Véase la definición del atributo method en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (12 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 target Marco en el que representar el recurso. Véase la definición del atributo target en HTML 4.0. Métodos submit Envía el formulario. Realiza la misma acción que un botón de envío. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. reset Reinicializa los valores por defecto de un elemento de formulario. Realiza la misma acción que un botón de reinicialización. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLSelectElement El elemento select permite la selección de una opción. Se puede acceder directamente a las opciones contenidas como un conjunto a través del elemento select. Véase la definición del elemento SELECT en HTML 4.0. Definición IDL interface HTMLSelectElement : HTMLElement { readonly attribute DOMString type; attribute long selectedIndex; attribute DOMString value; readonly attribute long length; readonly attribute HTMLFormElement form; readonly attribute HTMLCollection options; attribute boolean disabled; attribute boolean multiple; attribute DOMString name; attribute long size; attribute long tabIndex; void add(in HTMLElement element, in HTMLElement before); void remove(in long index); void blur(); void focus(); Atributos type El tipo de control creado. El valor del atributo type es la cadena "select-multiple" cuando el atributo multiple es true, y la cadena "select-one" cuando es false. selectedIndex El índice ordinal de la opción seleccionada. Se devuelve el valor -1 si no hay ningún elemento seleccionado. Si hay varias opciones seleccionadas, se devuelve el índice de la primera opción seleccionada. value El valor actual del control de formulario. length El número de opciones de este SELECT. http://html.conclase.net/w3c/dom1-es/level-one-html.html (13 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. options El conjunto de los elementos OPTION contenidos por este elemento. disabled El control no está disponible en este contexto. Véase la definición del atributo disabled en HTML 4.0. multiple Si es true, se pueden seleccionar varios elementos OPTION en este SELECT. Véase la definición del atributo multiple en HTML 4.0. name El nombre del objeto o control de formulario cuando se envía junto al formulario. Véase la definición del atributo name en HTML 4.0. size Número de filas visibles. Véase la definición del atributo size en HTML 4.0. tabIndex Índice que representa la posición del elemento en el orden de tabulación. Véase la definición del atributo tabindex en HTML 4.0. Métodos add Añade un nuevo elemento al conjunto de elementos OPTION de este SELECT. Parámetros element El elemento a añadir. before El elemento antes del cual insertar, o NULL para insertarlo en la cola de la lista. Este método no devuelve nada. Este método no provoca excepciones. remove Retira un elemento del conjunto de elementos OPTION de este SELECT. No hace nada si ningún elemento tiene el índice dado. Parámetros index El índice del objeto a retirar. Este método no devuelve nada. Este método no provoca excepciones. blur Quita el foco del teclado de este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. focus Dirige el foco del teclado hacia este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLOptGroupElement Agrupa varias opciones en subdivisiones lógicas. Véase la definición del elemento OPTGROUP en HTML 4.0. Definición IDL http://html.conclase.net/w3c/dom1-es/level-one-html.html (14 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 interface HTMLOptGroupElement : HTMLElement { attribute boolean disabled; attribute DOMString label; }; Atributos disabled El control no está disponible en este contexto. Véase la definición del atributo disabled en HTML 4.0. label Asigna un rótulo a este grupo de opciones. Véase la definición del atributo label en HTML 4.0. Interfaz HTMLOptionElement Una opción seleccionable. Véase la definición del elemento OPTION en HTML 4.0. Definición IDL interface HTMLOptionElement : HTMLElement { readonly attribute HTMLFormElement form; attribute boolean defaultSelected; readonly attribute DOMString text; readonly attribute long index; attribute boolean disabled; attribute DOMString label; attribute boolean selected; attribute DOMString value; }; Atributos form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. defaultSelected Representa el valor del atributo HTML selected. El valor de este atributo no cambia si cambia el estado del control de formulario correspondiente en un agente de usuario interactivo. Sin embargo, al cambiar defaultSelected se reinicializa el estado del control de formulario. Véase la definición del atributo selected en HTML 4.0. text El texto contenido dentro del elemento OPTION. index El índice de esta OPTION en su SELECT padre. disabled El control no está disponible en este contexto. Véase la definición del atributo disabled en HTML 4.0. label Rótulo de la opción para usar en menúes jerárquicos. Véase la definición del atributo label en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (15 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 selected Representa el estado actual del control de formulario correspondiente en un agente de usuario interactivo. Al cambiar este atributo cambia el estado del control de formulario, pero no cambia el valor del atributo HTML selected del elemento. Véase la definición del atributo selected en HTML 4.0. value El valor actual del control de formulario. Véase la definición del atributo value en HTML 4.0. Interfaz HTMLInputElement Control de formulario. Nota. Dependiendo del entorno en que se esté viendo la página, la propiedad value puede ser de sólo lectura para el tipo de control de subir ficheros. Para el tipo de control contraseña, el valor real devuelto puede ser enmascarado para impedir su uso no autorizado. Véase la definición del elemento INPUT en HTML 4.0. Definición IDL interface HTMLInputElement : HTMLElement { attribute DOMString defaultValue; attribute boolean defaultChecked; readonly attribute HTMLFormElement form; attribute DOMString accept; attribute DOMString accessKey; attribute DOMString align; attribute DOMString alt; attribute boolean checked; attribute boolean disabled; attribute long maxLength; attribute DOMString name; attribute boolean readOnly; attribute DOMString size; attribute DOMString src; attribute long tabIndex; readonly attribute DOMString type; attribute DOMString useMap; attribute DOMString value; void blur(); void focus(); void select(); void click(); }; Atributos defaultValue Cuando el atributo type del elemento tiene el valor "Text", "File" o "Password", esto representa el atributo HTML value de este elemento. El valor de este atributo no cambia si cambian los contenidos del control de formulario correspondiente en un agente de usuario interactivo. Sin embargo, al cambiar este atributo se reinicializan los contenidos del control de formulario. Véase la definición del atributo value en HTML 4.0. defaultChecked Cuando el atributo type del elemento tiene el valor "Checkbox" o "Radio", esto representa el atributo HTML checked del elemento. El valor de este atributo no cambia si cambia el estado del control de formulario correspondiente en un agente de usuario interactivo. Sin embargo, al cambiar este atributo se http://html.conclase.net/w3c/dom1-es/level-one-html.html (16 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 reinicializa el estado del control de formulario. Véase la definición del atributo checked en HTML 4.0. form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. accept Una lista de tipos de contenidos, separados por comas, que un servidor que procese este formulario procesará correctamente. Véase la definición del atributo accept en HTML 4.0. accessKey Una tecla de carácter individual de acceso para dar acceso al control de formulario. Véase la definición del atributo accesskey en HTML 4.0. align Alinea este objeto (vertical u horizontalmente) con respecto al texto circundante.Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. alt Texto alternativo para agentes de usuario que no representen el contenido normal de este elemento. Véase la definición del atributo alt en HTML 4.0. checked Cuando el atributo type del elemento tiene el valor "Checkbox" o "Radio", esto representa el estado actual del control de formulario correspondiente en un agente de usuario interactivo. Al cambiar este atributo se cambia el estado del control, pero no cambia el valor del atributo HTML value del elemento. disabled El control no está disponible en este contexto. Véase la definición del atributo disabled en HTML 4.0. maxLength Número máximo de caracteres para campos de texto, cuando type tenga el valor "Text" o "Password". Véase la definición del atributo maxlength en HTML 4.0. name Nombre del objeto o control de formulario cuando se envía junto a un formulario. Véase la definición del atributo name en HTML 4.0. readOnly Este control es de sólo lectura. Sólo para type igual a "text" o "password". Véase la definición del atributo readonly en HTML 4.0. size Información sobre el tamaño. El significado preciso es específico de cada tipo de campo. Véase la definición del atributo size en HTML 4.0. src Cuando el atributo type tenga el valor "Image", este atributo especifica la localización de la imagen a utilizar para decorar el botón de envío gráfico. Véase la definición del atributo src en HTML 4.0. tabIndex Índice que representa la posición del elemento en el orden de tabulación. Véase la definición del atributo tabindex en HTML 4.0. type El tipo de control creado. Véase la definición del atributo type en HTML 4.0. useMap Usar mapa de imágenes en el lado del cliente. Véase la definición del atributo usemap en HTML 4.0. value Cuando el atributo type del elemento tiene el valor "Text", "File" o "Password", esto representa los contenidos actuales del control de formulario correspondiente en un agente de usuario interactivo. Al cambiar este atributo, cambian los contenidos del control de formulario, pero no cambia el valor del atributo HTML value del elemento. Cuando el atributo type del elemento tiene el valor "Button", "Hidden", "Submit", "Reset", "Image", "Checked" o "Radio", esto representa el atributo HTML value del elemento. Véase la definición del atributo value en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (17 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Métodos blur Quita el foco del teclado de este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. focus Dirige el foco del teclado hacia este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. select Selecciona los contenidos del área de texto. Para elementos INPUT cuyo atributo type tenga uno de los siguientes valores: "Text", "File", o "Password". Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. click Simula un clic del ratón. Para elementos INPUT cuyo atributo type tenga uno de los siguientes valores: "Button", "Checkbox", "Radio", "Reset", o "Submit". Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLTextAreaElement Campo de texto multilínea. Véase la definición del elemento TEXTAREA en HTML 4.0. Definición IDL interface HTMLTextAreaElement : HTMLElement { attribute DOMString defaultValue; readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute long cols; attribute boolean disabled; attribute DOMString name; attribute boolean readOnly; attribute long rows; attribute long tabIndex; readonly attribute DOMString type; attribute DOMString value; void blur(); void focus(); void select(); }; Atributos defaultValue Representa los contenidos del elemento. El valor de este atributo no cambia si cambian los contenidos http://html.conclase.net/w3c/dom1-es/level-one-html.html (18 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 del control de formulario correspondiente en un agente de usuario interactivo. Sin embargo, al cambiar este atributo, se reinicializan los contenidos del control de formulario. form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. accessKey Una tecla de carácter individual de acceso que da acceso al control de formulario. Véase la definición del atributo accesskey en HTML 4.0. cols Anchura del control (en caracteres). Véase la definición del atributo cols en HTML 4.0. disabled El control no está disponible en este contexto. Véase la definición del atributo disabled en HTML 4.0. name Nombre del objeto o control de formulario cuando se envía junto con el formulario. Véase la definición del atributo name en HTML 4.0. readOnly Este control es de sólo lectura. Véase la definición del atributo readonly en HTML 4.0. rows Número de filas de texto. Véase la definición del atributo rows en HTML 4.0. tabIndex Índice que representa la posición del elemento en el orden de tabulación. Véase la definición del atributo tabindex en HTML 4.0. type El tipo de este control de formulario. El valor del atributo type es la cadena "textarea". value Representa los contenidos actuales del control de formulario correspondiente en un agente de usuario interactivo. Al cambiar este atributo cambian los contenidos del control del formulario, pero no cambian los contenidos del elemento. Métodos blur Quita el foco del teclado de este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. focus Dirige el foco del teclado hacia este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. select Selecciona los contenidos del TEXTAREA. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLButtonElement Botón pulsador. Véase la definición del elemento BUTTON en HTML 4.0. Definición IDL http://html.conclase.net/w3c/dom1-es/level-one-html.html (19 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 interface HTMLButtonElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute boolean disabled; attribute DOMString name; attribute long tabIndex; readonly attribute DOMString type; attribute DOMString value; }; Atributos form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. accessKey Una tecla de carácter individual de acceso para dar acceso al control de formulario. Véase la definición del atributo accesskey en HTML 4.0. disabled El control no está disponible en este contexto. Véase la definición del atributo disabled en HTML 4.0. name Nombre del objeto o control de formulario cuando se envía junto con el formulario. Véase la definición del atributo name en HTML 4.0. tabIndex Índice que representa la posición del elemento en el orden de tabulación. Véase la definición del atributo tabindex en HTML 4.0. type El tipo de botón. Véase la definición del atributo type en HTML 4.0. value El valor actual del control de formulario. Véase la definición del atributo value en HTML 4.0. Interfaz HTMLLabelElement Texto del rótulo de un campo de formulario. Véase la definición del elemento LABEL en HTML 4.0. Definición IDL interface HTMLLabelElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute DOMString htmlFor; }; Atributos form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. accessKey Una tecla de carácter individual de acceso para dar acceso al control de formulario. Véase la definición http://html.conclase.net/w3c/dom1-es/level-one-html.html (20 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 del atributo accesskey en HTML 4.0. htmlFor Este atributo vincula este rótulo con otro control de formulario por medio de un atributo id. Véase la definición del atributo for en HTML 4.0. Interfaz HTMLFieldSetElement Organiza los controles del formulario en grupos lógicos. Véase la definición del elemento FIELDSET en HTML 4.0. Definición IDL interface HTMLFieldSetElement : HTMLElement { readonly attribute HTMLFormElement form; }; Atributos form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. Interfaz HTMLLegendElement Proporciona un título para un grupo FIELDSET. Véase la definición del elemento LEGEND en HTML 4.0. Definición IDL interface HTMLLegendElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute DOMString align; }; Atributos form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. accessKey Una tecla de carácter individual de acceso para dar acceso al control de formulario. Véase la definición del atributo accesskey en HTML 4.0. align Alineación del texto con relación al FIELDSET. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLUListElement Lista no ordenada. Véase la definición del elemento UL en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (21 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Definición IDL interface HTMLUListElement : HTMLElement { attribute boolean compact; attribute DOMString type; }; Atributos compact Reduce el espaciado entre los objetos de la lista. Véase la definición del atributo compact en HTML 4.0. Este atributo está desaprobado en HTML 4.0. type Estilo del marcador. Véase la definición del atributo type en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLOListElement Lista ordenada. Véase la definición del elemento OL en HTML 4.0. Definición IDL interface HTMLOListElement : HTMLElement { attribute boolean compact; attribute long start; attribute DOMString type; }; Atributos compact Reduce el espaciado entre los objetos de la lista. Véase la definición del atributo compact en HTML 4.0. Este atributo está desaprobado en HTML 4.0. start Número inicial de la secuencia de numeración. Véase la definición del atributo start en HTML 4.0. Este atributo está desaprobado en HTML 4.0. type Estilo de numeración. Véase la definición del atributo type en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLDListElement Lista de definiciones. Véase la definición del elemento DL en HTML 4.0. Definición IDL interface HTMLDListElement : HTMLElement { attribute boolean compact; http://html.conclase.net/w3c/dom1-es/level-one-html.html (22 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 }; Atributos compact Reduce el espaciado entre los objetos de la lista. Véase la definición del atributo compact en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLDirectoryElement Lista estilo directorio. Véase la definición del elemento DIR en HTML 4.0. Este elemento está desaprobado en HTML 4.0. Definición IDL interface HTMLDirectoryElement : HTMLElement { attribute boolean compact; }; Atributos compact Reduce el espaciado entre los objetos de la lista. Véase la definición del atributo compact en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLMenuElement Lista estilo menú. Véase la definición del elemento MENU en HTML 4.0. Este elemento está desaprobado en HTML 4.0. Definición IDL interface HTMLMenuElement : HTMLElement { attribute boolean }; compact; Atributos compact Reduce el espaciado entre los objetos de la lista. Véase la definición del atributo compact en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLLIElement Objeto de lista. Véase la definición del elemento LI en HTML 4.0. Definición IDL http://html.conclase.net/w3c/dom1-es/level-one-html.html (23 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 interface HTMLLIElement : HTMLElement { attribute DOMString attribute long }; type; value; Atributos type Estilo del marcador de objeto de lista. Véase la definición del atributo type en HTML 4.0. Este atributo está desaprobado en HTML 4.0. value Reinicializa el número de secuencia cuando se usa con OL. Véase la definición del atributo value en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLDivElement Contenedor genérico en bloque. Véase la definición del elemento DIV en HTML 4.0. Definición IDL interface HTMLDivElement : HTMLElement { attribute DOMString }; align; Atributos align Alineación horizontal del texto. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLParagraphElement Párrafos. Véase la definición del elemento P en HTML 4.0. Definición IDL interface HTMLParagraphElement : HTMLElement { attribute DOMString align; }; Atributos align Alineación horizontal del texto. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLHeadingElement http://html.conclase.net/w3c/dom1-es/level-one-html.html (24 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Para los elementos H1 a H6. Véase la definición del elemento H1 en HTML 4.0. Definición IDL interface HTMLHeadingElement : HTMLElement { attribute DOMString align; }; Atributos align Alineación horizontal del texto. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLQuoteElement Para los elementos Q y BLOCKQUOTE. Véase la definición del elemento Q en HTML 4.0. Definición IDL interface HTMLQuoteElement : HTMLElement { attribute DOMString cite; }; Atributos cite Un URI que designa al documento o mensaje original. Véase la definición del atributo cite en HTML 4.0. Interfaz HTMLPreElement Texto preformateado. Véase la definición del elemento PRE en HTML 4.0. Definición IDL interface HTMLPreElement : HTMLElement { attribute long }; width; Atributos width Una anchura fija para el contenido. Véase la definición del atributo width en HTML 4.0. Este atributo está desaprobado en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (25 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Interfaz HTMLBRElement Fuerza un salto de línea. Véase la definición del elemento BR en HTML 4.0. Definición IDL interface HTMLBRElement : HTMLElement { attribute DOMString }; clear; Atributos clear Controla el flujo del texto alrededor de los objetos flotantes. Véase la definición del atributo clear en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLBaseFontElement Fuente base. Véase la definición del elemento BASEFONT en HTML 4.0. Este elemento está desaprobado en HTML 4.0. Definición IDL interface HTMLBaseFontElement : HTMLElement { attribute DOMString color; attribute DOMString face; attribute DOMString size; }; Atributos color Color de fuente. Véase la definición del atributo color en HTML 4.0. Este atributo está desaprobado en HTML 4.0. face Identificador del tipo de fuente (font face). Véase la definición del atributo face en HTML 4.0. Este atributo está desaprobado en HTML 4.0. size Tamaño de fuente. Véase la definición del atributo size en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLFontElement Cambio local de fuente. Véase la definición del elemento FONT en HTML 4.0. Este elemento está desaprobado en HTML 4.0. Definición IDL http://html.conclase.net/w3c/dom1-es/level-one-html.html (26 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 interface HTMLFontElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString }; color; face; size; Atributos color Color de fuente. Véase la definición del atributo color en HTML 4.0. Este atributo está desaprobado en HTML 4.0. face Identificador del tipo de fuente (font face). Véase la definición del atributo face en HTML 4.0. Este atributo está desaprobado en HTML 4.0. size Tamaño de fuente. Véase la definición del atributo size en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLHRElement Crea una línea separadora horizontal. Véase la definición del elemento HR en HTML 4.0. Definición IDL interface HTMLHRElement : HTMLElement { attribute DOMString attribute boolean attribute DOMString attribute DOMString }; align; noShade; size; width; Atributos align Alinea el separador en la página. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. noShade Indica al agente de usuario que no debería haber un sombreado al representar este elemento. Véase la definición del atributo noshade en HTML 4.0. Este atributo está desaprobado en HTML 4.0. size La altura del separador. Véase la definición del atributo size en HTML 4.0. Este atributo está desaprobado en HTML 4.0. width La anchura del separador. Véase la definición del atributo width en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLModElement Aviso de modificación de una parte del documento. Véanse las definiciones de los elementos INS y DEL en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (27 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Definición IDL interface HTMLModElement : HTMLElement { attribute DOMString attribute DOMString }; cite; dateTime; Atributos cite Un URI que designa un documento que describe la razón del cambio. Véase la definición del atributo cite en HTML 4.0. dateTime La hora y fecha del cambio. Véase la definición del atributo datetime en HTML 4.0. Interfaz HTMLAnchorElement El elemento ancla (origen o destino de vínculo). Véase la definición del elemento A en HTML 4.0. Definición IDL interface HTMLAnchorElement : HTMLElement { attribute DOMString accessKey; attribute DOMString charset; attribute DOMString coords; attribute DOMString href; attribute DOMString hreflang; attribute DOMString name; attribute DOMString rel; attribute DOMString rev; attribute DOMString shape; attribute long tabIndex; attribute DOMString target; attribute DOMString type; void blur(); void focus(); }; Atributos accessKey Una tecla de carácter individual de acceso para dar acceso al control de formulario. Véase la definición del atributo accesskey en HTML 4.0. charset La codificación de caracteres del recurso vinculado. Véase la definición del atributo charset en HTML 4.0. coords Lista de longitudes, separadas por comas, que definen la geometría de una región activa. Véase también shape para la forma de la región. Véase la definición del atributo coords en HTML 4.0. href http://html.conclase.net/w3c/dom1-es/level-one-html.html (28 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 El URI del recurso vinculado. Véase la definición del atributo href en HTML 4.0. hreflang Código del idioma del recurso vinculado. Véase la definición del atributo hreflang en HTML 4.0. name Nombre del ancla. Véase la definición del atributo name en HTML 4.0. rel Tipo de vínculo directo. Véase la definición del atributo rel en HTML 4.0. rev Tipo de vínculo inverso. Véase la definición del atributo rev en HTML 4.0. shape La forma del área activa. Las coordenadas están dadas por coords. Véase la definición del atributo shape en HTML 4.0. tabIndex Índice que representa la posición del elemento en el orden de tabulación. Véase la definición del atributo tabindex en HTML 4.0. target Marco en el que representar el recurso. Véase la definición del atributo target en HTML 4.0. type Tipo de contenido consultivo. Véase la definición del atributo type en HTML 4.0. Métodos blur Quita el foco del teclado de este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. focus Dirige el foco del teclado hacia este elemento. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLImageElement Imagen incluida. Véase la definición del elemento IMG en HTML 4.0. Definición IDL interface HTMLImageElement : HTMLElement { attribute DOMString lowSrc; attribute DOMString name; attribute DOMString align; attribute DOMString alt; attribute DOMString border; attribute DOMString height; attribute DOMString hspace; attribute boolean isMap; attribute DOMString longDesc; attribute DOMString src; attribute DOMString useMap; attribute DOMString vspace; attribute DOMString width; }; http://html.conclase.net/w3c/dom1-es/level-one-html.html (29 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Atributos lowSrc URI que designa el origen de esta imagen, para salida en baja resolución. name El nombre del elemento (por compatibilidad con versiones anteriores). align Alinea este objeto (vertical u horizontalmente) con respecto al texto circundante. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. alt Texto alternativo para agentes de usuario que no representen el contenido normal. Véase la definición del atributo alt en HTML 4.0. border Anchura del borde que rodea a la imagen. Véase la definición del atributo border en HTML 4.0. Este atributo está desaprobado en HTML 4.0. height Especifica una nueva altura. Véase la definición del atributo height en HTML 4.0. hspace Espacio horizontal a la izquierda y a la derecha de esta imagen. Véase la definición del atributo hspace en HTML 4.0. Este atributo está desaprobado en HTML 4.0. isMap Usar mapa de imágenes en el lado del servidor. Véase la definición del atributo ismap en HTML 4.0. longDesc URI que designa una descripción larga de esta imagen o marco. Véase la definición del atributo longdesc en HTML 4.0. src URI que designa el origen de esta imagen. Véase la definición del atributo src en HTML 4.0. useMap Usar mapa de imágenes en el lado del cliente. Véase la definición del atributo usemap en HTML 4.0. vspace Espacio vertical por encima y por debajo de esta imagen. Véase la definición del atributo vspace en HTML 4.0. Este atributo está desaprobado en HTML 4.0. width Especifica una nueva anchura. Véase la definición del atributo width en HTML 4.0. Interfaz HTMLObjectElement Objeto genérico incluido. Nota. En principio, todas las propiedades del elemento OBJECT son de lectura y escritura, pero en algunos entornos algunas propiedades pueden ser de sólo lectura una vez que el objeto subyacente haya sido creado. Véase la definición del elemento OBJECT en HTML 4.0. Definición IDL interface HTMLObjectElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString code; attribute DOMString align; attribute DOMString archive; attribute DOMString border; attribute DOMString codeBase; attribute DOMString codeType; attribute DOMString data; http://html.conclase.net/w3c/dom1-es/level-one-html.html (30 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute boolean DOMString DOMString DOMString DOMString long DOMString DOMString DOMString DOMString declare; height; hspace; name; standby; tabIndex; type; useMap; vspace; width; }; Atributos form Devuelve el elemento FORM que contiene a este control. Devuelve null si este control no está en el contexto de un formulario. code Fichero class del applet. Véase el atributo code de HTMLAppletElement. align Alinea este objeto (vertical u horizontalmente) con respecto al texto circundante. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. archive Lista de archivos separados por espacios. Véase la definición del atributo archive en HTML 4.0. border Anchura del borde que rodea al objeto. Véase la definición del atributo border en HTML 4.0. Este atributo está desaprobado en HTML 4.0. codeBase URI base para los atributos classid, data y archive. Véase la definición del atributo codebase en HTML 4.0. codeType Tipo de contenido de los datos descargados a través del atributo classid. Véase la definición del atributo codetype en HTML 4.0. data Un URI que especifica la localización de los datos del objeto. Véase la definición del atributo data en HTML 4.0. declare Declara este objeto (para su referencia posterior), pero no lo crea. Véase la definición del atributo declare en HTML 4.0. height Especifica una nueva altura. Véase la definición del atributo height en HTML 4.0. hspace Espacio horizontal a la izquierda y a la derecha de esta imagen, applet u objeto. Véase la definición del atributo hspace en HTML 4.0. Este atributo está desaprobado en HTML 4.0. name Nombre del objeto o control de formulario cuando se envía junto al formulario. Véase la definición del atributo name en HTML 4.0. standby Mensaje a mostrar mientras se carga el objeto. Véase la definición del atributo standby en HTML 4.0. tabIndex Índice que representa la posición del elemento dentro del orden de tabulación. Véase la definición del atributo tabindex en HTML 4.0. type http://html.conclase.net/w3c/dom1-es/level-one-html.html (31 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Tipo de contenido de los datos descargados a través del atributo data. Véase la definición del atributo type en HTML 4.0. useMap Usar mapa de imágenes en el lado del cliente. Véase la definición del atributo usemap en HTML 4.0. vspace Espacio vertical por encima y por debajo de esta imagen, applet u objeto. Véase la definición del atributo vspace en HTML 4.0. Este atributo está desaprobado en HTML 4.0. width Especifica una nueva anchura. Véase la definición del atributo width en HTML 4.0. Interfaz HTMLParamElement Parámetros pasados al elemento OBJECT. Véase la definición del elemento PARAM en HTML 4.0. Definición IDL interface HTMLParamElement : HTMLElement { attribute DOMString name; attribute DOMString type; attribute DOMString value; attribute DOMString valueType; }; Atributos name El nombre de un parámetro de tiempo de ejecución. Véase la definición del atributo name en HTML 4.0. type Tipo de contenido para el atributo value cuando valuetype tiene el valor "ref". Véase la definición del atributo type en HTML 4.0. value El valor de un parámetro de tiempo de ejecución. Véase la definición del atributo value en HTML 4.0. valueType Información sobre el significado del valor del atributo value. Véase la definición del atributo valuetype en HTML 4.0. Interfaz HTMLAppletElement Un applet Java incluido. Véase la definición del elemento APPLET en HTML 4.0. Este elemento está desaprobado en HTML 4.0. Definición IDL interface HTMLAppletElement : HTMLElement { attribute DOMString align; attribute DOMString alt; attribute DOMString archive; attribute DOMString code; attribute DOMString codeBase; http://html.conclase.net/w3c/dom1-es/level-one-html.html (32 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 attribute attribute attribute attribute attribute attribute DOMString DOMString DOMString DOMString DOMString DOMString height; hspace; name; object; vspace; width; }; Atributos align Alinea este objeto (vertical u horizontalmente) con respecto al texto circundante. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. alt Texto alternativo para agentes de usuario que no representen el contenido normal de este elemento. Véase la definición del atributo alt en HTML 4.0. Este atributo está desaprobado en HTML 4.0. archive Lista de archivos separados por comas. Véase la definición del atributo archive en HTML 4.0. Este atributo está desaprobado en HTML 4.0. code Fichero class del applet. Véase la definición del atributo code en HTML 4.0. Este atributo está desaprobado en HTML 4.0. codeBase URI base opcional para el applet. Véase la definición del atributo codebase en HTML 4.0. Este atributo está desaprobado en HTML 4.0. height Especifica una nueva altura. Véase la definición del atributo height en HTML 4.0. Este atributo está desaprobado en HTML 4.0. hspace Espacio horizontal a la izquierda y a la derecha de esta imagen, applet u objeto. Véase la definición del atributo hspace en HTML 4.0. Este atributo está desaprobado en HTML 4.0. name El nombre del applet. Véase la definición del atributo name en HTML 4.0. Este atributo está desaprobado en HTML 4.0. object Fichero applet serializado. Véase la definición del atributo object en HTML 4.0. Este atributo está desaprobado en HTML 4.0. vspace Espacio vertical por encima y por debajo de esta imagen, applet u objeto. Véase la definición del atributo vspace en HTML 4.0. Este atributo está desaprobado en HTML 4.0. width Especifica una nueva anchura. Véase la definición del atributo width en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLMapElement Mapa de imágenes en el lado del cliente. Véase la definición del elemento MAP en HTML 4.0. Definición IDL interface HTMLMapElement : HTMLElement { readonly attribute HTMLCollection http://html.conclase.net/w3c/dom1-es/level-one-html.html (33 de 44) [16/10/2003 13:45:27] areas; Modelo de Objetos del Documento (HTML), Nivel 1 attribute DOMString name; }; Atributos areas La lista de las áreas definidas para el mapa de imágenes. name Da nombre al mapa (para usarlo con usemap). Véase la definición del atributo name en HTML 4.0. Interfaz HTMLAreaElement Definición de un área de un mapa de imágenes en el lado del cliente. Véase la definición del elemento AREA en HTML 4.0. Definición IDL interface HTMLAreaElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute boolean attribute DOMString attribute long attribute DOMString }; accessKey; alt; coords; href; noHref; shape; tabIndex; target; Atributos accessKey Una tecla de carácter individual de acceso para dar acceso al control de formulario. Véase la definición del atributo accesskey en HTML 4.0. alt Texto alternativo para agentes de usuario que no representen el contenido normal de este elemento. Véase la definición del atributo alt en HTML 4.0. coords Lista de longitudes, separadas por comas, que definen la geometría de una región activa. Véase también shape para la forma de la región. Véase la definición del atributo coords en HTML 4.0. href El URI del recurso vinculado. Véase la definición del atributo href en HTML 4.0. noHref Especifica que esta área está inactiva, es decir, que no tiene acción asociada. Véase la definición del atributo nohref en HTML 4.0. shape La forma del área activa. Las coordenadas están dadas por coords. Véase la definición del atributo shape en HTML 4.0. tabIndex Índice que representa la posición del elemento en el orden de tabulación. Véase la definición del atributo tabindex en HTML 4.0. target http://html.conclase.net/w3c/dom1-es/level-one-html.html (34 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Marco en el que representar el recurso. Véase la definición del atributo target en HTML 4.0. Interfaz HTMLScriptElement Sentencias de script. Véase la definición del elemento SCRIPT en HTML 4.0. Definición IDL interface HTMLScriptElement : HTMLElement { attribute DOMString text; attribute DOMString htmlFor; attribute DOMString event; attribute DOMString charset; attribute boolean defer; attribute DOMString src; attribute DOMString type; }; Atributos text El script contenido en el elemento. htmlFor Reservado para uso futuro. event Reservado para uso futuro. charset La codificación de caracteres del recurso vinculado. Véase la definición del atributo charset en HTML 4.0. defer Indica que el agente de usuario puede aplazar el procesamiento del script. Véase la definición del atributo defer en HTML 4.0. src URI que designa un script externo. Véase la definición del atributo src en HTML 4.0. type El tipo de contenido correspondiente al lenguaje de scripts. Véase la definición del atributo type en HTML 4.0. Interfaz HTMLTableElement Los métodos create* y delete* de una tabla permiten a los autores construir y modificar tablas. HTML 4.0 especifica que en una tabla sólo puede aparecer un ejemplar de cada uno de los elementos CAPTION, THEAD y TFOOT. Por tanto, si ya existe uno, y se llama a los métodos createTHead() o createTFoot(), el método devuelve el elemento THead o TFoot existente. Véase la definición del elemento TABLE en HTML 4.0. Definición IDL interface HTMLTableElement : HTMLElement { attribute HTMLTableCaptionElement caption; attribute HTMLTableSectionElement tHead; attribute HTMLTableSectionElement tFoot; http://html.conclase.net/w3c/dom1-es/level-one-html.html (35 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 readonly attribute readonly attribute attribute attribute attribute attribute attribute attribute attribute attribute attribute HTMLElement void HTMLElement void HTMLElement void HTMLElement void HTMLCollection rows; HTMLCollection tBodies; DOMString align; DOMString bgColor; DOMString border; DOMString cellPadding; DOMString cellSpacing; DOMString frame; DOMString rules; DOMString summary; DOMString width; createTHead(); deleteTHead(); createTFoot(); deleteTFoot(); createCaption(); deleteCaption(); insertRow(in long index); deleteRow(in long index); }; Atributos caption Devuelve el CAPTION (título) de la tabla, o nada si éste no existe. tHead Devuelve la sección de cabecera THEAD de la tabla, o null si ésta no existe. tFoot Devuelve el pie TFOOT de la tabla, o null si éste no existe. rows Devuelve un conjunto de todas las filas de la tabla, incluyendo todas las de los elementos THEAD, TFOOT y TBODY. tBodies Devuelve un conjunto de todos los cuerpos de tabla definidos. align Especifica la posición de la tabla con respecto al resto del documento. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. bgColor Color de fondo de las celdas. Véase la definición del atributo bgcolor en HTML 4.0. Este atributo está desaprobado en HTML 4.0. border La anchura del borde que rodea a la tabla. Véase la definición del atributo border en HTML 4.0. cellPadding Especifica el espacio horizontal y vertical entre los contenidos de la celda y los bordes de la celda. Véase la definición del atributo cellpadding en HTML 4.0. cellSpacing Especifica la separación horizontal y vertical entre las celdas. Véase la definición del atributo cellspacing en HTML 4.0. frame Especifica qué bordes externos de la celda representar. Véase la definición del atributo frame en HTML 4.0. rules Especifica qué líneas de división entre celdas representar. Véase la definición del atributo rules en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (36 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 summary Descripción suplementaria sobre el propósito o estructura de una tabla. Véase la definición del atributo summary en HTML 4.0. width Especifica la anchura deseada de la tabla. Véase la definición del atributo width en HTML 4.0. Métodos createTHead Crea una fila de cabecera de tabla o devuelve una existente. Valor de Retorno Un nuevo elemento de cabecera de tabla (THEAD). Este método no tiene parámetros. Este método no provoca excepciones. deleteTHead Borra la cabecera de la tabla, si existe. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. createTFoot Crea una fila de pie de tabla o devuelve una existente. Valor de Retorno Un elemento de pie (TFOOT). Este método no tiene parámetros. Este método no provoca excepciones. deleteTFoot Borra el pie de una tabla, si existe. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. createCaption CCrea un nuevo objeto de título de tabla o devuelve uno existente. Valor de Retorno Un elemento CAPTION. Este método no tiene parámetros. Este método no provoca excepciones. deleteCaption Borra el título de la tabla, si existe. Este método no tiene parámetros. Este método no devuelve nada. Este método no provoca excepciones. insertRow Inserta una nueva fila vacía en la tabla. Nota. Una fila de tabla no puede estar vacía de acuerdo con la Recomendación HTML 4.0. La nueva fila se inserta inmediatamente antes y en la misma sección que la fila actual de índice index de la tabla. Si index es igual al número de filas, la nueva fila se añade al final. Además, cuando la tabla está vacía la fila se inserta en un TBODY que es creado e insertado en la tabla. Parámetros index El número de fila donde insertar la nueva fila. El índice empieza en 0 y es relativo a todas las celdas contenidas dentro de la tabla, independientemente de la sección padre. Valor de Retorno http://html.conclase.net/w3c/dom1-es/level-one-html.html (37 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 La fila recién creada. Este método no provoca excepciones. deleteRow Borra una fila de la tabla. Parámetros index El índice de la fila a borrar. El índice empieza en 0 y es relativo a todas las celdas contenidas dentro de la tabla, independientemente de la sección padre. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLTableCaptionElement Título de tabla. Véase la definición del elemento CAPTION en HTML 4.0. Definición IDL interface HTMLTableCaptionElement : HTMLElement { attribute DOMString align; }; Atributos align Alineación del título con respecto a la tabla. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLTableColElement Agrupa los elementos COL y COLGROUP. Véase la definición del elemento COL en HTML 4.0. Definición IDL interface HTMLTableColElement : HTMLElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute long span; attribute DOMString vAlign; attribute DOMString width; }; Atributos align Alineación horizontal de los datos de las celdas de una columna. Véase la definición del atributo align en HTML 4.0. ch http://html.conclase.net/w3c/dom1-es/level-one-html.html (38 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Carácter de alineación de las celdas de una columna. Véase la definición del atributo char en HTML 4.0. chOff Offset del carácter de alineación. Véase la definición del atributo charoff en HTML 4.0. span Indica el número de columnas de un grupo o que son afectadas por un agrupamiento. Véase la definición del atributo span en HTML 4.0. vAlign Alineación vertical de las celdas de datos de una columna. Véase la definición del atributo valign en HTML 4.0. width Anchura por defecto de las columnas. Véase la definición del atributo width en HTML 4.0. Interfaz HTMLTableSectionElement Los elementos THEAD, TFOOT y TBODY. Definición IDL interface HTMLTableSectionElement : HTMLElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; readonly attribute HTMLCollection rows; HTMLElement insertRow(in long index); void deleteRow(in long index); }; Atributos align Alineación horizontal de los datos de las celdas. Véase el atributo align de HTMLTheadElement para más detalles. ch Carácter de alineación para las celdas de una columna. Véase la definición del atributo char en HTML 4.0. chOff Offset del carácter de alineación. Véase la definición del atributo charoff en HTML 4.0. vAlign Alineación vertical de los datos de las celdas. Véase el atributo valign de HTMLTheadElement para más detalles. rows El conjunto de las filas de esta sección de tabla. Métodos insertRow Inserta una fila en esta sección. Parámetros index El número de fila en que insertar la nueva fila. El índice empieza en 0 y es relativo solamente a las filas contenidas dentro de esta sección, no a todas las filas de la tabla. Valor de Retorno La fila recién creada. http://html.conclase.net/w3c/dom1-es/level-one-html.html (39 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 Este método no provoca excepciones. deleteRow Borrar una fila de esta sección. Parámetros index El índice de la fila a borrar. El índice empieza en 0 y es relativo solamente a las filas contenidas dentro de esta sección, no a todas las filas de la tabla. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLTableRowElement Una fila de una tabla. Véase la definición del elemento TR en HTML 4.0. Definición IDL interface HTMLTableRowElement : HTMLElement { readonly attribute long rowIndex; readonly attribute long sectionRowIndex; readonly attribute HTMLCollection cells; attribute DOMString align; attribute DOMString bgColor; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; HTMLElement insertCell(in long index); void deleteCell(in long index); }; Atributos rowIndex El índice de esta fila, con relación a la tabla completa. sectionRowIndex El índice de esta fila, con relación a su sección (THEAD, TFOOT o TBODY). cells El conjunto de las celdas de esta fila. align Alineación horizontal de los datos contenidos en las celdas de esta fila. Véase la definición del atributo align en HTML 4.0. bgColor Color de fondo de la fila. Véase la definición del atributo bgcolor en HTML 4.0. Este atributo está desaprobado en HTML 4.0. ch Carácter de alineación para las celdas de una columna. Véase la definición del atributo char en HTML 4.0. chOff Offset del carácter de alineación. Véase la definición del atributo charoff en HTML 4.0. vAlign Alineación vertical de los datos contenidos en las celdas de esta fila. Véase la definición del atributo valign en HTML 4.0. Métodos http://html.conclase.net/w3c/dom1-es/level-one-html.html (40 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 insertCell Inserta una celda TD vacía en esta fila. Parámetros index El lugar en que insertar la celda. Valor de Retorno La celda recién creada. Este método no provoca excepciones. deleteCell Borrar una celda de esta fila. Parámetros index El índice de la celda a borrar. Este método no devuelve nada. Este método no provoca excepciones. Interfaz HTMLTableCellElement El objeto usado para representar los elementos TH y TD. Véase la definición del elemento TD en HTML 4.0. Definición IDL interface HTMLTableCellElement : HTMLElement { readonly attribute long cellIndex; attribute DOMString abbr; attribute DOMString align; attribute DOMString axis; attribute DOMString bgColor; attribute DOMString ch; attribute DOMString chOff; attribute long colSpan; attribute DOMString headers; attribute DOMString height; attribute boolean noWrap; attribute long rowSpan; attribute DOMString scope; attribute DOMString vAlign; attribute DOMString width; }; Atributos cellIndex El índice de esta celda dentro de la fila. abbr Abreviatura para celdas de encabezado. Véase la definición del atributo abbr en HTML 4.0. align Alineación horizontal de los datos de la celda. Véase la definición del atributo align en HTML 4.0. axis Grupo de nombres de encabezados relacionados. Véase la definición del atributo axis en HTML 4.0. bgColor Color de fondo de la celda. Véase la definición del atributo bgcolor en HTML 4.0. Este atributo está desaprobado en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (41 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 ch Carácter de alineación para las celdas de una columna. Véase la definición del atributo char en HTML 4.0. chOff Offset del carácter de alineación. Véase la definición del atributo charoff en HTML 4.0. colSpan Número de columnas abarcado por una celda. Véase la definición del atributo colspan en HTML 4.0. headers Lista de valores de atributos id para celdas de encabezado. Véase la definición del atributo headers en HTML 4.0. height Altura de la celda. Véase la definición del atributo height en HTML 4.0. Este atributo está desaprobado en HTML 4.0. noWrap Suprimir ajuste automático de líneas. Véase la definición del atributo nowrap en HTML 4.0. Este atributo está desaprobado en HTML 4.0. rowSpan Número de filas abarcado por la celda. Véase la definición del atributo rowspan en HTML 4.0. scope Campo de acción cubierto por celdas de encabezado. Véase la definición del atributo scope en HTML 4.0. vAlign Alineación vertical de los datos de la celda. Véase la definición del atributo valign en HTML 4.0. width Anchura de la celda. Véase la definición del atributo width en HTML 4.0. Este atributo está desaprobado en HTML 4.0. Interfaz HTMLFrameSetElement Crea una cuadrícula de marcos. Véase la definición del elemento FRAMESET en HTML 4.0. Definición IDL interface HTMLFrameSetElement : HTMLElement { attribute DOMString cols; attribute DOMString rows; }; Atributos cols El número de columnas de marcos del grupo de marcos. Véase la definición del atributo cols en HTML 4.0. rows El número de filas de marcos del grupo de marcos. Véase la definición del atributo rows en HTML 4.0. Interfaz HTMLFrameElement Crea un marco. Véase la definición del elemento FRAME en HTML 4.0. Definición IDL http://html.conclase.net/w3c/dom1-es/level-one-html.html (42 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 interface HTMLFrameElement : HTMLElement { attribute DOMString frameBorder; attribute DOMString longDesc; attribute DOMString marginHeight; attribute DOMString marginWidth; attribute DOMString name; attribute boolean noResize; attribute DOMString scrolling; attribute DOMString src; }; Atributos frameBorder Pedir bordes para el marco. Véase la definición del atributo frameborder en HTML 4.0. longDesc URI que designa una descripción larga de esta imagen o marco. Véase la definición del atributo longdesc en HTML 4.0. marginHeight Altura de los márgenes del marco, en píxeles. Véase la definición del atributo marginheight en HTML 4.0. marginWidth Anchura de los márgenes del marco, en píxeles. Véase la definición del atributo marginwidth en HTML 4.0. name El nombre del marco (objeto del atributo target). Véase la definición del atributo name en HTML 4.0. noResize Si es true, prohibe al usuario redimensionar el marco. Véase la definición del atributo noresize en HTML 4.0. scrolling Especifica si el marco debería tener barras de desplazamiento o no. Véase la definición del atributo scrolling en HTML 4.0. src Un URI que designa los contenidos iniciales del marco. Véase la definición del atributo src en HTML 4.0. Interfaz HTMLIFrameElement Subventanas en línea. Véase la definición del elemento IFRAME en HTML 4.0. Definición IDL interface HTMLIFrameElement : HTMLElement { attribute DOMString align; attribute DOMString frameBorder; attribute DOMString height; attribute DOMString longDesc; attribute DOMString marginHeight; attribute DOMString marginWidth; attribute DOMString name; http://html.conclase.net/w3c/dom1-es/level-one-html.html (43 de 44) [16/10/2003 13:45:27] Modelo de Objetos del Documento (HTML), Nivel 1 attribute attribute attribute DOMString DOMString DOMString scrolling; src; width; }; Atributos align Alinea este objeto (vertical u horizontalmente) con respecto a su texto circundante. Véase la definición del atributo align en HTML 4.0. Este atributo está desaprobado en HTML 4.0. frameBorder Pedir bordes para el marco. Véase la definición del atributo frameborder en HTML 4.0. height Altura del marco. Véase la definición del atributo height en HTML 4.0. longDesc URI que designa una descripción larga de esta imagen o marco. Véase la definición del atributo longdesc en HTML 4.0. marginHeight Altura de los márgenes del marco, en píxeles. Véase la definición del atributo marginheight en HTML 4.0. marginWidth Anchura de los márgenes del marco, en píxeles. Véase la definición del atributo marginwidth en HTML 4.0. name El nombre del marco (objeto del atributo target). Véase la definición del atributo name en HTML 4.0. scrolling Especifica si el marco debería tener barras de desplazamiento o no. Véase la definición del atributo scrolling en HTML 4.0. src Un URI que designa los contenidos iniciales del marco. Véase la definición del atributo src en HTML 4.0. width Anchura del marco. Véase la definición del atributo width en HTML 4.0. http://html.conclase.net/w3c/dom1-es/level-one-html.html (44 de 44) [16/10/2003 13:45:27] Colaboradores REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Apéndice A: Colaboradores Los miembros del Grupo de Trabajo DOM y del Grupo de Interés que contribuyeron a esta especificación fueron: Lauren Wood, SoftQuad, Inc., presidente Arnaud Le Hors, W3C, contacto de la plantilla del W3C Andrew Watson, Object Management Group Bill Smith, Sun Chris Lovett, Microsoft Chris Wilson, Microsoft David Brownell, Sun David Singer, IBM Don Park, invitado Eric Vasilik, Microsoft Gavin Nicol, INSO Ian Jacobs, W3C James Clark, invitado Jared Sorensen, Novell Jonathan Robie, Texcel Mike Champion, ArborText Paul Grosso, ArborText Peter Sharpe, SoftQuad, Inc. Phil Karlton, Netscape Ray Whitmer, iMall Rich Rollman, Microsoft Rick Gessner, Netscape Robert Sutor, IBM Scott Isaacs, Microsoft Sharon Adler, INSO Steve Byrne, JavaSoft http://html.conclase.net/w3c/dom1-es/contributors.html (1 de 2) [16/10/2003 13:45:52] Colaboradores Tim Bray, invitado Tom Pixley, Netscape Vidur Apparao, Netscape http://html.conclase.net/w3c/dom1-es/contributors.html (2 de 2) [16/10/2003 13:45:52] Glosario REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Apéndice B: Glosario Editores Robert S. Sutor, IBM Research Algunas de las siguientes definiciones se han tomado o modificado de definiciones similares de otros documentos del W3C u otros estándares. Véanse los vínculos de las definiciones para más información. API Una API es una interfaz de programación de aplicaciones (application programming interface), un conjunto de funciones o métodos usados para acceder a cierta funcionalidad. aplicación cliente (client application) Una aplicación [cliente] es cualquier programa de computadora que usa las interfaces de programación del Modelo de Objetos del Documento proporcionadas por la implementación anfitrión para realizar trabajo útil. Ejemplos de aplicaciones cliente son los scripts de un documento HTML o XML. ascendiente (ancestor) Un nodo ascendiente de cualquier nodo A es cualquier nodo por encima del A en un modelo de árbol, donde "por encima" significa "hacia la raíz". COM COM es el Modelo de Objetos Basados en Componentes de Microsoft (Component Object Model), una tecnología para construir aplicaciones a partir componentes binarias de software. comparación de cadenas (string comparison) Cuando es necesario un emparejamiento de cadenas, éste debe cumplirse como si la comparación se realizara entre dos secuencias de puntos de código del estándar Unicode 2.0. contexto (context) Un contexto especifica un patrón (o camino) de acceso: un conjunto de interfaces que nos ofrecen un medio de interaccionar con un modelo. Por ejemplo, imaginemos un modelo con arcos de diferentes colores que conectan nodos de datos. Un contexto podría ser una hoja de acetato coloreada que se coloca sobre el modelo, permitiéndonos obtener una vista parcial de la información total contenida en el modelo. conveniencia (convenience) http://html.conclase.net/w3c/dom1-es/glossary.html (1 de 5) [16/10/2003 13:46:06] Glosario Un método de conveniencia es un operación sobre un objeto que podría realizar un programa consistente en operaciones más básicas sobre el objeto. Los métodos de conveniencia normalmente se proporcionan para hacer el API más fácil y simple de usar, o para permitir a programas específicos crear implementaciones más optimizadas para operaciones comunes. Análogamente se define una propiedad de conveniencia. CORBA CORBA es la Common Object Request Broker Architecture del OMG. Esta arquitectura es un conjunto de objetos y librerías que permiten la creación de aplicaciones que contienen objetos que realizan y reciben peticiones y respuestas en un entorno distribuido. correspondencia o enlace con el lenguaje (language binding) Una correspondencia con un lenguaje de programación de una especificación IDL es una implementación de las interfaces de la especificación en el lenguaje dado. Por ejemplo, las correspondencias con el lenguaje Java de la especificación IDL del Modelo de Objetos del Documento implementaría las clases Java reales que proporcionarían la funcionalidad expuesta por las interfaces. cursor (cursor) Un cursor es la representación de un nodo mediante un objeto. Puede poseer información sobre el contexto y la ruta recorrida para alcanzar el nodo. desaprobación (deprecation) Cuando se publican nuevas versiones de las especificaciones, algunas características antiguas pueden declararse desaprobadas. Esto significa que los nuevos trabajos no deberían usar estas características y que, si bien siguen estando soportadas en la nueva versión, pueden no estar soportadas o disponibles en versiones futuras. descendiente (descendant) Un nodo descendiente de cualquier nodo A es cualquier otro nodo por debajo del A en el modelo de árbol del documento, donde "por debajo" significa "más alejado de la raíz". documento bien formado (well-formed document) Un documento está bien formado si es válido a nivel de etiquetas y las entidades están limitadas a elementos simples (es decir, un solo sub-árbol). documento válido a nivel de etiquetas (tag valid document) Un documento es válido a nivel de etiquetas si todas las etiquetas iniciales y finales están correctamente equilibradas y anidadas. documento válido a nivel de tipo (type valid document) Un documento es válido a nivel de tipo si es conforme con un DTD explícito. ECMAScript El lenguaje de programación definido por el estándar ECMA-262. Como se puede leer en el estándar, la tecnología que dio origen a ECMAScript fue JavaScript. Obsérvese que en las correspondencias con ECMAScript, la palabra "propiedad" ("property") se usa con el mismo significado que tiene el término IDL "atributo". elemento (element) Todo documento contiene uno o más elementos, cuyos límites están o bien limitados por etiquetas iniciales y etiquetas finales, o bien, en el caso de documentos vacíos, por una etiqueta de elemento vacío. Cada elemento tiene un tipo, identificado por un nombre, y puede tener un conjunto de atributos. Cada atributo tiene un nombre y un valor. [XML] equivalencia (equivalence) Dos nodos son equivalentes si tienen el mismo tipo de nodo y el mismo nombre de nodo. http://html.conclase.net/w3c/dom1-es/glossary.html (2 de 5) [16/10/2003 13:46:06] Glosario Además, si los nodos contienen datos, éstos deben ser los mismos. Por último, si los nodos tienen atributos, el conjunto de nombres de atributos debe ser el mismo y los atributos de nombres correspondientes deben ser equivalentes en tanto que nodos. Dos nodos son equivalentes en profundidad (deeply equivalent) si son equivalentes, las listas de nodos hijo son equivalentes en tanto que objetos NodeList, y las parejas de atributos equivalentes deben ser además equivalentes en profundidad. Dos objetos NodeList son equivalentes si tienen la misma longitud, y los nodos de índices correspondientes son equivalentes en profundidad. Dos objetos NamedNodeMap son equivalentes si tienen la misma longitud, tienen el mismo conjunto de nombres, y los nodos de nombres correspondientes en los mapas son equivalentes en profundidad. Dos nodos DocumentType son equivalentes si son equivalentes en tanto que nodos, tienen los mismos nombres, y tienen entidades y objetos NamedNodeMap equivalentes. herencia (inheritance) En programación orientada a objetos, la capacidad de crear nuevas clases (o interfaces) que contienen todos los métodos y propiedades de otra clase (o interfaz), más métodos y propiedades adicionales. Si una clase (o interfaz) D hereda de una clase (o interfaz) B, entonces se dice que D está derivada de B. Se dice que B es la clase (o interfaz) base de D. Algunos lenguajes de programación permiten herencia múltiple, es decir, herencia desde más de una clase o interfaz. hermano (sibling) Dos nodos son hermanos si tienen el mismo nodo padre. hijo (child) Un hijo es un nodo descendiente inmediato de un nodo. HTML El Lenguaje para el Formato de Documentos de Hipertexto (HyperText Markup Language) es un lenguaje simple de formato de documentos usado para crear documentos de hipertexto portables de una plataforma a otra. Los documentos HTML son documentos SGML con una semántica genérica que es apropiada para representar información de un amplio rango de aplicaciones. [HTML 3.2] [HTML4.0] IDL Un Lenguaje de Definición de Interfaces ("Interface Definition Language") se usa para definir las interfaces para acceder y operar sobre objetos. Ejemplos de IDLs son el IDL del Object Management Group, el IDL de Microsoft y el IDL Java de Sun. implementación anfitrión (hosting implementation) Una implementación [anfitrión] es un módulo software que proporciona una implementación de las interfaces del DOM de modo que una aplicación cliente pueda usarlas. Algunos ejemplos de implementaciones anfitrión son los navegadores, los editores y los archivos de documentos. implementador (implementor) Las compañías, organizaciones e individuos que dicen soportar el Modelo de Objetos del Documento como API de sus productos. interfaz (interface) Una interfaz es una declaración de un conjunto de métodos sin información sobre su implementación. En los sistemas de objetos que soportan interfaces y herencia, las interfaces normalmente puede derivar unas de otras. método (method) Un método es una operación o función que está asociada a un objeto y que tiene permiso para http://html.conclase.net/w3c/dom1-es/glossary.html (3 de 5) [16/10/2003 13:46:06] Glosario manipular los datos del objeto. modelo (model) Un modelo es la representación real de los datos obtenidos a partir de la información disponible. Ejemplos son el modelo de estructura y el modelo de estilo que representan la estructura analítica y la información de estilo asociada a un documento. El modelo podría ser un árbol, o un grafo orientado, o cualquier otra cosa. modelo de contenido (content model) El modelo de contenido es un gramática simple que gobierna los tipos permitidos de elementos hijos y el orden en que pueden aparecer. Véase [XML]. modelo de datos (data model) Un modelo de datos es un conjunto de descripciones de estructuras de datos y los campos que contienen, junto con las operaciones o funciones que las manipulan. modelo de objetos (object model) Un modelo de objetos es un conjunto de descripciones de clases o interfaces, junto con sus miembros de datos, funciones miembro, y operaciones estáticas de la clase. modelo inicial de estructura (initial structure model) También conocido como el modelo de estructura sin procesar, representa el documento antes de que haya sido modificado por expansión de entidades, texto generado, reordenación provocada por especificaciones de estilo, o ejecución de scripts. En algunas implementaciones, esto podría corresponder al árbol sintáctico inicial del documento (initial parse tree), si es que existe. Obsérvese que una implementación dada podría no ser capaz de proporcionar acceso al modelo inicial de estructura de un documento, aunque un editor probablemente sí podría. modelo procesado (cooked model) Un modelo de un documento que representa el documento una vez que ha sido manipulado de algún modo. Por ejemplo, cualquier combinación de las transformaciones siguientes crearía un modelo procesado: 1. Expansión de las entidades de texto internas. 2. Expansión de las entidades externas. 3. Acrecentamiento del modelo con texto generado por las especificaciones de estilo. 4. Ejecución de una reordenación provocada por las especificaciones de estilo. 5. Ejecución de scripts. Un navegador sólo podría proporcionar acceso a un modelo procesado, mientras que un editor podría proporcionar acceso a un modelo procesado o al modelo inicial de estructura de un documento (también conocido como modelo sin procesar, uncooked model). modelo sin procesar (uncooked model) Ver modelo inicial de estuctura. nodo raíz (root node) El nodo raíz es el único nodo que no es hijo de ningún otro nodo. Todos los demás nodos son hijos o descendientes de otro grado del nodo raíz. [XML] padre (parent) Un padre es un nodo ascendiente inmediato de otro nodo. propagación de eventos (event propagation, event bubbling) Esta es la idea de que un evento puede afectar a un objeto y a un conjunto de objetos relacionados. Cualquiera de los objetos potencialmente afectados pueden bloquear el evento o sustituirlo por uno diferente (propagación de eventos hacia arriba, upward event propagation). El evento se transmite desde el nodo en que se origina hacia todos los nodos padre. http://html.conclase.net/w3c/dom1-es/glossary.html (4 de 5) [16/10/2003 13:46:06] Glosario XML El Lenguaje Extensible para el Formato de Documentos (Extensible Markup Language) es un dialecto extremadamente simple de SGML. Su objetivo es hacer posible servir, recibir y procesar SGML genérico en la Web en el modo en que hoy es posible con el HTML. El XML se ha diseñado para ser fácil de implementar y para su interoperatividad con SGML y HTML. [XML] http://html.conclase.net/w3c/dom1-es/glossary.html (5 de 5) [16/10/2003 13:46:06] Definiciones IDL REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Apéndice C: Definiciones IDL Este apéndice contiene todas las definiciones IDL OMG para el Nivel 1 del Modelo de Objetos del Documento. Las definiciones se dividen en Núcleo y HTML. Los ficheros IDL también están disponibles en: http://www.w3.org/DOM/updates/REC-DOM-Level-1-idl-19990107.zip C.1: Modelo de Objetos del Documento, Núcleo del Nivel 1 Esta sección contiene las definiciones IDL OMG de las interfaces de la especificación del Núcleo del Modelo de Objetos del Documento, incluyendo las interfaces extendidas (XML). /* * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of * Technology, Institut National de Recherche en Informatique et en * Automatique, Keio University). * All Rights Reserved. http://www.w3.org/Consortium/Legal/ */ // File: dom.idl #ifndef _DOM_IDL_ #define _DOM_IDL_ #pragma prefix "w3c.org" module dom { typedef sequence<unsigned short> DOMString; interface NodeList; interface NamedNodeMap; interface Document; exception DOMException { unsigned short code; }; // ExceptionCode const unsigned short INDEX_SIZE_ERR = 1; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (1 de 14) [16/10/2003 13:46:26] Definiciones IDL const const const const const const const const const unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned unsigned short short short short short short short short short DOMSTRING_SIZE_ERR = 2; HIERARCHY_REQUEST_ERR = 3; WRONG_DOCUMENT_ERR = 4; INVALID_CHARACTER_ERR = 5; NO_DATA_ALLOWED_ERR = 6; NO_MODIFICATION_ALLOWED_ERR = 7; NOT_FOUND_ERR = 8; NOT_SUPPORTED_ERR = 9; INUSE_ATTRIBUTE_ERR = 10; interface DOMImplementation { boolean hasFeature(in DOMString feature, in DOMString version); }; interface Node { // NodeType const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned const unsigned short short short short short short short short short short short short readonly attribute attribute readonly readonly readonly readonly readonly readonly readonly readonly readonly Node Node Node Node boolean Node attribute attribute attribute attribute attribute attribute attribute attribute attribute ELEMENT_NODE = 1; ATTRIBUTE_NODE = 2; TEXT_NODE = 3; CDATA_SECTION_NODE = 4; ENTITY_REFERENCE_NODE = 5; ENTITY_NODE = 6; PROCESSING_INSTRUCTION_NODE = 7; COMMENT_NODE = 8; DOCUMENT_NODE = 9; DOCUMENT_TYPE_NODE = 10; DOCUMENT_FRAGMENT_NODE = 11; NOTATION_NODE = 12; DOMString DOMString nodeName; nodeValue; // raises(DOMException) on setting // raises(DOMException) on retrieval unsigned short nodeType; Node parentNode; NodeList childNodes; Node firstChild; Node lastChild; Node previousSibling; Node nextSibling; NamedNodeMap attributes; Document ownerDocument; insertBefore(in Node newChild, in Node refChild) raises(DOMException); replaceChild(in Node newChild, in Node oldChild) raises(DOMException); removeChild(in Node oldChild) raises(DOMException); appendChild(in Node newChild) raises(DOMException); hasChildNodes(); cloneNode(in boolean deep); http://html.conclase.net/w3c/dom1-es/idl-definitions.html (2 de 14) [16/10/2003 13:46:26] Definiciones IDL }; interface NodeList { Node readonly attribute }; item(in unsigned long index); unsigned long length; interface NamedNodeMap { Node Node Node Node readonly attribute getNamedItem(in DOMString name); setNamedItem(in Node arg) raises(DOMException); removeNamedItem(in DOMString name) raises(DOMException); item(in unsigned long index); unsigned long length; }; interface CharacterData : Node { attribute DOMString readonly attribute DOMString void void void void data; // raises(DOMException) on setting // raises(DOMException) on retrieval unsigned long length; substringData(in unsigned long offset, in unsigned long count) raises(DOMException); appendData(in DOMString arg) raises(DOMException); insertData(in unsigned long offset, in DOMString arg) raises(DOMException); deleteData(in unsigned long offset, in unsigned long count) raises(DOMException); replaceData(in unsigned long offset, in unsigned long count, in DOMString arg) raises(DOMException); }; interface Attr : Node readonly attribute readonly attribute attribute }; { DOMString boolean DOMString name; specified; value; interface Element : Node { readonly attribute DOMString tagName; DOMString getAttribute(in DOMString name); void setAttribute(in DOMString name, in DOMString value) raises(DOMException); void removeAttribute(in DOMString name) raises(DOMException); Attr getAttributeNode(in DOMString name); Attr setAttributeNode(in Attr newAttr) raises(DOMException); http://html.conclase.net/w3c/dom1-es/idl-definitions.html (3 de 14) [16/10/2003 13:46:26] Definiciones IDL Attr NodeList void removeAttributeNode(in Attr oldAttr) raises(DOMException); getElementsByTagName(in DOMString name); normalize(); }; interface Text : CharacterData { Text splitText(in unsigned long offset) raises(DOMException); }; interface Comment : CharacterData { }; interface CDATASection : Text { }; interface DocumentType : Node { readonly attribute DOMString readonly attribute NamedNodeMap readonly attribute NamedNodeMap }; name; entities; notations; interface Notation : Node { readonly attribute DOMString readonly attribute DOMString }; publicId; systemId; interface Entity : Node { readonly attribute DOMString readonly attribute DOMString readonly attribute DOMString }; publicId; systemId; notationName; interface EntityReference : Node { }; interface ProcessingInstruction : Node { readonly attribute DOMString target; attribute DOMString data; // raises(DOMException) on setting }; interface DocumentFragment : Node { }; interface Document : Node { readonly attribute DocumentType doctype; readonly attribute DOMImplementation implementation; readonly attribute Element documentElement; Element createElement(in DOMString tagName) raises(DOMException); DocumentFragment createDocumentFragment(); Text createTextNode(in DOMString data); Comment createComment(in DOMString data); CDATASection createCDATASection(in DOMString data) raises(DOMException); http://html.conclase.net/w3c/dom1-es/idl-definitions.html (4 de 14) [16/10/2003 13:46:26] Definiciones IDL ProcessingInstruction Attr EntityReference NodeList createProcessingInstruction(in DOMString target, in DOMString data) raises(DOMException); createAttribute(in DOMString name) raises(DOMException); createEntityReference(in DOMString name) raises(DOMException); getElementsByTagName(in DOMString tagname); }; }; #endif // _DOM_IDL_ C.2: Modelo de Objetos del Documento, Nivel 1 HTML /* * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of * Technology, Institut National de Recherche en Informatique et en * Automatique, Keio University). * All Rights Reserved. http://www.w3.org/Consortium/Legal/ */ // File: html.idl #ifndef _HTML_IDL_ #define _HTML_IDL_ #include "dom.idl" #pragma prefix "dom.w3c.org" module html { typedef dom::DOMString DOMString; typedef dom::Node Node; typedef dom::Document Document; typedef dom::Element Element; typedef dom::NodeList NodeList; interface interface interface interface HTMLElement; HTMLFormElement; HTMLTableCaptionElement; HTMLTableSectionElement; interface HTMLCollection { readonly attribute unsigned long length; Node item(in unsigned long index); Node namedItem(in DOMString name); }; interface HTMLDocument : Document { attribute DOMString title; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (5 de 14) [16/10/2003 13:46:26] Definiciones IDL readonly attribute readonly attribute readonly attribute attribute readonly attribute readonly attribute readonly attribute readonly attribute readonly attribute attribute void void void void Element NodeList DOMString referrer; DOMString domain; DOMString URL; HTMLElement body; HTMLCollection images; HTMLCollection applets; HTMLCollection links; HTMLCollection forms; HTMLCollection anchors; DOMString cookie; open(); close(); write(in DOMString text); writeln(in DOMString text); getElementById(in DOMString elementId); getElementsByName(in DOMString elementName); }; interface HTMLElement attribute attribute attribute attribute attribute }; : Element { DOMString DOMString DOMString DOMString DOMString id; title; lang; dir; className; interface HTMLHtmlElement : HTMLElement { attribute DOMString }; version; interface HTMLHeadElement : HTMLElement { attribute DOMString }; profile; interface HTMLLinkElement : HTMLElement { attribute boolean attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString }; disabled; charset; href; hreflang; media; rel; rev; target; type; interface HTMLTitleElement : HTMLElement { attribute DOMString text; }; interface HTMLMetaElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString attribute DOMString }; content; httpEquiv; name; scheme; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (6 de 14) [16/10/2003 13:46:26] Definiciones IDL interface HTMLBaseElement : HTMLElement { attribute DOMString attribute DOMString }; href; target; interface HTMLIsIndexElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString prompt; }; interface HTMLStyleElement : HTMLElement { attribute boolean disabled; attribute DOMString media; attribute DOMString type; }; interface HTMLBodyElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString }; interface HTMLFormElement : HTMLElement { readonly attribute HTMLCollection readonly attribute long attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute DOMString void submit(); void reset(); }; aLink; background; bgColor; link; text; vLink; elements; length; name; acceptCharset; action; enctype; method; target; interface HTMLSelectElement : HTMLElement { readonly attribute DOMString type; attribute long selectedIndex; attribute DOMString value; readonly attribute long length; readonly attribute HTMLFormElement form; readonly attribute HTMLCollection options; attribute boolean disabled; attribute boolean multiple; attribute DOMString name; attribute long size; attribute long tabIndex; void add(in HTMLElement element, in HTMLElement before); void remove(in long index); void blur(); void focus(); http://html.conclase.net/w3c/dom1-es/idl-definitions.html (7 de 14) [16/10/2003 13:46:26] Definiciones IDL }; interface HTMLOptGroupElement : HTMLElement { attribute boolean disabled; attribute DOMString label; }; interface HTMLOptionElement : HTMLElement { readonly attribute HTMLFormElement form; attribute boolean defaultSelected; readonly attribute DOMString text; attribute long index; attribute boolean disabled; attribute DOMString label; readonly attribute boolean selected; attribute DOMString value; }; interface HTMLInputElement : HTMLElement { attribute DOMString defaultValue; attribute boolean defaultChecked; readonly attribute HTMLFormElement form; attribute DOMString accept; attribute DOMString accessKey; attribute DOMString align; attribute DOMString alt; attribute boolean checked; attribute boolean disabled; attribute long maxLength; attribute DOMString name; attribute boolean readOnly; attribute DOMString size; attribute DOMString src; attribute long tabIndex; readonly attribute DOMString type; attribute DOMString useMap; attribute DOMString value; void blur(); void focus(); void select(); void click(); }; interface HTMLTextAreaElement : HTMLElement { attribute DOMString defaultValue; readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute long cols; attribute boolean disabled; attribute DOMString name; attribute boolean readOnly; attribute long rows; attribute long tabIndex; readonly attribute DOMString type; attribute DOMString value; void blur(); http://html.conclase.net/w3c/dom1-es/idl-definitions.html (8 de 14) [16/10/2003 13:46:26] Definiciones IDL void void focus(); select(); }; interface HTMLButtonElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute boolean disabled; attribute DOMString name; attribute long tabIndex; readonly attribute DOMString type; attribute DOMString value; }; interface HTMLLabelElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute DOMString htmlFor; }; interface HTMLFieldSetElement : HTMLElement { readonly attribute HTMLFormElement form; }; interface HTMLLegendElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString accessKey; attribute DOMString align; }; interface HTMLUListElement : HTMLElement { attribute boolean compact; attribute DOMString type; }; interface HTMLOListElement : HTMLElement { attribute boolean compact; attribute long start; attribute DOMString type; }; interface HTMLDListElement : HTMLElement { attribute boolean compact; }; interface HTMLDirectoryElement : HTMLElement { attribute boolean compact; }; interface HTMLMenuElement : HTMLElement { attribute boolean }; compact; interface HTMLLIElement : HTMLElement { attribute DOMString attribute long }; type; value; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (9 de 14) [16/10/2003 13:46:26] Definiciones IDL interface HTMLBlockquoteElement : HTMLElement { attribute DOMString cite; }; interface HTMLDivElement : HTMLElement { attribute DOMString }; align; interface HTMLParagraphElement : HTMLElement { attribute DOMString align; }; interface HTMLHeadingElement : HTMLElement { attribute DOMString align; }; interface HTMLQuoteElement : HTMLElement { attribute DOMString cite; }; interface HTMLPreElement : HTMLElement { attribute long }; width; interface HTMLBRElement : HTMLElement { attribute DOMString }; clear; interface HTMLBaseFontElement : HTMLElement { attribute DOMString color; attribute DOMString face; attribute DOMString size; }; interface HTMLFontElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString }; color; face; size; interface HTMLHRElement : HTMLElement { attribute DOMString attribute boolean attribute DOMString attribute DOMString }; align; noShade; size; width; interface HTMLModElement : HTMLElement { attribute DOMString attribute DOMString }; cite; dateTime; interface HTMLAnchorElement : HTMLElement { attribute DOMString accessKey; attribute DOMString charset; attribute DOMString coords; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (10 de 14) [16/10/2003 13:46:26] Definiciones IDL attribute attribute attribute attribute attribute attribute attribute attribute attribute void void DOMString DOMString DOMString DOMString DOMString DOMString long DOMString DOMString blur(); focus(); href; hreflang; name; rel; rev; shape; tabIndex; target; type; }; interface HTMLImageElement : HTMLElement { attribute DOMString lowSrc; attribute DOMString name; attribute DOMString align; attribute DOMString alt; attribute DOMString border; attribute DOMString height; attribute DOMString hspace; attribute boolean isMap; attribute DOMString longDesc; attribute DOMString src; attribute DOMString useMap; attribute DOMString vspace; attribute DOMString width; }; interface HTMLObjectElement : HTMLElement { readonly attribute HTMLFormElement form; attribute DOMString code; attribute DOMString align; attribute DOMString archive; attribute DOMString border; attribute DOMString codeBase; attribute DOMString codeType; attribute DOMString data; attribute boolean declare; attribute DOMString height; attribute DOMString hspace; attribute DOMString name; attribute DOMString standby; attribute long tabIndex; attribute DOMString type; attribute DOMString useMap; attribute DOMString vspace; attribute DOMString width; }; interface HTMLParamElement : HTMLElement { attribute DOMString name; attribute DOMString type; attribute DOMString value; attribute DOMString valueType; }; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (11 de 14) [16/10/2003 13:46:26] Definiciones IDL interface HTMLAppletElement : HTMLElement { attribute DOMString align; attribute DOMString alt; attribute DOMString archive; attribute DOMString code; attribute DOMString codeBase; attribute DOMString height; attribute DOMString hspace; attribute DOMString name; attribute DOMString object; attribute DOMString vspace; attribute DOMString width; }; interface HTMLMapElement : HTMLElement { readonly attribute HTMLCollection attribute DOMString }; areas; name; interface HTMLAreaElement : HTMLElement { attribute DOMString attribute DOMString attribute DOMString attribute DOMString attribute boolean attribute DOMString attribute long attribute DOMString }; accessKey; alt; coords; href; noHref; shape; tabIndex; target; interface HTMLScriptElement : HTMLElement { attribute DOMString text; attribute DOMString htmlFor; attribute DOMString event; attribute DOMString charset; attribute boolean defer; attribute DOMString src; attribute DOMString type; }; interface HTMLTableElement : HTMLElement { attribute HTMLTableCaptionElement caption; attribute HTMLTableSectionElement tHead; attribute HTMLTableSectionElement tFoot; readonly attribute HTMLCollection rows; readonly attribute HTMLCollection tBodies; attribute DOMString align; attribute DOMString bgColor; attribute DOMString border; attribute DOMString cellPadding; attribute DOMString cellSpacing; attribute DOMString frame; attribute DOMString rules; attribute DOMString summary; attribute DOMString width; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (12 de 14) [16/10/2003 13:46:26] Definiciones IDL HTMLElement void HTMLElement void HTMLElement void HTMLElement void createTHead(); deleteTHead(); createTFoot(); deleteTFoot(); createCaption(); deleteCaption(); insertRow(in long index); deleteRow(in long index); }; interface HTMLTableCaptionElement : HTMLElement { attribute DOMString align; }; interface HTMLTableColElement : HTMLElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute long span; attribute DOMString vAlign; attribute DOMString width; }; interface HTMLTableSectionElement : HTMLElement { attribute DOMString align; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; readonly attribute HTMLCollection rows; HTMLElement insertRow(in long index); void deleteRow(in long index); }; interface HTMLTableRowElement : HTMLElement { attribute long rowIndex; attribute long sectionRowIndex; attribute HTMLCollection cells; attribute DOMString align; attribute DOMString bgColor; attribute DOMString ch; attribute DOMString chOff; attribute DOMString vAlign; HTMLElement insertCell(in long index); void deleteCell(in long index); }; interface HTMLTableCellElement : HTMLElement { attribute long cellIndex; attribute DOMString abbr; attribute DOMString align; attribute DOMString axis; attribute DOMString bgColor; attribute DOMString ch; attribute DOMString chOff; attribute long colSpan; attribute DOMString headers; http://html.conclase.net/w3c/dom1-es/idl-definitions.html (13 de 14) [16/10/2003 13:46:26] Definiciones IDL attribute attribute attribute attribute attribute attribute DOMString boolean long DOMString DOMString DOMString height; noWrap; rowSpan; scope; vAlign; width; }; interface HTMLFrameSetElement : HTMLElement { attribute DOMString cols; attribute DOMString rows; }; interface HTMLFrameElement : HTMLElement { attribute DOMString frameBorder; attribute DOMString longDesc; attribute DOMString marginHeight; attribute DOMString marginWidth; attribute DOMString name; attribute boolean noResize; attribute DOMString scrolling; attribute DOMString src; }; interface HTMLIFrameElement : HTMLElement { attribute DOMString align; attribute DOMString frameBorder; attribute DOMString height; attribute DOMString longDesc; attribute DOMString marginHeight; attribute DOMString marginWidth; attribute DOMString name; attribute DOMString scrolling; attribute DOMString src; attribute DOMString width; }; }; #endif // _HTML_IDL_ http://html.conclase.net/w3c/dom1-es/idl-definitions.html (14 de 14) [16/10/2003 13:46:26] Correspondencia con el Lenguaje Java REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Apéndice D: Correspondencia con el Lenguaje Java Este apéndice contiene la correspondencia completa para el lenguaje Java del Nivel 1 del Modelo de Objetos del Documento. Las definiciones se dividen en Núcleo y HTML. Los ficheros Java también están disponibles es: http://www.w3.org/DOM/updates/REC-DOM-Level-1-java-binding19990107.zip D.1: Modelo de Objetos del Documento, Núcleo del Nivel 1 /* * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of * Technology, Institut National de Recherche en Informatique et en * Automatique, Keio University). * All Rights Reserved. http://www.w3.org/Consortium/Legal/ */ public abstract class DOMException extends RuntimeException { public DOMException(short code, String message) { super(message); this.code = code; } public short code; // ExceptionCode public static final short INDEX_SIZE_ERR = 1; public static final short DOMSTRING_SIZE_ERR = 2; public static final short HIERARCHY_REQUEST_ERR = 3; public static final short WRONG_DOCUMENT_ERR = 4; public static final short INVALID_CHARACTER_ERR = 5; public static final short NO_DATA_ALLOWED_ERR = 6; public static final short NO_MODIFICATION_ALLOWED_ERR = 7; public static final short NOT_FOUND_ERR = 8; public static final short NOT_SUPPORTED_ERR = 9; public static final short INUSE_ATTRIBUTE_ERR = 10; http://html.conclase.net/w3c/dom1-es/java-language-binding.html (1 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java } // ExceptionCode public static final public static final public static final public static final public static final public static final public static final public static final public static final public static final short short short short short short short short short short INDEX_SIZE_ERR = 1; DOMSTRING_SIZE_ERR = 2; HIERARCHY_REQUEST_ERR = 3; WRONG_DOCUMENT_ERR = 4; INVALID_CHARACTER_ERR = 5; NO_DATA_ALLOWED_ERR = 6; NO_MODIFICATION_ALLOWED_ERR = 7; NOT_FOUND_ERR = 8; NOT_SUPPORTED_ERR = 9; INUSE_ATTRIBUTE_ERR = 10; } public interface DOMImplementation { public boolean hasFeature(String feature, String version); } public interface DocumentFragment extends Node { } public interface Document extends Node { public DocumentType getDoctype(); public DOMImplementation getImplementation(); public Element getDocumentElement(); public Element createElement(String tagName) throws DOMException; public DocumentFragment createDocumentFragment(); public Text createTextNode(String data); public Comment createComment(String data); public CDATASection createCDATASection(String data) throws DOMException; public ProcessingInstruction createProcessingInstruction(String target, String data) throws DOMException; public Attr createAttribute(String name) throws DOMException; public EntityReference createEntityReference(String name) throws DOMException; public NodeList getElementsByTagName(String tagname); } public interface Node // NodeType public static final public static final public static final public static final public static final public static final public static final public static final public static final { short short short short short short short short short ELEMENT_NODE = 1; ATTRIBUTE_NODE = 2; TEXT_NODE = 3; CDATA_SECTION_NODE = 4; ENTITY_REFERENCE_NODE = 5; ENTITY_NODE = 6; PROCESSING_INSTRUCTION_NODE = 7; COMMENT_NODE = 8; DOCUMENT_NODE = 9; http://html.conclase.net/w3c/dom1-es/java-language-binding.html (2 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public static final short public static final short public static final short public String public String public void public public public public public public public public public public short Node NodeList Node Node Node Node NamedNodeMap Document Node public Node public Node public Node public boolean public Node DOCUMENT_TYPE_NODE = 10; DOCUMENT_FRAGMENT_NODE = 11; NOTATION_NODE = 12; getNodeName(); getNodeValue() throws DOMException; setNodeValue(String nodeValue) throws DOMException; getNodeType(); getParentNode(); getChildNodes(); getFirstChild(); getLastChild(); getPreviousSibling(); getNextSibling(); getAttributes(); getOwnerDocument(); insertBefore(Node newChild, Node refChild) throws DOMException; replaceChild(Node newChild, Node oldChild) throws DOMException; removeChild(Node oldChild) throws DOMException; appendChild(Node newChild) throws DOMException; hasChildNodes(); cloneNode(boolean deep); } public interface NodeList { public Node item(int index); public int getLength(); } public interface NamedNodeMap { public Node getNamedItem(String name); public Node setNamedItem(Node arg) throws DOMException; public Node removeNamedItem(String name) throws DOMException; public Node item(int index); public int getLength(); } public interface CharacterData extends Node { public String getData() throws DOMException; public void setData(String data) throws DOMException; public int getLength(); public String substringData(int offset, int count) throws DOMException; http://html.conclase.net/w3c/dom1-es/java-language-binding.html (3 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public void public void public void public void appendData(String arg) throws DOMException; insertData(int offset, String arg) throws DOMException; deleteData(int offset, int count) throws DOMException; replaceData(int offset, int count, String arg) throws DOMException; } public interface Attr extends Node { public String getName(); public boolean getSpecified(); public String getValue(); public void setValue(String value); } public interface Element extends Node { public String getTagName(); public String getAttribute(String name); public void setAttribute(String name, String value) throws DOMException; public void removeAttribute(String name) throws DOMException; public Attr getAttributeNode(String name); public Attr setAttributeNode(Attr newAttr) throws DOMException; public Attr removeAttributeNode(Attr oldAttr) throws DOMException; public NodeList getElementsByTagName(String name); public void normalize(); } public interface Text extends CharacterData { public Text splitText(int offset) throws DOMException; } public interface Comment extends CharacterData { } public interface CDATASection extends Text { } public interface DocumentType extends Node { public String getName(); public NamedNodeMap getEntities(); public NamedNodeMap getNotations(); } public interface Notation extends Node { http://html.conclase.net/w3c/dom1-es/java-language-binding.html (4 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public String public String getPublicId(); getSystemId(); } public interface Entity extends Node { public String getPublicId(); public String getSystemId(); public String getNotationName(); } public interface EntityReference extends Node { } public interface ProcessingInstruction extends Node { public String getTarget(); public String getData(); public void setData(String data) throws DOMException; } D.2: Modelo de Objetos del Documento, Nivel 1 HTML /* * Copyright (c) 1998 World Wide Web Consortium, (Massachusetts Institute of * Technology, Institut National de Recherche en Informatique et en * Automatique, Keio University). * All Rights Reserved. http://www.w3.org/Consortium/Legal/ */ public interface HTMLCollection { public int getLength(); public Node item(int index); public Node namedItem(String name); } public interface HTMLDocument extends Document { public String getTitle(); public void setTitle(String title); public String getReferrer(); public String getDomain(); public String getURL(); public HTMLElement getBody(); public void setBody(HTMLElement body); public HTMLCollection getImages(); public HTMLCollection getApplets(); public HTMLCollection getLinks(); public HTMLCollection getForms(); public HTMLCollection getAnchors(); public String getCookie(); public void setCookie(String cookie); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (5 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public void void void void Element NodeList open(); close(); write(String text); writeln(String text); getElementById(String elementId); getElementsByName(String elementName); } public interface HTMLElement extends Element { public String getId(); public void setId(String id); public String getTitle(); public void setTitle(String title); public String getLang(); public void setLang(String lang); public String getDir(); public void setDir(String dir); public String getClassName(); public void setClassName(String className); } public interface HTMLHtmlElement extends HTMLElement { public String getVersion(); public void setVersion(String version); } public interface HTMLHeadElement extends HTMLElement { public String getProfile(); public void setProfile(String profile); } public interface HTMLLinkElement extends HTMLElement { public boolean getDisabled(); public void setDisabled(boolean disabled); public String getCharset(); public void setCharset(String charset); public String getHref(); public void setHref(String href); public String getHreflang(); public void setHreflang(String hreflang); public String getMedia(); public void setMedia(String media); public String getRel(); public void setRel(String rel); public String getRev(); public void setRev(String rev); public String getTarget(); public void setTarget(String target); public String getType(); public void setType(String type); } public interface HTMLTitleElement extends HTMLElement { public String getText(); public void setText(String text); } http://html.conclase.net/w3c/dom1-es/java-language-binding.html (6 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public interface HTMLMetaElement extends HTMLElement { public String getContent(); public void setContent(String content); public String getHttpEquiv(); public void setHttpEquiv(String httpEquiv); public String getName(); public void setName(String name); public String getScheme(); public void setScheme(String scheme); } public interface HTMLBaseElement extends HTMLElement { public String getHref(); public void setHref(String href); public String getTarget(); public void setTarget(String target); } public interface HTMLIsIndexElement extends HTMLElement { public HTMLFormElement getForm(); public String getPrompt(); public void setPrompt(String prompt); } public interface HTMLStyleElement extends HTMLElement { public boolean getDisabled(); public void setDisabled(boolean disabled); public String getMedia(); public void setMedia(String media); public String getType(); public void setType(String type); } public interface HTMLBodyElement extends HTMLElement { public String getALink(); public void setALink(String aLink); public String getBackground(); public void setBackground(String background); public String getBgColor(); public void setBgColor(String bgColor); public String getLink(); public void setLink(String link); public String getText(); public void setText(String text); public String getVLink(); public void setVLink(String vLink); } public interface HTMLFormElement extends HTMLElement { public HTMLCollection getElements(); public int getLength(); public String getName(); public void setName(String name); public String getAcceptCharset(); public void setAcceptCharset(String acceptCharset); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (7 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public public public public public String void String void String void String void void void getAction(); setAction(String action); getEnctype(); setEnctype(String enctype); getMethod(); setMethod(String method); getTarget(); setTarget(String target); submit(); reset(); } public interface HTMLSelectElement extends HTMLElement { public String getType(); public int getSelectedIndex(); public void setSelectedIndex(int selectedIndex); public String getValue(); public void setValue(String value); public int getLength(); public HTMLFormElement getForm(); public HTMLCollection getOptions(); public boolean getDisabled(); public void setDisabled(boolean disabled); public boolean getMultiple(); public void setMultiple(boolean multiple); public String getName(); public void setName(String name); public int getSize(); public void setSize(int size); public int getTabIndex(); public void setTabIndex(int tabIndex); public void add(HTMLElement element, HTMLElement before); public void remove(int index); public void blur(); public void focus(); } public interface HTMLOptGroupElement extends HTMLElement { public boolean getDisabled(); public void setDisabled(boolean disabled); public String getLabel(); public void setLabel(String label); } public interface HTMLOptionElement extends HTMLElement { public HTMLFormElement getForm(); public boolean getDefaultSelected(); public void setDefaultSelected(boolean defaultSelected); public String getText(); public int getIndex(); public void setIndex(int index); public boolean getDisabled(); public void setDisabled(boolean disabled); public String getLabel(); public void setLabel(String label); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (8 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public boolean public String public void getSelected(); getValue(); setValue(String value); } public interface HTMLInputElement extends HTMLElement { public String getDefaultValue(); public void setDefaultValue(String defaultValue); public boolean getDefaultChecked(); public void setDefaultChecked(boolean defaultChecked); public HTMLFormElement getForm(); public String getAccept(); public void setAccept(String accept); public String getAccessKey(); public void setAccessKey(String accessKey); public String getAlign(); public void setAlign(String align); public String getAlt(); public void setAlt(String alt); public boolean getChecked(); public void setChecked(boolean checked); public boolean getDisabled(); public void setDisabled(boolean disabled); public int getMaxLength(); public void setMaxLength(int maxLength); public String getName(); public void setName(String name); public boolean getReadOnly(); public void setReadOnly(boolean readOnly); public String getSize(); public void setSize(String size); public String getSrc(); public void setSrc(String src); public int getTabIndex(); public void setTabIndex(int tabIndex); public String getType(); public String getUseMap(); public void setUseMap(String useMap); public String getValue(); public void setValue(String value); public void blur(); public void focus(); public void select(); public void click(); } public interface HTMLTextAreaElement extends HTMLElement { public String getDefaultValue(); public void setDefaultValue(String defaultValue); public HTMLFormElement getForm(); public String getAccessKey(); public void setAccessKey(String accessKey); public int getCols(); public void setCols(int cols); public boolean getDisabled(); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (9 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public public public public public public public public public public void String void boolean void int void int void String String void void void void setDisabled(boolean disabled); getName(); setName(String name); getReadOnly(); setReadOnly(boolean readOnly); getRows(); setRows(int rows); getTabIndex(); setTabIndex(int tabIndex); getType(); getValue(); setValue(String value); blur(); focus(); select(); } public interface HTMLButtonElement extends HTMLElement { public HTMLFormElement getForm(); public String getAccessKey(); public void setAccessKey(String accessKey); public boolean getDisabled(); public void setDisabled(boolean disabled); public String getName(); public void setName(String name); public int getTabIndex(); public void setTabIndex(int tabIndex); public String getType(); public String getValue(); public void setValue(String value); } public interface HTMLLabelElement extends HTMLElement { public HTMLFormElement getForm(); public String getAccessKey(); public void setAccessKey(String accessKey); public String getHtmlFor(); public void setHtmlFor(String htmlFor); } public interface HTMLFieldSetElement extends HTMLElement { public HTMLFormElement getForm(); } public interface HTMLLegendElement extends HTMLElement { public HTMLFormElement getForm(); public String getAccessKey(); public void setAccessKey(String accessKey); public String getAlign(); public void setAlign(String align); } public interface HTMLUListElement extends HTMLElement { public boolean getCompact(); public void setCompact(boolean compact); public String getType(); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (10 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public void setType(String type); } public interface HTMLOListElement extends HTMLElement { public boolean getCompact(); public void setCompact(boolean compact); public int getStart(); public void setStart(int start); public String getType(); public void setType(String type); } public interface HTMLDListElement extends HTMLElement { public boolean getCompact(); public void setCompact(boolean compact); } public interface HTMLDirectoryElement extends HTMLElement { public boolean getCompact(); public void setCompact(boolean compact); } public interface HTMLMenuElement extends HTMLElement { public boolean getCompact(); public void setCompact(boolean compact); } public interface HTMLLIElement extends HTMLElement { public String getType(); public void setType(String type); public int getValue(); public void setValue(int value); } public interface HTMLBlockquoteElement extends HTMLElement { public String getCite(); public void setCite(String cite); } public interface HTMLDivElement extends HTMLElement { public String getAlign(); public void setAlign(String align); } public interface HTMLParagraphElement extends HTMLElement { public String getAlign(); public void setAlign(String align); } public interface HTMLHeadingElement extends HTMLElement { public String getAlign(); public void setAlign(String align); } public interface HTMLQuoteElement extends HTMLElement { public String getCite(); public void setCite(String cite); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (11 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java } public interface HTMLPreElement extends HTMLElement { public int getWidth(); public void setWidth(int width); } public interface HTMLBRElement extends HTMLElement { public String getClear(); public void setClear(String clear); } public interface HTMLBaseFontElement extends HTMLElement { public String getColor(); public void setColor(String color); public String getFace(); public void setFace(String face); public String getSize(); public void setSize(String size); } public interface HTMLFontElement extends HTMLElement { public String getColor(); public void setColor(String color); public String getFace(); public void setFace(String face); public String getSize(); public void setSize(String size); } public interface HTMLHRElement extends HTMLElement { public String getAlign(); public void setAlign(String align); public boolean getNoShade(); public void setNoShade(boolean noShade); public String getSize(); public void setSize(String size); public String getWidth(); public void setWidth(String width); } public interface HTMLModElement extends HTMLElement { public String getCite(); public void setCite(String cite); public String getDateTime(); public void setDateTime(String dateTime); } public interface HTMLAnchorElement extends HTMLElement { public String getAccessKey(); public void setAccessKey(String accessKey); public String getCharset(); public void setCharset(String charset); public String getCoords(); public void setCoords(String coords); public String getHref(); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (12 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public public public public public public public public public public public public public public void String void String void String void String void String void int void String void String void void void setHref(String href); getHreflang(); setHreflang(String hreflang); getName(); setName(String name); getRel(); setRel(String rel); getRev(); setRev(String rev); getShape(); setShape(String shape); getTabIndex(); setTabIndex(int tabIndex); getTarget(); setTarget(String target); getType(); setType(String type); blur(); focus(); } public interface HTMLImageElement extends HTMLElement { public String getLowSrc(); public void setLowSrc(String lowSrc); public String getName(); public void setName(String name); public String getAlign(); public void setAlign(String align); public String getAlt(); public void setAlt(String alt); public String getBorder(); public void setBorder(String border); public String getHeight(); public void setHeight(String height); public String getHspace(); public void setHspace(String hspace); public boolean getIsMap(); public void setIsMap(boolean isMap); public String getLongDesc(); public void setLongDesc(String longDesc); public String getSrc(); public void setSrc(String src); public String getUseMap(); public void setUseMap(String useMap); public String getVspace(); public void setVspace(String vspace); public String getWidth(); public void setWidth(String width); } public interface HTMLObjectElement extends HTMLElement { public HTMLFormElement getForm(); public String getCode(); public void setCode(String code); public String getAlign(); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (13 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public public public public public public public public public public public public public public public public public public public public public public public public public public void String void String void String void String void String void boolean void String void String void String void String void int void String void String void String void String void setAlign(String align); getArchive(); setArchive(String archive); getBorder(); setBorder(String border); getCodeBase(); setCodeBase(String codeBase); getCodeType(); setCodeType(String codeType); getData(); setData(String data); getDeclare(); setDeclare(boolean declare); getHeight(); setHeight(String height); getHspace(); setHspace(String hspace); getName(); setName(String name); getStandby(); setStandby(String standby); getTabIndex(); setTabIndex(int tabIndex); getType(); setType(String type); getUseMap(); setUseMap(String useMap); getVspace(); setVspace(String vspace); getWidth(); setWidth(String width); } public interface HTMLParamElement extends HTMLElement { public String getName(); public void setName(String name); public String getType(); public void setType(String type); public String getValue(); public void setValue(String value); public String getValueType(); public void setValueType(String valueType); } public interface HTMLAppletElement extends HTMLElement { public String getAlign(); public void setAlign(String align); public String getAlt(); public void setAlt(String alt); public String getArchive(); public void setArchive(String archive); public String getCode(); public void setCode(String code); public String getCodeBase(); public void setCodeBase(String codeBase); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (14 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public public public public public public public String void String void String void String void String void String void getHeight(); setHeight(String height); getHspace(); setHspace(String hspace); getName(); setName(String name); getObject(); setObject(String object); getVspace(); setVspace(String vspace); getWidth(); setWidth(String width); } public interface HTMLMapElement extends HTMLElement { public HTMLCollection getAreas(); public String getName(); public void setName(String name); } public interface HTMLAreaElement extends HTMLElement { public String getAccessKey(); public void setAccessKey(String accessKey); public String getAlt(); public void setAlt(String alt); public String getCoords(); public void setCoords(String coords); public String getHref(); public void setHref(String href); public boolean getNoHref(); public void setNoHref(boolean noHref); public String getShape(); public void setShape(String shape); public int getTabIndex(); public void setTabIndex(int tabIndex); public String getTarget(); public void setTarget(String target); } public interface HTMLScriptElement extends HTMLElement { public String getText(); public void setText(String text); public String getHtmlFor(); public void setHtmlFor(String htmlFor); public String getEvent(); public void setEvent(String event); public String getCharset(); public void setCharset(String charset); public boolean getDefer(); public void setDefer(boolean defer); public String getSrc(); public void setSrc(String src); public String getType(); public void setType(String type); } http://html.conclase.net/w3c/dom1-es/java-language-binding.html (15 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public interface HTMLTableElement extends HTMLElement { public HTMLTableCaptionElement getCaption(); public void setCaption(HTMLTableCaptionElement caption); public HTMLTableSectionElement getTHead(); public void setTHead(HTMLTableSectionElement tHead); public HTMLTableSectionElement getTFoot(); public void setTFoot(HTMLTableSectionElement tFoot); public HTMLCollection getRows(); public HTMLCollection getTBodies(); public String getAlign(); public void setAlign(String align); public String getBgColor(); public void setBgColor(String bgColor); public String getBorder(); public void setBorder(String border); public String getCellPadding(); public void setCellPadding(String cellPadding); public String getCellSpacing(); public void setCellSpacing(String cellSpacing); public String getFrame(); public void setFrame(String frame); public String getRules(); public void setRules(String rules); public String getSummary(); public void setSummary(String summary); public String getWidth(); public void setWidth(String width); public HTMLElement createTHead(); public void deleteTHead(); public HTMLElement createTFoot(); public void deleteTFoot(); public HTMLElement createCaption(); public void deleteCaption(); public HTMLElement insertRow(int index); public void deleteRow(int index); } public interface HTMLTableCaptionElement extends HTMLElement { public String getAlign(); public void setAlign(String align); } public interface HTMLTableColElement extends HTMLElement { public String getAlign(); public void setAlign(String align); public String getCh(); public void setCh(String ch); public String getChOff(); public void setChOff(String chOff); public int getSpan(); public void setSpan(int span); public String getVAlign(); public void setVAlign(String vAlign); public String getWidth(); public void setWidth(String width); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (16 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java } public interface HTMLTableSectionElement extends HTMLElement { public String getAlign(); public void setAlign(String align); public String getCh(); public void setCh(String ch); public String getChOff(); public void setChOff(String chOff); public String getVAlign(); public void setVAlign(String vAlign); public HTMLCollection getRows(); public HTMLElement insertRow(int index); public void deleteRow(int index); } public interface HTMLTableRowElement extends HTMLElement { public int getRowIndex(); public void setRowIndex(int rowIndex); public int getSectionRowIndex(); public void setSectionRowIndex(int sectionRowIndex); public HTMLCollection getCells(); public void setCells(HTMLCollection cells); public String getAlign(); public void setAlign(String align); public String getBgColor(); public void setBgColor(String bgColor); public String getCh(); public void setCh(String ch); public String getChOff(); public void setChOff(String chOff); public String getVAlign(); public void setVAlign(String vAlign); public HTMLElement insertCell(int index); public void deleteCell(int index); } public interface HTMLTableCellElement extends HTMLElement { public int getCellIndex(); public void setCellIndex(int cellIndex); public String getAbbr(); public void setAbbr(String abbr); public String getAlign(); public void setAlign(String align); public String getAxis(); public void setAxis(String axis); public String getBgColor(); public void setBgColor(String bgColor); public String getCh(); public void setCh(String ch); public String getChOff(); public void setChOff(String chOff); public int getColSpan(); public void setColSpan(int colSpan); public String getHeaders(); public void setHeaders(String headers); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (17 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public public public public public public public String void boolean void int void String void String void String void getHeight(); setHeight(String height); getNoWrap(); setNoWrap(boolean noWrap); getRowSpan(); setRowSpan(int rowSpan); getScope(); setScope(String scope); getVAlign(); setVAlign(String vAlign); getWidth(); setWidth(String width); } public interface HTMLFrameSetElement extends HTMLElement { public String getCols(); public void setCols(String cols); public String getRows(); public void setRows(String rows); } public interface HTMLFrameElement extends HTMLElement { public String getFrameBorder(); public void setFrameBorder(String frameBorder); public String getLongDesc(); public void setLongDesc(String longDesc); public String getMarginHeight(); public void setMarginHeight(String marginHeight); public String getMarginWidth(); public void setMarginWidth(String marginWidth); public String getName(); public void setName(String name); public boolean getNoResize(); public void setNoResize(boolean noResize); public String getScrolling(); public void setScrolling(String scrolling); public String getSrc(); public void setSrc(String src); } public interface HTMLIFrameElement extends HTMLElement { public String getAlign(); public void setAlign(String align); public String getFrameBorder(); public void setFrameBorder(String frameBorder); public String getHeight(); public void setHeight(String height); public String getLongDesc(); public void setLongDesc(String longDesc); public String getMarginHeight(); public void setMarginHeight(String marginHeight); public String getMarginWidth(); public void setMarginWidth(String marginWidth); public String getName(); public void setName(String name); http://html.conclase.net/w3c/dom1-es/java-language-binding.html (18 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje Java public public public public public public String void String void String void getScrolling(); setScrolling(String scrolling); getSrc(); setSrc(String src); getWidth(); setWidth(String width); } http://html.conclase.net/w3c/dom1-es/java-language-binding.html (19 de 19) [16/10/2003 13:46:57] Correspondencia con el Lenguaje ECMA Script REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Apéndice E: Correspondencia con el Lenguaje ECMA Script Este apéndice contiene la correspondencia completa para el lenguaje ECMA Script del Nivel 1 del Modelo de Objetos del Documento. Las definiciones se dividen en Núcleo y HTML. E.1: Modelo de Objetos del Documento, Núcleo del Nivel 1 Objeto DOMException Objeto ExceptionCode Objeto DOMImplementation El objeto DOMImplementation tiene los siguientes métodos: hasFeature(feature, version) Este método devuelve un boolean. El parámetro feature es de tipo DOMString. El parámetro version es de tipo DOMString. Objeto DocumentFragment DocumentFragment tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. Objeto Document Document tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto Document tiene las siguientes propiedades: doctype Esta propiedad es de tipo DocumentType. implementation Esta propiedad es de tipo DOMImplementation. documentElement http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (1 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo Element. El objeto Document tiene los siguientes métodos: createElement(tagName) Este método devuelve un Element. El parámetro tagName es de tipo DOMString. createDocumentFragment() Este método devuelve un DocumentFragment. createTextNode(data) Este método devuelve un Text. El parámetro data es de tipo DOMString. createComment(data) Este método devuelve un Comment. El parámetro data es de tipo DOMString. createCDATASection(data) Este método devuelve un CDATASection. El parámetro data es de tipo DOMString. createProcessingInstruction(target, data) Este método devuelve un ProcessingInstruction. El parámetro target es de tipo DOMString. El parámetro data es de tipo DOMString. createAttribute(name) Este método devuelve un Attr. El parámetro name es de tipo DOMString. createEntityReference(name) Este método devuelve un EntityReference. El parámetro name es de tipo DOMString. getElementsByTagName(tagname) Este método devuelve un NodeList. El parámetro tagname es de tipo DOMString. Objeto Node El objeto Node tiene las siguientes propiedades: nodeName Esta propiedad es de tipo String. nodeValue Esta propiedad es de tipo String. nodeType Esta propiedad es de tipo short. parentNode Esta propiedad es de tipo Node. childNodes Esta propiedad es de tipo NodeList. firstChild Esta propiedad es de tipo Node. lastChild Esta propiedad es de tipo Node. previousSibling Esta propiedad es de tipo Node. nextSibling Esta propiedad es de tipo Node. attributes http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (2 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo NamedNodeMap. ownerDocument Esta propiedad es de tipo Document. El objeto Node tiene los siguientes métodos: insertBefore(newChild, refChild) Este método devuelve un Node. El parámetro newChild es de tipo Node. El parámetro refChild es de tipo Node. replaceChild(newChild, oldChild) Este método devuelve un Node. El parámetro newChild es de tipo Node. El parámetro oldChild es de tipo Node. removeChild(oldChild) Este método devuelve un Node. El parámetro oldChild es de tipo Node. appendChild(newChild) Este método devuelve un Node. El parámetro newChild es de tipo Node. hasChildNodes() Este método devuelve un boolean. cloneNode(deep) Este método devuelve un Node. El parámetro deep es de tipo boolean. Objeto NodeList El objeto NodeList tiene las siguientes propiedades: length Esta propiedad es de tipo int. El objeto NodeList tiene los siguientes métodos: item(index) Este método devuelve un Node. El parámetro index es de tipo unsigned long. Objeto NamedNodeMap El objeto NamedNodeMap tiene las siguientes propiedades: length Esta propiedad es de tipo int. El objeto NamedNodeMap tiene los siguientes métodos: getNamedItem(name) Este método devuelve un Node. El parámetro name es de tipo DOMString. setNamedItem(arg) Este método devuelve un Node. El parámetro arg es de tipo Node. removeNamedItem(name) Este método devuelve un Node. El parámetro name es de tipo DOMString. item(index) Este método devuelve un Node. El parámetro index es de tipo unsigned long. Objeto CharacterData CharacterData tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto CharacterData tiene las siguientes propiedades: data Esta propiedad es de tipo String. length Esta propiedad es de tipo int. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (3 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script El objeto CharacterData tiene los siguientes métodos: substringData(offset, count) Este método devuelve un DOMString. El parámetro offset es de tipo unsigned long. El parámetro count es de tipo unsigned long. appendData(arg) Este método devuelve un void. El parámetro arg es de tipo DOMString. insertData(offset, arg) Este método devuelve un void. El parámetro offset es de tipo unsigned long. El parámetro arg es de tipo DOMString. deleteData(offset, count) Este método devuelve un void. El parámetro offset es de tipo unsigned long. El parámetro count es de tipo unsigned long. replaceData(offset, count, arg) Este método devuelve un void. El parámetro offset es de tipo unsigned long. El parámetro count es de tipo unsigned long. El parámetro arg es de tipo DOMString. Objeto Attr Attr tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto Attr tiene las siguientes propiedades: name Esta propiedad es de tipo String. specified Esta propiedad es de tipo boolean. value Esta propiedad es de tipo String. Objeto Element Element tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto Element tiene las siguientes propiedades: tagName Esta propiedad es de tipo String. El objeto Element tiene los siguientes métodos: getAttribute(name) Este método devuelve un DOMString. El parámetro name es de tipo DOMString. setAttribute(name, value) Este método devuelve un void. El parámetro name es de tipo DOMString. El parámetro value es de tipo DOMString. removeAttribute(name) Este método devuelve un void. El parámetro name es de tipo DOMString. getAttributeNode(name) Este método devuelve un Attr. El parámetro name es de tipo DOMString. setAttributeNode(newAttr) Este método devuelve un Attr. El parámetro newAttr es de tipo Attr. removeAttributeNode(oldAttr) http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (4 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script Este método devuelve un Attr. El parámetro oldAttr es de tipo Attr. getElementsByTagName(name) Este método devuelve un NodeList. El parámetro name es de tipo DOMString. normalize() Este método devuelve un void. Objeto Text Text tiene todas las propiedades y métodos de CharacterData así como las propiedades y métodos definidos más abajo. El objeto Text tiene los siguientes métodos: splitText(offset) Este método devuelve un Text. El parámetro offset es de tipo unsigned long. Objeto Comment Comment tiene todas las propiedades y métodos de CharacterData así como las propiedades y métodos definidos más abajo. Objeto CDATASection CDATASection tiene todas las propiedades y métodos de Text así como las propiedades y métodos definidos más abajo. Objeto DocumentType DocumentType tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto DocumentType tiene las siguientes propiedades: name Esta propiedad es de tipo String. entities Esta propiedad es de tipo NamedNodeMap. notations Esta propiedad es de tipo NamedNodeMap. Objeto Notation Notation tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto Notation tiene las siguientes propiedades: publicId Esta propiedad es de tipo String. systemId Esta propiedad es de tipo String. Objeto Entity Entity tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto Entity tiene las siguientes propiedades: publicId Esta propiedad es de tipo String. systemId Esta propiedad es de tipo String. notationName Esta propiedad es de tipo String. Objeto EntityReference http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (5 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script EntityReference tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. Objeto ProcessingInstruction ProcessingInstruction tiene todas las propiedades y métodos de Node así como las propiedades y métodos definidos más abajo. El objeto ProcessingInstruction tiene las siguientes propiedades: target Esta propiedad es de tipo String. data Esta propiedad es de tipo String. E.2: Modelo de Objetos del Documento, Nivel 1 HTML Objeto HTMLCollection El objeto HTMLCollection tiene las siguientes propiedades: length Esta propiedad es de tipo int. El objeto HTMLCollection tiene los siguientes métodos: item(index) Este método devuelve un Node. El parámetro index es de tipo unsigned long. namedItem(name) Este método devuelve un Node. El parámetro name es de tipo DOMString. Objeto HTMLDocument HTMLDocument tiene todas las propiedades y métodos de Document así como las propiedades y métodos definidos más abajo. El objeto HTMLDocument tiene las siguientes propiedades: title Esta propiedad es de tipo String. referrer Esta propiedad es de tipo String. domain Esta propiedad es de tipo String. URL Esta propiedad es de tipo String. body Esta propiedad es de tipo HTMLElement. images Esta propiedad es de tipo HTMLCollection. applets Esta propiedad es de tipo HTMLCollection. links http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (6 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo HTMLCollection. forms Esta propiedad es de tipo HTMLCollection. anchors Esta propiedad es de tipo HTMLCollection. cookie Esta propiedad es de tipo String. El objeto HTMLDocument tiene los siguientes métodos: open() Este método devuelve un void. close() Este método devuelve un void. write(text) Este método devuelve un void. El parámetro text es de tipo DOMString. writeln(text) Este método devuelve un void. El parámetro text es de tipo DOMString. getElementById(elementId) Este método devuelve un Element. El parámetro elementId es de tipo DOMString. getElementsByName(elementName) Este método devuelve un NodeList. El parámetro elementName es de tipo DOMString. Objeto HTMLElement HTMLElement tiene todas las propiedades y métodos de Element así como las propiedades y métodos definidos más abajo. El objeto HTMLElement tiene las siguientes propiedades: id Esta propiedad es de tipo String. title Esta propiedad es de tipo String. lang Esta propiedad es de tipo String. dir Esta propiedad es de tipo String. className Esta propiedad es de tipo String. Objeto HTMLHtmlElement HTMLHtmlElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLHtmlElement tiene las siguientes propiedades: version Esta propiedad es de tipo String. Objeto HTMLHeadElement HTMLHeadElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLHeadElement tiene las siguientes propiedades: http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (7 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script profile Esta propiedad es de tipo String. Objeto HTMLLinkElement HTMLLinkElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLLinkElement tiene las siguientes propiedades: disabled Esta propiedad es de tipo boolean. charset Esta propiedad es de tipo String. href Esta propiedad es de tipo String. hreflang Esta propiedad es de tipo String. media Esta propiedad es de tipo String. rel Esta propiedad es de tipo String. rev Esta propiedad es de tipo String. target Esta propiedad es de tipo String. type Esta propiedad es de tipo String. Objeto HTMLTitleElement HTMLTitleElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTitleElement tiene las siguientes propiedades: text Esta propiedad es de tipo String. Objeto HTMLMetaElement HTMLMetaElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLMetaElement tiene las siguientes propiedades: content Esta propiedad es de tipo String. httpEquiv Esta propiedad es de tipo String. name Esta propiedad es de tipo String. scheme Esta propiedad es de tipo String. Objeto HTMLBaseElement HTMLBaseElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLBaseElement tiene las siguientes propiedades: http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (8 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script href Esta propiedad es de tipo String. target Esta propiedad es de tipo String. Objeto HTMLIsIndexElement HTMLIsIndexElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLIsIndexElement tiene las siguientes propiedades: form Esta propiedad es de tipo HTMLFormElement. prompt Esta propiedad es de tipo String. Objeto HTMLStyleElement HTMLStyleElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLStyleElement tiene las siguientes propiedades: disabled Esta propiedad es de tipo boolean. media Esta propiedad es de tipo String. type Esta propiedad es de tipo String. Objeto HTMLBodyElement HTMLBodyElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLBodyElement tiene las siguientes propiedades: aLink Esta propiedad es de tipo String. background Esta propiedad es de tipo String. bgColor Esta propiedad es de tipo String. link Esta propiedad es de tipo String. text Esta propiedad es de tipo String. vLink Esta propiedad es de tipo String. Objeto HTMLFormElement HTMLFormElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLFormElement tiene las siguientes propiedades: elements Esta propiedad es de tipo HTMLCollection. length Esta propiedad es de tipo long. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (9 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script name Esta propiedad es de tipo String. acceptCharset Esta propiedad es de tipo String. action Esta propiedad es de tipo String. enctype Esta propiedad es de tipo String. method Esta propiedad es de tipo String. target Esta propiedad es de tipo String. El objeto HTMLFormElement tiene los siguientes métodos: submit() Este método devuelve un void. reset() Este método devuelve un void. Objeto HTMLSelectElement HTMLSelectElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLSelectElement tiene las siguientes propiedades: type Esta propiedad es de tipo String. selectedIndex Esta propiedad es de tipo long. value Esta propiedad es de tipo String. length Esta propiedad es de tipo long. form Esta propiedad es de tipo HTMLFormElement. options Esta propiedad es de tipo HTMLCollection. disabled Esta propiedad es de tipo boolean. multiple Esta propiedad es de tipo boolean. name Esta propiedad es de tipo String. size Esta propiedad es de tipo long. tabIndex Esta propiedad es de tipo long. El objeto HTMLSelectElement tiene los siguientes métodos: add(element, before) Este método devuelve un void. El parámetro element es de tipo http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (10 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script HTMLElement. El parámetro before es de tipo HTMLElement. remove(index) Este método devuelve un void. El parámetro index es de tipo long. blur() Este método devuelve un void. focus() Este método devuelve un void. Objeto HTMLOptGroupElement HTMLOptGroupElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLOptGroupElement tiene las siguientes propiedades: disabled Esta propiedad es de tipo boolean. label Esta propiedad es de tipo String. Objeto HTMLOptionElement HTMLOptionElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLOptionElement tiene las siguientes propiedades: form Esta propiedad es de tipo HTMLFormElement. defaultSelected Esta propiedad es de tipo boolean. text Esta propiedad es de tipo String. index Esta propiedad es de tipo long. disabled Esta propiedad es de tipo boolean. label Esta propiedad es de tipo String. selected Esta propiedad es de tipo boolean. value Esta propiedad es de tipo String. Objeto HTMLInputElement HTMLInputElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLInputElement tiene las siguientes propiedades: defaultValue Esta propiedad es de tipo String. defaultChecked Esta propiedad es de tipo boolean. form Esta propiedad es de tipo HTMLFormElement. accept http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (11 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo String. accessKey Esta propiedad es de tipo String. align Esta propiedad es de tipo String. alt Esta propiedad es de tipo String. checked Esta propiedad es de tipo boolean. disabled Esta propiedad es de tipo boolean. maxLength Esta propiedad es de tipo long. name Esta propiedad es de tipo String. readOnly Esta propiedad es de tipo boolean. size Esta propiedad es de tipo String. src Esta propiedad es de tipo String. tabIndex Esta propiedad es de tipo long. type Esta propiedad es de tipo String. useMap Esta propiedad es de tipo String. value Esta propiedad es de tipo String. El objeto HTMLInputElement tiene los siguientes métodos: blur() Este método devuelve un void. focus() Este método devuelve un void. select() Este método devuelve un void. click() Este método devuelve un void. Objeto HTMLTextAreaElement HTMLTextAreaElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTextAreaElement tiene las siguientes propiedades: defaultValue Esta propiedad es de tipo String. form Esta propiedad es de tipo HTMLFormElement. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (12 de 25) [16/10/2003 13:47:30] Correspondencia con el Lenguaje ECMA Script accessKey Esta propiedad es de tipo String. cols Esta propiedad es de tipo long. disabled Esta propiedad es de tipo boolean. name Esta propiedad es de tipo String. readOnly Esta propiedad es de tipo boolean. rows Esta propiedad es de tipo long. tabIndex Esta propiedad es de tipo long. type Esta propiedad es de tipo String. value Esta propiedad es de tipo String. El objeto HTMLTextAreaElement tiene los siguientes métodos: blur() Este método devuelve un void. focus() Este método devuelve un void. select() Este método devuelve un void. Objeto HTMLButtonElement HTMLButtonElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLButtonElement tiene las siguientes propiedades: form Esta propiedad es de tipo HTMLFormElement. accessKey Esta propiedad es de tipo String. disabled Esta propiedad es de tipo boolean. name Esta propiedad es de tipo String. tabIndex Esta propiedad es de tipo long. type Esta propiedad es de tipo String. value Esta propiedad es de tipo String. Objeto HTMLLabelElement HTMLLabelElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (13 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script El objeto HTMLLabelElement tiene las siguientes propiedades: form Esta propiedad es de tipo HTMLFormElement. accessKey Esta propiedad es de tipo String. htmlFor Esta propiedad es de tipo String. Objeto HTMLFieldSetElement HTMLFieldSetElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLFieldSetElement tiene las siguientes propiedades: form Esta propiedad es de tipo HTMLFormElement. Objeto HTMLLegendElement HTMLLegendElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLLegendElement tiene las siguientes propiedades: form Esta propiedad es de tipo HTMLFormElement. accessKey Esta propiedad es de tipo String. align Esta propiedad es de tipo String. Objeto HTMLUListElement HTMLUListElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLUListElement tiene las siguientes propiedades: compact Esta propiedad es de tipo boolean. type Esta propiedad es de tipo String. Objeto HTMLOListElement HTMLOListElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLOListElement tiene las siguientes propiedades: compact Esta propiedad es de tipo boolean. start Esta propiedad es de tipo long. type Esta propiedad es de tipo String. Objeto HTMLDListElement HTMLDListElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLDListElement tiene las siguientes propiedades: compact http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (14 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo boolean. Objeto HTMLDirectoryElement HTMLDirectoryElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLDirectoryElement tiene las siguientes propiedades: compact Esta propiedad es de tipo boolean. Objeto HTMLMenuElement HTMLMenuElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLMenuElement tiene las siguientes propiedades: compact Esta propiedad es de tipo boolean. Objeto HTMLLIElement HTMLLIElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLLIElement tiene las siguientes propiedades: type Esta propiedad es de tipo String. value Esta propiedad es de tipo long. Objeto HTMLBlockquoteElement HTMLBlockquoteElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLBlockquoteElement tiene las siguientes propiedades: cite Esta propiedad es de tipo String. Objeto HTMLDivElement HTMLDivElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLDivElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. Objeto HTMLParagraphElement HTMLParagraphElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLParagraphElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. Objeto HTMLHeadingElement HTMLHeadingElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLHeadingElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. Objeto HTMLQuoteElement http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (15 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script HTMLQuoteElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLQuoteElement tiene las siguientes propiedades: cite Esta propiedad es de tipo String. Objeto HTMLPreElement HTMLPreElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLPreElement tiene las siguientes propiedades: width Esta propiedad es de tipo long. Objeto HTMLBRElement HTMLBRElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLBRElement tiene las siguientes propiedades: clear Esta propiedad es de tipo String. Objeto HTMLBaseFontElement HTMLBaseFontElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLBaseFontElement tiene las siguientes propiedades: color Esta propiedad es de tipo String. face Esta propiedad es de tipo String. size Esta propiedad es de tipo String. Objeto HTMLFontElement HTMLFontElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLFontElement tiene las siguientes propiedades: color Esta propiedad es de tipo String. face Esta propiedad es de tipo String. size Esta propiedad es de tipo String. Objeto HTMLHRElement HTMLHRElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLHRElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. noShade Esta propiedad es de tipo boolean. size http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (16 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo String. width Esta propiedad es de tipo String. Objeto HTMLModElement HTMLModElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLModElement tiene las siguientes propiedades: cite Esta propiedad es de tipo String. dateTime Esta propiedad es de tipo String. Objeto HTMLAnchorElement HTMLAnchorElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLAnchorElement tiene las siguientes propiedades: accessKey Esta propiedad es de tipo String. charset Esta propiedad es de tipo String. coords Esta propiedad es de tipo String. href Esta propiedad es de tipo String. hreflang Esta propiedad es de tipo String. name Esta propiedad es de tipo String. rel Esta propiedad es de tipo String. rev Esta propiedad es de tipo String. shape Esta propiedad es de tipo String. tabIndex Esta propiedad es de tipo long. target Esta propiedad es de tipo String. type Esta propiedad es de tipo String. El objeto HTMLAnchorElement tiene los siguientes métodos: blur() Este método devuelve un void. focus() Este método devuelve un void. Objeto HTMLImageElement HTMLImageElement tiene todas las propiedades y métodos de HTMLElement así como las http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (17 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script propiedades y métodos definidos más abajo. El objeto HTMLImageElement tiene las siguientes propiedades: lowSrc Esta propiedad es de tipo String. name Esta propiedad es de tipo String. align Esta propiedad es de tipo String. alt Esta propiedad es de tipo String. border Esta propiedad es de tipo String. height Esta propiedad es de tipo String. hspace Esta propiedad es de tipo String. isMap Esta propiedad es de tipo boolean. longDesc Esta propiedad es de tipo String. src Esta propiedad es de tipo String. useMap Esta propiedad es de tipo String. vspace Esta propiedad es de tipo String. width Esta propiedad es de tipo String. Objeto HTMLObjetoElement HTMLObjetoElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLObjetoElement tiene las siguientes propiedades: form Esta propiedad es de tipo HTMLFormElement. code Esta propiedad es de tipo String. align Esta propiedad es de tipo String. archive Esta propiedad es de tipo String. border Esta propiedad es de tipo String. codeBase Esta propiedad es de tipo String. codeType Esta propiedad es de tipo String. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (18 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script data Esta propiedad es de tipo String. declare Esta propiedad es de tipo boolean. height Esta propiedad es de tipo String. hspace Esta propiedad es de tipo String. name Esta propiedad es de tipo String. standby Esta propiedad es de tipo String. tabIndex Esta propiedad es de tipo long. type Esta propiedad es de tipo String. useMap Esta propiedad es de tipo String. vspace Esta propiedad es de tipo String. width Esta propiedad es de tipo String. Objeto HTMLParamElement HTMLParamElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLParamElement tiene las siguientes propiedades: name Esta propiedad es de tipo String. type Esta propiedad es de tipo String. value Esta propiedad es de tipo String. valueType Esta propiedad es de tipo String. Objeto HTMLAppletElement HTMLAppletElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLAppletElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. alt Esta propiedad es de tipo String. archive Esta propiedad es de tipo String. code Esta propiedad es de tipo String. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (19 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script codeBase Esta propiedad es de tipo String. height Esta propiedad es de tipo String. hspace Esta propiedad es de tipo String. name Esta propiedad es de tipo String. objeto Esta propiedad es de tipo String. vspace Esta propiedad es de tipo String. width Esta propiedad es de tipo String. Objeto HTMLMapElement HTMLMapElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLMapElement tiene las siguientes propiedades: areas Esta propiedad es de tipo HTMLCollection. name Esta propiedad es de tipo String. Objeto HTMLAreaElement HTMLAreaElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLAreaElement tiene las siguientes propiedades: accessKey Esta propiedad es de tipo String. alt Esta propiedad es de tipo String. coords Esta propiedad es de tipo String. href Esta propiedad es de tipo String. noHref Esta propiedad es de tipo boolean. shape Esta propiedad es de tipo String. tabIndex Esta propiedad es de tipo long. target Esta propiedad es de tipo String. Objeto HTMLScriptElement HTMLScriptElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLScriptElement tiene las siguientes propiedades: http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (20 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script text Esta propiedad es de tipo String. htmlFor Esta propiedad es de tipo String. event Esta propiedad es de tipo String. charset Esta propiedad es de tipo String. defer Esta propiedad es de tipo boolean. src Esta propiedad es de tipo String. type Esta propiedad es de tipo String. Objeto HTMLTableElement HTMLTableElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTableElement tiene las siguientes propiedades: caption Esta propiedad es de tipo HTMLTableCaptionElement. tHead Esta propiedad es de tipo HTMLTableSectionElement. tFoot Esta propiedad es de tipo HTMLTableSectionElement. rows Esta propiedad es de tipo HTMLCollection. tBodies Esta propiedad es de tipo HTMLCollection. align Esta propiedad es de tipo String. bgColor Esta propiedad es de tipo String. border Esta propiedad es de tipo String. cellPadding Esta propiedad es de tipo String. cellSpacing Esta propiedad es de tipo String. frame Esta propiedad es de tipo String. rules Esta propiedad es de tipo String. summary Esta propiedad es de tipo String. width Esta propiedad es de tipo String. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (21 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script El objeto HTMLTableElement tiene los siguientes métodos: createTHead() Este método devuelve un HTMLElement. deleteTHead() Este método devuelve un void. createTFoot() Este método devuelve un HTMLElement. deleteTFoot() Este método devuelve un void. createCaption() Este método devuelve un HTMLElement. deleteCaption() Este método devuelve un void. insertRow(index) Este método devuelve un HTMLElement. El parámetro index es de tipo long. deleteRow(index) Este método devuelve un void. El parámetro index es de tipo long. Objeto HTMLTableCaptionElement HTMLTableCaptionElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTableCaptionElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. Objeto HTMLTableColElement HTMLTableColElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTableColElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. ch Esta propiedad es de tipo String. chOff Esta propiedad es de tipo String. span Esta propiedad es de tipo long. vAlign Esta propiedad es de tipo String. width Esta propiedad es de tipo String. Objeto HTMLTableSectionElement HTMLTableSectionElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTableSectionElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. ch http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (22 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo String. chOff Esta propiedad es de tipo String. vAlign Esta propiedad es de tipo String. rows Esta propiedad es de tipo HTMLCollection. El objeto HTMLTableSectionElement tiene los siguientes métodos: insertRow(index) Este método devuelve un HTMLElement. El parámetro index es de tipo long. deleteRow(index) Este método devuelve un void. El parámetro index es de tipo long. Objeto HTMLTableRowElement HTMLTableRowElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTableRowElement tiene las siguientes propiedades: rowIndex Esta propiedad es de tipo long. sectionRowIndex Esta propiedad es de tipo long. cells Esta propiedad es de tipo HTMLCollection. align Esta propiedad es de tipo String. bgColor Esta propiedad es de tipo String. ch Esta propiedad es de tipo String. chOff Esta propiedad es de tipo String. vAlign Esta propiedad es de tipo String. El objeto HTMLTableRowElement tiene los siguientes métodos: insertCell(index) Este método devuelve un HTMLElement. El parámetro index es de tipo long. deleteCell(index) Este método devuelve un void. El parámetro index es de tipo long. Objeto HTMLTableCellElement HTMLTableCellElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLTableCellElement tiene las siguientes propiedades: cellIndex Esta propiedad es de tipo long. abbr Esta propiedad es de tipo String. align http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (23 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo String. axis Esta propiedad es de tipo String. bgColor Esta propiedad es de tipo String. ch Esta propiedad es de tipo String. chOff Esta propiedad es de tipo String. colSpan Esta propiedad es de tipo long. headers Esta propiedad es de tipo String. height Esta propiedad es de tipo String. noWrap Esta propiedad es de tipo boolean. rowSpan Esta propiedad es de tipo long. scope Esta propiedad es de tipo String. vAlign Esta propiedad es de tipo String. width Esta propiedad es de tipo String. Objeto HTMLFrameSetElement HTMLFrameSetElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLFrameSetElement tiene las siguientes propiedades: cols Esta propiedad es de tipo String. rows Esta propiedad es de tipo String. Objeto HTMLFrameElement HTMLFrameElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLFrameElement tiene las siguientes propiedades: frameBorder Esta propiedad es de tipo String. longDesc Esta propiedad es de tipo String. marginHeight Esta propiedad es de tipo String. marginWidth Esta propiedad es de tipo String. name http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (24 de 25) [16/10/2003 13:47:31] Correspondencia con el Lenguaje ECMA Script Esta propiedad es de tipo String. noResize Esta propiedad es de tipo boolean. scrolling Esta propiedad es de tipo String. src Esta propiedad es de tipo String. Objeto HTMLIFrameElement HTMLIFrameElement tiene todas las propiedades y métodos de HTMLElement así como las propiedades y métodos definidos más abajo. El objeto HTMLIFrameElement tiene las siguientes propiedades: align Esta propiedad es de tipo String. frameBorder Esta propiedad es de tipo String. height Esta propiedad es de tipo String. longDesc Esta propiedad es de tipo String. marginHeight Esta propiedad es de tipo String. marginWidth Esta propiedad es de tipo String. name Esta propiedad es de tipo String. scrolling Esta propiedad es de tipo String. src Esta propiedad es de tipo String. width Esta propiedad es de tipo String. http://html.conclase.net/w3c/dom1-es/ecma-script-language-binding.html (25 de 25) [16/10/2003 13:47:31] Referenciass REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Referencias XML W3C (World Wide Web Consortium) Extensible Markup Language (XML) 1.0. Ver http://www.w3.org/TR/REC-xml . HTML4.0 W3C (World Wide Web Consortium) HTML 4.0 Specification. Ver http://www.w3.org/TR/REC-html40 . Unicode The Unicode Consortium. The Unicode Standard, Version 2.0. Reading, Mass.: AddisonWesley Developers Press, 1996. CORBA OMG (Object Management Group) The Common Object Request Broker: Architecture and Specification. Ver http://www.omg.org/corba/corbiiop.htm . Java Sun The Java Language Specification. Ver http://java.sun.com/docs/books/jls/ . ECMAScript ECMA (European Computer Manufacturers Association) ECMAScript Language Specification. Ver http://www.ecma.ch/stand/ECMA-262.htm . http://html.conclase.net/w3c/dom1-es/references.html [16/10/2003 13:47:51] Notas de Producción (No Normativas) REC-DOM-Level-1-19981001 Nota: Este documento es parte de una traducción al castellano de la Recomendación del W3C "Document Object Model (DOM) Level 1" (más información). Puede consultar la versión original del mismo. Para cualquier comentario o corrección acerca de la traducción póngase en contacto con el traductor en [email protected]. Gracias por su colaboración. Véase el Aviso de copyright de la traducción. Notas de Producción (No Normativas) Editores Gavin Nicol, Inso EPS La especificación DOM es un buen ejemplo de la potencia del XML: todos los documentos HTML, correspondencias con Java, correspondencias con el IDL OMG y las correspondencias con ECMA Script han sido generados desde un solo conjunto de ficheros fuente XML. Esta sección describe cómo se escribió esta especificación en XML, y cómo se crearon las diferentes obras derivadas. 1. La Definición del Tipo de Documento Esta especificación está escrita completamente en XML, usando un DTD basado extensivamente en el DTD usado por el Grupo de Trabajo XML para la especificación XML. La principal diferencia entre el DTD usado por el Grupo de Trabajo XML y el DTD usado para esta especificación está en la adición de un modulo DTD para las especificaciones de las interfaces. El modulo DTD para las especificaciones de las interfaces es una traducción muy poco estricta desde la especificación EBNF (Extended Backus-Naur Form, Forma Backus-Naur Extendida) de la sintaxis IDL OMG a la sintaxis DTD XML. Además de la traducción, se sumó la capacidad de describir las interfaces, creando así una forma limitada de programación literaria para definiciones de interfaces. i bien el modulo DTD es suficiente para los propósitos del Grupo de Trabajo DOM, sus tipos son muy débiles, lo cual quiere decir que hay muy pocas restricciones en las especificaciones de los tipos (la información sobre el tipo se trata en efecto como una cadena opaca). En un DTD para la comunicación objeto a objeto probablemente serían beneficiosas algunas restricciones más fuertes sobre los tipos de datos. 2. El proceso de producción http://html.conclase.net/w3c/dom1-es/production-notes.html (1 de 3) [16/10/2003 13:48:29] Notas de Producción (No Normativas) La especificación DOM se escribió usando XML. Todos los documentos son XML válido. Para producir las versiones HTML de la especificación, los índices de objetos, el código fuente Java, y las definiciones IDL OMG y ECMA Script, la especificación fue convertida. La herramienta usada para la conversión es COST, de Joe English. COST toma la salida ESIS de nsgmls, crea una representación interna, y entonces ejecuta scripts y manejadores de eventos sobre la estructura interna de datos. Los manejadores de eventos permiten que se especifiquen patrones de documentos y procesos asociados: cuando se encuentra un patrón durante un recorrido en preorden del sub-árbol del documento, se ejecuta la acción asociada. Este es el corazón del proceso de conversión. Los scripts se usan para enlazar entre sí las distintas componentes. Por ejemplo, cada uno de los fuentes de datos derivados principales (código Java, etc.), es creado por la ejecución de un script, que a su vez ejecuta uno o más manejadores de eventos. Los scripts y manejadores de eventos se especifican por medio de TCL. La versión actual de COST ha sido modificada en algunos aspectos a partir de la versión disponible al público. En particular, ahora funciona correctamente bajo Windows 32-bits, usa TCL 8.0 y sigue correctamente las reglas de diferenciación entre mayúsculas y minúsculas de XML (aunque probablemente no podría manejar correctamente código en lenguaje nativo). También podríamos haber usado Jade, de James Clark. Al igual que COST, Jade permite que se especifiquen patrones y acciones, pero Jade se basa en DSSSL, un estándar internacional, mientras que COST no lo hace. Jade es más potente que COST en muchos aspectos, pero la experiencia previa del editor con COST hizo más fácil de usar a éste que a Jade. Una futura versión o Nivel de la especificación DOM se podría producir usando Jade o un procesador XSL. Los ficheros fuente XML completos están disponibles en: http://www.w3.org/TR/1998/REC-DOMLevel-1-19981001/xml-source.zip 3. Definiciones de objetos Como se ha dicho antes, todas las definiciones de los objetos están especificadas en XML. Las correspondencias con Java, IDL OMG y ECMA Script están todas generadas automáticamente a partir del código fuente XML. Esto es posible porque la información especificada en XML es un superconjunto de lo que estas otras sintaxis necesitan. Esto es una observación general; se puede aplicar el mismo tipo de técnica a otras muchas áreas: a partir de una estructura rica, son posibles un procesamiento y conversión ricos. Para Java y el IDL OMG, es básicamente una cuestión de renombrar las palabras clave sintácticas; para ECMA Script el proceso es algo más desarrollado. Una definición típica de objeto en XML se parece a algo de este estilo: http://html.conclase.net/w3c/dom1-es/production-notes.html (2 de 3) [16/10/2003 13:48:29] Notas de Producción (No Normativas) <interface name="foo"> <descr><p>Description goes here...</p></descr> <method name="bar"> <descr><p>Description goes here...</p></descr> <parameters> <param name="baz" type="DOMString" attr="in"> <descr><p>Description goes here...</p></descr> </param> </parameters> <returns type="void"> <descr><p>Description goes here...</p></descr> </returns> <raises> <!-- Throws no exceptions --> </raises> </method> </interface> Como se puede ver, esto no es precisamente ahorrativo en palabras, pero tampoco lo es el IDL OMG. De hecho, cuando al principio la especificación se convirtió para usar XML, las definiciones IDL OMG se convirtieron automáticamente en el fuente XML correspondiente usando herramientas comunes de Unix para la manipulación de texto. http://html.conclase.net/w3c/dom1-es/production-notes.html (3 de 3) [16/10/2003 13:48:29]