13.08.2013 Views

Funcionalidad 4: Almacenes de Datos y Bases de Datos XML ...

Funcionalidad 4: Almacenes de Datos y Bases de Datos XML ...

Funcionalidad 4: Almacenes de Datos y Bases de Datos XML ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

MMAABBDD <strong>Funcionalidad</strong> 4:<br />

<strong>Almacenes</strong> <strong>de</strong> <strong>Datos</strong> y <strong>Bases</strong> <strong>de</strong> <strong>Datos</strong> <strong>XML</strong><br />

viceversa.<br />

16<br />

El tipo <strong>de</strong> dato <strong>XML</strong> permite tratar los documentos <strong>XML</strong> como:<br />

Valores relacionales <strong>de</strong>ntro <strong>de</strong> las columnas <strong>de</strong> las tablas.<br />

Atributos <strong>de</strong>finidos por el usuario.<br />

Variables.<br />

Parámetros <strong>de</strong> funciones.<br />

Algunas <strong>de</strong> las operaciones <strong>de</strong>finidas son:<br />

<strong>XML</strong>ELEMENT para generar un valor xml .<br />

<strong>XML</strong>CONCAT para concatenar una lista <strong>de</strong> valores xml.<br />

<strong>XML</strong>PARSE para realizar un análisis sintáctico <strong>de</strong> una ca<strong>de</strong>na <strong>de</strong><br />

caracteres para generar un documento xml.<br />

<strong>XML</strong>SERIALIZE para generar una ca<strong>de</strong>na <strong>de</strong> caracteres a partir <strong>de</strong> un<br />

documento xml.<br />

El conjunto <strong>de</strong> mapeos que se <strong>de</strong>finen es el siguiente:<br />

Mapeo <strong>de</strong> los i<strong>de</strong>ntificadores SQL a nombres <strong>XML</strong>.<br />

Mapeo <strong>de</strong> tipo <strong>de</strong> datos SQL a tipos <strong>de</strong> datos <strong>XML</strong> Schema.<br />

Mapeo <strong>de</strong> tablas a documentos <strong>XML</strong>.<br />

Generación <strong>de</strong> un esquema <strong>XML</strong>.<br />

Estos mapeos se usan para convertir bases <strong>de</strong> datos relacionales a documentos <strong>XML</strong> y<br />

El problema es que si el documento <strong>XML</strong> no proviene <strong>de</strong> una bases <strong>de</strong> datos o se pue<strong>de</strong><br />

convertir a un esquema relacional.<br />

Ejemplo <strong>de</strong> <strong>Bases</strong> <strong>de</strong> <strong>Datos</strong> <strong>XML</strong><br />

La siguiente consulta <strong>de</strong>vuelve los títulos <strong>de</strong> los libros <strong>de</strong>l año 2.000. Como “año” es un<br />

atributo y no una etiqueta se le antece<strong>de</strong> con un carácter “@”.<br />

for $b in doc("libros.xml")//libro<br />

where $b/@año = "2000"<br />

return $b/titulo

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!