Saltar la navegación

2.2.- Colecciones y documentos.

Dibujo que muestra la jerarquía de una BB nativa XML, dibujando el nodo raíz en la parte superior y después el árbol de colecciones, en rojo, y documentos, en celeste.

En general, una BD XML tiene una estructura jerárquica organizada en colecciones y documentos XML. La estructura jerárquica comienza con un nodo raíz ('/'), del que parten colecciones y documentos.

Una colección:

  • Es un conjunto de documentos agrupados, normalmente, en función de la información que contienen.
  • Puede contener otras colecciones.

Un documento:

  • Información XML
  • Información de otro tipo y entonces se le denomina non-XML data (Datos no-XML)

Comparando con una base de datos relacional o un sistema de archivos:

  • Las colecciones juegan en las bases de datos nativas el papel de las tablas en las DB relacionales, o de un directorio en un sistemas de archivos.
  • Los documentos juegan el papel de las filas de una tabla de una BD relacional o un fichero en un sistema de archivos.

Aunque depende de cada implementación, en muchos casos:

  • Cada colección puede tener más de un DOCTYPE asociado.
  • El elemento raíz del documento XML define a que DOCTYPE estará asociado el documento, en caso de no poseer ninguno, éste se crea dinámicamente. Esto posibilita el almacenamiento de documentos sin formato definido.
  • La colección también puede tener asociado un Schema con información tanto física como lógica de la colección. La parte lógica define las relaciones y propiedades de los documentos XML y la física contiene información sobre el almacenamiento e indexación de los mismos.
  • También se pueden almacenar documentos no-XML, para estos existe un DOCTYPE especial llamado non-XML.

Autoevaluación

Señala si la siguiente afirmación es verdadera o falsa.

Pregunta 1

Una colección solo puede almacenar documentos XML.

Citas para pensar

A veces sentimos que lo que hacemos es tan solo una gota en el mar, pero el mar sería menos si le faltara una gota. Madre Teresa de Calcuta