|
Buscador
Secciones
Otras zonas
Registro
Foros
Recomendamos
|
La figura 1 muestra el árbol que veremos cuando ejecutemos el programa DomEcho sobre el primer fichero XML que creamos en el tutorial DOM. ![]() Recuerda que el primer texto mostrado para cada nodo es el tipo del elemento. Después viene el nombre del elemento, si existe, y luego el valor del elemento. Estas vistas muestran tres tipos de elementos: Document, Comment, y Element. Hay sólo un tipo de documento para todo el árbol -- es el nodo raíz. El nodo comentarios muestra el atributo valor, mientras que el nodo Elemento muestra el nombre del elemento, "slideshow".
Si expandimos el elemento SlideShow veremos la ventana de la figura 2: ![]() Aquí podemos ver los nodos Text y Comment que se ha interpuesto entre elementos Slide. Los nodos de texto vaciós existen porque no hay DTD que le diga al analizador que no existe texto. (Generalmente, la gran mayoría de nodos en un DOM serán nodos Element y Text). Una notable ausencia de esta imagen son los nodos Attribute. Una inspección de la tabla org.w3c.dom.Node muestra que de echo hay un tipo de nodo atributo. Pero no están incluidos como hijos en el árbol DOM. Se obtienen mediante el método getAttributes del interface Node.
String t = domNode.getNodeValue().trim();
int x = t.indexOf("\n");
if (x >= 0) t = t.substring(0, x);
s += t;
|
|
Nota:
El fichero mostrado en esta sección es slideSample10.xml. |
La figura 3 muestra el resultado de ejecutar la aplicación DomEcho sobre slideSample10.xml, que incluye una entrada DOCTYPE que identifica el DTD del documento.

El interface DocType es realmente una extensión de w3c.org.dom.Node. Define un método getEntities que usaremos para obtener nodos de Entidad -- los nodos que definen entidades. Al igual que los nodos Atributo, los nodos Entidad no aparecen como hijos de lo nodos DOM.
Cuando expandimos el nodo slideshow podemos ver la imagen de la figura 4.

Aquí, está iluminado el nodo de Instrucción de Procesamiento, mostrando que estos nodos si aparecen en el árbol. La propiedad name contiene la especificación-fuente que identifica la aplicación a la que va dirigida la instrucción. La propiedad value contiene el texto de la instrucción.
Observa que los nodos de texto vacíos tambien se ven aquí, aunque el DTD especifique que un slideshow sólo puede contener elementos slide, nunca texto. Lógicamente, podríamos pensar que estos nodos no aparecerían. (Cuando este fichero fue analizado por SAX, estos elementos generaron eventos ignorableWhitespace, en vez de eventos character.
Los elementos de texto vacíos son incluidos porque por defecto, DocumentBuilder crea un DOM que incluye toda la información léxica necesaria para reconstruir el documento original, y en su forma original. Esto incluye los nodos comentarios así como los nodos de texto. Todavía no hay ningún mecanismo estándard para eliminar dicha información léxica del DOM por eso tenemos que dejarlo con su estructura lógica.
![]() La clase XmlDocumentBuilder de la implementación de referencia define el método setIgnoringLexicalInformation para este propósito. |
Nos movemos hacia el segundo elemento slide y abrimos el elemento item que nos mostrará la imagen de la figura 5.

Aquí, está iluminado el nodo de Referencia de Entidad. Observamos que contiene muchos nodos bajo él. Este ejemplo sólo muestra los nodos de texto y de comentario, pero la entidad podría contener otros nodos elementos.
Nos movemos hasta el último elemento item bajo el último slide y podremos ver la imagen de figura 6.

Aquí está iluminado el nodo CDATA. Observa que no hay nodos debajo de él. Como la sección CDATA no se interpreta, todos sus contenidos están en la propiedad value del nodo.
FinalizandoEn este punto, hemos visto muchos de los nodos que podremos encontrar en un árbol DOM. Existen uno o dos más que mencionaremos en la siguiente página, pero ahora sabemos lo que necesitamos para crear o modificar una estructura DOM. En la siguiente página, veremos como convertir un DOM en un JTree con el que se pueda interactuar. O, si lo prefieres, puedes saltar a la sección posterior del turorial, donde aprenderas como Crear y Manipular un DOM.
| Leer comentarios (25) | |
| Escribir comentario | |
| Puntuación: |
|
| Votar | |
| Recomendar este tutorial | |
| Estadísticas |
Copyright © 1999-2007
Programación en castellano.
Todos los derechos reservados.
Formulario de Contacto -
Datos legales -
Publicidad
Hospedaje web y servidores dedicados linux por Ferca Network
red internet: musica mp3 | logos y melodias | hospedaje web linux | registro de dominios | servidores dedicados
más internet: comprar | recursos gratis | posicionamiento en buscadores | tienda virtual | gifs animados