Las Bases de Datos Relacionales se basan en las relaciones (tablas bidimensionales), como único medio para representar los datos del mundo real. Están asociadas al lenguaje estándar SQL.
Se han creado complejas teorías y patrones para encajar objetos o estructuras jerarquizadas en bases de datos relacionales. Existen numerosos middlewares encargados de la transferencia de información entre estructuras XML y bases de datos relacionales.
Las Bases de Datos Relacionales suponen una posibilidad para el almacenamiento de datos XML. Sin embargo, no están bien preparadas para almacenar estructuras de tipo jerárquico como son los documentos XML, algunas de las causas son:
- Las bases de datos relacionales tienen una estructura regular frente al carácter heterogéneo de los documentos XML.
- Los documentos XML suelen contener muchos niveles de anidamiento mientras que los datos relacionales son planos.
- Los documentos XML tienen un orden intrínseco mientras que los datos relacionales son no ordenados.
- Los datos relacionales son generalmente densos (cada columna tiene un valor), mientras que los datos XML son dispersos, es decir, pueden representar la carencia de información mediante la ausencia del elemento.
Algunas de las razones para usar los tipos de Bases de Datos Relacionales y los productos de bases de datos existentes para almacenar XML, aún cuando no sea de forma nativa son:
- Las bases de datos relacionales y orientadas a objetos son bien conocidas, mientras que las bases de datos XML nativas son nuevas.
- Como resultado de la familiaridad con las bases de datos relacionales y orientadas a objetos, los usuarios se inclinan a ellas especialmente por el rendimiento.
Es un software que permite la comunicación entre dos aplicaciones de software independientes. Por ejemplo, un middleware puede permitir a una base de datos acceder a los datos de otra.