DOM XML - Modelo

Ahora que sabemos lo que significa DOM, veamos qué es una estructura DOM. Un documento DOM es una colección de nodos o piezas de información, organizadas en una jerarquía. Algunos tipos de nodos pueden tener nodos secundarios de varios tipos y otros son nodos hoja que no pueden tener nada debajo de ellos en la estructura del documento. A continuación se muestra una lista de los tipos de nodos, con una lista de los tipos de nodos que pueden tener como hijos:

  • Document - Elemento (máximo uno), Instrucciones de procesamiento, Comentario, Tipo de documento (máximo uno)

  • DocumentFragment - Elemento, ProcessingInstruction, Comment, Text, CDATASection, EntityReference

  • EntityReference - Elemento, ProcessingInstruction, Comment, Text, CDATASection, EntityReference

  • Element - Elemento, Texto, Comentario, Instrucción de procesamiento, Sección CDATAS, Referencia de entidad

  • Attr - Texto, EntityReference

  • ProcessingInstruction - sin hijos

  • Comment - sin hijos

  • Text - sin hijos

  • CDATASection - sin hijos

  • Entity - Elemento, ProcessingInstruction, Comment, Text, CDATASection, EntityReference

  • Notation - sin hijos

Ejemplo

Considere la representación DOM del siguiente documento XML node.xml.

<?xml version = "1.0"?>
<Company>
   <Employee category = "technical">
      <FirstName>Tanmay</FirstName>
      <LastName>Patil</LastName>
      <ContactNo>1234567890</ContactNo>
   </Employee>
   
   <Employee category = "non-technical">
      <FirstName>Taniya</FirstName>
      <LastName>Mishra</LastName>
      <ContactNo>1234667898</ContactNo>
   </Employee>
</Company>

El modelo de objeto de documento del documento XML anterior sería el siguiente:

Del diagrama de flujo anterior, podemos inferir:

  • El objeto de nodo solo puede tener un objeto de nodo principal . Este ocupa la posición por encima de todos los nodos. Aquí está Company .

  • El nodo principal puede tener varios nodos denominados nodos secundarios . Estos nodos secundarios pueden tener nodos adicionales llamados nodos de atributo . En el ejemplo anterior, tenemos dos nodos de atributo Técnico y No técnico . El nodo de atributo no es en realidad un hijo del nodo de elemento, pero todavía está asociado con él.

  • Estos nodos secundarios, a su vez, pueden tener varios nodos secundarios. El texto dentro de los nodos se llama nodo de texto .

  • Los objetos de nodo del mismo nivel se denominan hermanos.

  • El DOM identifica -

    • los objetos para representar la interfaz y manipular el documento.

    • la relación entre los objetos y las interfaces.