SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Universidad Cenfotec
Maestría en Base de datos
Curso:
Programación avanzada de base de datos
Profesor:
Mario Chacón
Investigación
XML en Base de datos
Alumno
López Portillo, José Ahias
Abril del 2013
Contenido
Introducción..................................................................................................................................................3
XML en base de datos...................................................................................................................................3
Ventajas del XML ......................................................................................................................................3
Estructura de un documento XML............................................................................................................3
Documentos XML bien formados y control de errores ............................................................................5
Partes de un documento XML...................................................................................................................5
Prólogo..................................................................................................................................................5
Cuerpo...................................................................................................................................................5
Elementos .............................................................................................................................................6
Atributos ...............................................................................................................................................6
Entidades predefinidas .........................................................................................................................6
Secciones CDATA...................................................................................................................................7
Comentarios..........................................................................................................................................7
¿Qué es SQL/XML?....................................................................................................................................7
XQuery ......................................................................................................................................................7
XPath.........................................................................................................................................................8
Base de datos XML....................................................................................................................................8
Gestores XML Enable ............................................................................................................................8
Gestores XML nativo.............................................................................................................................8
XML en DB2...............................................................................................................................................9
Funciones XML en DB2........................................................................................................................10
Conclusión...................................................................................................................................................17
Recomendación ..........................................................................................................................................17
Anexos.........................................................................................................................................................18
Bibliografía..................................................................................................................................................19
Introducción
El presente documento, contiene una introducción a conceptos de XML y su manejo en base de datos.
Luego de la definición de conceptos básicos de XML, el desarrollo de este documento se centra en su
aplicación en DB2 y funciones de sistema para la manipulación de XML.
XML en base de datos
(Wikipedia, 2013) XML, siglas en inglés de eXtensible Markup Language ('lenguaje de marcas extensible'),
es un lenguaje de marcas desarrollado por el World Wide Web Consortium (W3C). Deriva del lenguaje
SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez
un lenguaje definido por SGML) para estructurar documentos grandes. A diferencia de otros lenguajes,
XML da soporte a bases de datos, siendo útil cuando varias aplicaciones se deben comunicar entre sí o
integrar información. (Bases de datos Silberschatz).
Ventajas del XML
 Es extensible: Después de diseñado y puesto en producción, es posible extender XML con la
adición de nuevas etiquetas, de modo que se pueda continuar utilizando sin complicación alguna.
 El analizador es un componente estándar, no es necesario crear un analizador específico para
cada versión de lenguaje XML. Esto posibilita el empleo de cualquiera de los analizadores
disponibles. De esta manera se evitan bugs y se acelera el desarrollo de aplicaciones.
 Si un tercero decide usar un documento creado en XML, es sencillo entender su estructura y
procesarla. Mejora la compatibilidad entre aplicaciones. Podemos comunicar aplicaciones de
distintas plataformas, sin que importe el origen de los datos, es decir, podríamos tener una
aplicación en Linux con una base de datos Postgres y comunicarla con otra aplicación en Windows
y Base de Datos MS-SQL Server.
 Transformamos datos en información, pues se le añade un significado concreto y los asociamos a
un contexto, con lo cual tenemos flexibilidad para estructurar documentos.
Estructura de un documento XML
(cicei, 2013)Un documento XML tiene dos estructuras, una lógica y otra física.
Físicamente, el documento está compuesto por unidades llamadas entidades. Una entidad puede hacer
referencia a otra entidad, causando que esta se incluya en el documento. Cada documento comienza con
una entidad documento, también llamada raíz. Lógicamente, el documento está compuesto de
declaraciones, elementos, comentarios, referencias a caracteres e instrucciones de procesamiento, todos
los cuales están indicados por una marca explícita. Las estructuras lógica y física deben encajar de manera
adecuada:
Los documentos XML se dividen en dos grupos, documentos bien formados y documentos válidos.
 Bien formados: Son todos los que cumplen las especificaciones del lenguaje respecto a las reglas
sintácticas sin estar sujetos a unos elementos fijados en un DTD. De hecho los documentos XML
deben tener una estructura jerárquica muy estricta y los documentos bien formados deben
cumplirla.
 Válidos: Además de estar bien formados, siguen una estructura y una semántica determinada por
un DTD: sus elementos y sobre todo la estructura jerárquica que define el DTD, además de los
atributos, deben ajustarse a lo que el DTD dicte.
Figura 01: Ejemplo de XML
Fuente (Creación Propia)
Lo primero que tenemos que observar es la primera línea. Con ella deben empezar todos los documentos
XML, ya que es la que indica que lo que la sigue es XML. Aunque es opcional, es recomendable incluirla.
Puede tener varios atributos, algunos obligatorios y otros no:
 version: Indica la versión de XML usada en el documento. Es obligatorio ponerlo, a no ser que sea
un documento externo a otro que ya lo incluía.
 encoding: La forma en que se ha codificado el documento. Se puede poner cualquiera, y depende
del parser el entender o no la codificación. Por defecto es UTF-8, aunque podrían ponerse otras,
como UTF-16, US-ASCII, ISO-8859-1, etc. No es obligatorio salvo que sea un documento externo a
otro principal.
 standalone: Indica si el documento va acompañado de un DTD ("no"), o no lo necesita ("yes"); en
principio no hay porqué ponerlo, porque luego se indica el DTD si se necesita.
La "declaración de tipo de documento" define qué tipo de documento estamos creando para ser
procesado correctamente. Es decir, definimos que declaración de tipo de documento (DTD) valida y define
los datos que contiene nuestro documento XML.
Documentos XML bien formados y control de errores
Los documentos denominados como «bien formados» (del inglés well formed) son aquellos que cumplen
con todas las definiciones básicas de formato y pueden, por lo tanto, analizarse correctamente por
cualquier analizador sintáctico (parser) que cumpla con la norma. Se separa esto del concepto de validez
que se explica más adelante.
Los documentos han de seguir una estructura estrictamente jerárquica con lo que respecta a las etiquetas
que delimitan sus elementos. Una etiqueta debe estar correctamente incluida en otra, es decir, las
etiquetas deben estar correctamente anidadas. Los elementos con contenido deben estar correctamente
cerrados.
Los documentos XML sólo permiten un elemento raíz del que todos los demás sean parte, es decir, solo
pueden tener un elemento inicial.
Los valores atributos en XML siempre deben estar encerrados entre comillas simples o dobles.
Partes de un documento XML
Un documento XML está formado por el prólogo y por el cuerpo del documento así como texto de
etiquetas que contiene una gran variedad de efectos positivos o negativos en la referencia opcional a la
que se refiere el documento, hay que tener mucho cuidado de esa parte de la gramática léxica para que
se componga de manera uniforme.
Prólogo
Aunque no es obligatorio, los documentos XML pueden empezar con unas líneas que describen la versión
XML, el tipo de documento y otras cosas.
El prólogo de un documento XML contiene:
 Una declaración XML. Es la sentencia que declara al documento como un documento XML.
 Una declaración de tipo de documento. Enlaza el documento con su DTD (definición de tipo de
documento), o el DTD puede estar incluido en la propia declaración o ambas cosas al mismo
tiempo.
 Uno o más comentarios e instrucciones de procesamiento.
Figura 02: Ejemplo Prologo
Fuente: (Creación Propia)
Cuerpo
A diferencia del prólogo, el cuerpo no es opcional en un documento XML, el cuerpo debe contener solo
un elemento raíz, característica indispensable también para que el documento esté bien formado. Sin
embargo es necesaria la adquisición de datos para su buen funcionamiento.
El XML es sensible a mayúsculas y minúsculas. Existe un conjunto de caracteres llamados espacios en
blanco (espacios, tabuladores, retornos de carro, saltos de línea) que los procesadores XML tratan de
forma diferente en el marcado XML.
Es necesario asignar nombres a las estructuras, tipos de elementos, entidades, elementos particulares,
etc. En XML los nombres tienen alguna característica en común.
Las construcciones como etiquetas, referencias de entidad y declaraciones se denominan marcas; son
partes del documento que el procesador XML espera entender. El resto del documento entre marcas
son los datos «entendibles» por las personas.
Figura 03: Ejemplo Cuerpo
Fuente: (Creación Propia)
Elementos
Los elementos XML pueden tener contenido (más elementos, caracteres o ambos), o bien ser elementos
vacíos.
Atributos
Los elementos pueden tener atributos, que son una manera de incorporar características o propiedades
a los elementos de un documento. Deben ir entre comillas.
Figura 04: Ejemplo Atributo
Fuente: (Creación Propia)
Entidades predefinidas
En XML 1.0, se definen cinco entidades para representar caracteres especiales y que no se interpreten
como marcado por el procesador XML. Es decir, que así podemos usar el carácter "<" sin que se interprete
como el comienzo de una etiqueta XML, por ejemplo.
Entidad Carácter
&amp; &
&lt; <
&gt; >
&apos; '
&quot; "
Tabla 1: Entidades predefinidas en XML
Fuente (asptutor, 2013)
Secciones CDATA
Existe otra construcción en XML que permite especificar datos, utilizando cualquier carácter, especial o
no, sin que se interprete como marcado XML. La razón de esta construcción llamada CDATA (Character
Data) es que a veces es necesario para los autores de documentos XML, poder leerlo fácilmente sin tener
que descifrar los códigos de entidades. Especialmente cuando son muchas.
Comentarios
A veces es conveniente insertar comentarios en el documento XML, que sean ignorados por el procesado
de la información y las reproducciones del documento. Los comentarios tienen el mismo formato que los
comentarios de HTML. Es decir, comienzan por la cadena "<!--" y terminan con "-->".
Figura 05: Ejemplo de Comentario
Fuente: (Creación Propia)
Se pueden introducir comentarios en cualquier lugar de la instancia o del prólogo, pero nunca dentro de
las declaraciones, etiquetas, u otros comentarios.
¿Qué es SQL/XML?
 SQL/XML es un estandard ANSI, ISO que incorpora XML dentro del lenguaje SQL de bases de datos
objeto-relacionales.
 SQL: 2003 es el estándar para acceder y manejar datos de bases de datos objetorelacionales. Las
empresas y los usuarios necesitan integrar sus datos XML en sus bases de datos objeto-
relacionales, aprovechando las ventajosas facilidades de SQL.
 SQL/XML permite almacenar sus documentos XML en sus bases de datos objetorelacionales, para
consultar dichos documentos mediante “Xpath” y “Xquery” y para “publicar” sus datos SQL en un
formato de documentos XML.
XQuery
 XQuery usa la estructura arbórea de XML para expresar consultas a todas estas fuentes de datos,
bien estén físicamente almacenados en XML o bien sean vistos como XML vía un middleware.
 XQuery 1.1 describe un lenguaje consultivo aplicado a un amplio espectro de tipos de fuentes de
datos XML muy diversos.
 XQuery es un lenguaje estándar para combinar documentos, bases de datos, páginas Web y otras
formas de representación de información.
 XQuery cuenta con una amplia implementación, es potente y más fácil de aprender y mantener
que otros lenguajes alternativos
XPath
XQuery (soportado mediante XPath) es un lenguaje consultivo para que XML pueda extraer datos, al
estilo de SQL en XORDB, o como SPARQL en la Web Semántica.
Base de datos XML
(wikipedia, 2013)Una base de datos XML constituye un sistema software que da persistencia a datos
almacenados en formato XML. Estos datos pueden ser interrogados, exportados y serializados. Las bases
de datos XML están generalmente asociadas con las bases de datos documentales.
Existen dos grandes clases de bases de datos XML:
 XML Enable: Estas base de datos pueden mapear XML en estructuras tradicionales de bases de
datos (como las relacionales ), aceptando XML como entrada y formateando en XML la salida, o
más recientemente soportando tipos XML nativos en la propia base de datos. Esto implica que la
base de datos procesa el XML internamente (lo opuesto a soportarlo mediante middleware).
 XML nativo (NXD): el modelo interno de estas bases de datos usa documentos XML como la
unidad elemental de almacenamiento, los cuales no han de almacenarse necesariamente en
formato de texto.
Gestores XML Enable
SGBD XML-Enabled (Sistemas de administración de base de datos XML) desglosan un documento XML en
su correspondiente modelo relacional.
Algunos de los principales Motores en el mercado:
 IBM DB2 (XML pure)
 Microsoft Sql Server
 Oracle
 PostgreSQL
Gestores XML nativo
(Ortiz, 2013)Las bases de datos XML nativas son diseñadas para trabajar con XQL (eXtensible Query
Language), el cuál sirve un propósito similar a SQL en una base de datos relacional. XQL está diseñado
para trabajar con documentos XML jerárquicamente estructurados y puede proveer características de
consulta como filtros y joins. Los esquemas XML son implementados en bases de datos XML nativas para
registrar reglas de almacenamiento e indexación de datos y para proveer y obtener información de
almacenamiento a los mecanismos de bases de datos XML nativas. Adicionalmente, todos los objetos en
una base de datos XML nativa son típicamente accesibles directamente mediante un URL. El trabajo con
bases de datos XML nativas involucra dos pasos básicos:
 Describir los datos mediante Definiciones de Tipos de Datos (Document TypeDefinitions, DTD) o
esquemas XML
 Definir un nuevo esquema de base de datos XML nativa XML o Mapa de Datos a usar para
almacenamiento y obtención de datos.
Algunos de los principales Motores en el mercado:
 TotalXML
 OpenLink
 Tamino XML Server
 Berkeley DB de Oracle
XML en DB2
(IBM, 2013)El DB2 proporciona los tipos de datos XML para almacenar documentos XML bien formados.
Los valores en las columnas XML son almacenados en una representación interna diferente a los tipos de
datos de cadena de caracteres. Para almacenar datos XML en una columna de tipo de datos XML, los datos
deben ser transformados usando la función XMLPARSE. Un valor de datos de tipo XML puede
transformarse en un valor de cadena de caracteres serializada, representante del documento XML que
usa la función XMLSERIALIZE.
DB2 proporciona muchas otras funciones integradas para manipular tipos de datos XML.
Desde la versión 9 DB2 incorpora una nueva Tecnología llamada XML pure, cuyas características son:
 XML es un tipo de dato.
 XML se gestiona y almacena en un contenedor separado.
 XML se valida con schemas en la base de datos.
 Incluye funciones para transformar XML en SQL y viceversa.
 Incorpora procedimientos para generar documentos XML en tablas.
 XML se indexa para agilizar búsquedas y recuperación de datos.
Figura 06: Arquitectura de XML PURE
Fuente: (Sánchez, 2006)
Funciones XML en DB2
Consultas SQL/XML
Como lo indica su nombre, SQL/XML sirve como puente entre los mundos SQL y XML. Evolucionó como
parte del estándar SQL y ahora incluye especificaciones para incrustar expresiones XQuery o XPath dentro
de instrucciones SQL. XPath es un lenguaje que permite navegar por un documento XML para buscar
diferentes elementos y atributos. XQuery es compatible con XPath.
Es importante destacar que las expresiones XQuery (y XPath) distinguen mayúsculas de minúsculas. Por
ejemplo, una expresión XQuery que hacer referencia al elemento XML "zip" no se aplicará a los elementos
XML denominados "ZIP" o "Zip". A veces, esta distinción entre mayúsculas y minúsculas es pasada por alto
por los programadores SQL, ya que la sintaxis de consulta SQL les permite usar "zip", "ZIP" y "Zip" para
referirse al mismo nombre de columna.
DB2 9 tiene más de 15 funciones SQL/XML que permiten buscar datos específicos dentro de los
documentos XML, convertir datos relacionales en XML, convertir datos XML en relacionales y realizar otras
tareas útiles.
Algunas de las funciones de sistema que provee DB2 son:
XMLATTRIBUTES
La función XMLATTRIBUTES construye los atributos XML a partir de los argumentos. Esta función sólo se
puede utilizar como argumento de la función XMLELEMENT. El resultado es una secuencia XML que
contiene un nodo de atributo XQuery para cada valor de entrada que no sea nulo.
Figura 07: Ejemplo de XMLATTRIBUTES
Fuente: (IBM, 2013)
XMLCOMMENT
La función XMLCOMMENT devuelve un valor XML con un único nodo de comentario XQuery con el
argumento de entrada como contenido.
XMLCONCAT
La función XMLCONCAT devuelve una secuencia que contiene la concatenación de un número variable de
argumentos de entrada de XML.
Figura 08: Ejemplo de XMLCONCAT
Fuente: (IBM, 2013)
XMLDOCUMENT
La función XMLDOCUMENT devuelve un valor XML con un único nodo de documento XQuery con ninguno
o varios nodos hijo.
Figura 09: Ejemplo de XMLDOCUMENT
Fuente: (IBM, 2013)
XMLELEMENT
La función XMLELEMENT devuelve un valor XML que es un nodo de elemento XQuery.
Figura 10: Ejemplo de XMLELEMENT
Fuente: (IBM, 2013)
XMLFOREST
La función XMLFOREST devuelve un valor XML que es una secuencia de nodos de elemento XQuery.
Esta función toma un conjunto opcional de declaraciones de espacios de nombres y uno o varios
argumentos que forman el contenido de nombre y elemento para uno o varios nodos de elemento. El
resultado es una secuencia XML que contiene una secuencia de nodos de elemento XQuery o el valor
nulo.
El tipo de datos del resultado es XML. Si cualquiera de los argumentos expresión-contenido-
elemento puede ser nulo, el resultado puede ser nulo; si todos los valores del argumento expresión-
contenido-elemento son nulos y la opción NULL ON NULL está en vigor, el resultado es el valor nulo.
La función XMLFOREST se puede expresar mediante XMLCONCAT y XMLELEMENT.
Figura 11: Ejemplo de XMLFOREST
Fuente: (IBM, 2013)
XMLNAMESPACES
La declaración XMLNAMESPACES construye las declaraciones de espacios de nombres a partir de los
argumentos. Esta declaración únicamente puede emplearse como argumento de funciones específicas
como XMLELEMENT, XMLFOREST y XMLTABLE. El resultado es una o varias declaraciones de espacios de
nombres XML que contienen espacios de nombres con ámbito para cada uno de los valores de entrada
no nulos.
Figura 11: Ejemplo de XMLFOREST
Fuente: (IBM, 2013)
XMLPARSE
La función XMLPARSE analiza el argumento como un documento XML y devuelve un valor XML.
Figura 12: Ejemplo de XMLPARSE
Fuente: (IBM, 2013)
XMLPI
La función XMLPI devuelve un valor XML con un nodo de instrucción de proceso XQuery.
Figura 13: Ejemplo de XMLPI
Fuente: (IBM, 2013)
XMLQUERY
La función XMLQUERY devuelve un valor XML a partir de la evaluación de una expresión XQuery utilizando
posiblemente los argumentos de entrada especificados como variables XQuery.
 Restricciones de uso de XMLQUERY: La función XMLQUERY no puede formar parte de los
elementos siguientes:
o Parte de la cláusula ON asociada a un operador JOIN o una sentencia MERGE (SQLSTATE
42972)
o Parte de la cláusula GENERATE KEY USING o RANGE THROUGH de la sentencia CREATE
INDEX EXTENSION (SQLSTATE 428E3)
o Parte de la cláusula FILTER USING de la sentencia CREATE FUNCTION (escalar externa) o
la cláusula FILTER USING de la sentencia CREATE INDEX EXTENSION (SQLSTATE 428E4)
o Parte de una restricción de comprobación o de una expresión de generación de columnas
(SQLSTATE 42621)
o Una cláusula-group-by (SQLSTATE 42822)
o Un argumento de una función-columna (SQLSTATE 42607)
 XMLQUERY como subconsulta: Una expresión XMLQUERY que actúa como subconsulta puede
estar limitada por sentencias que restringen las subconsultas.
XMLROW
La función XMLROW devuelve un valor XML con un único nodo de documento XQuery que contiene un
nodo de elemento de nivel superior.
Figura 14: Ejemplo de XMLPI
Fuente: (IBM, 2013)
XMLSERIALIZE
La función XMLSERIALIZE devuelve un valor XML serializado de los tipos de datos especificados, generados
a partir del argumento expresión-XML.
XMLTEXT
La función XMLTEXT devuelve un valor XML con un único nodo de texto XQuery cuyo contenido es el
argumento de entrada.
Figura 15: Ejemplo de XMLTEXT
Fuente: (IBM, 2013)
XMLVALIDATE
La función XMLVALIDATE devuelve una copia del valor de entrada XML aumentado con la información
obtenida a partir de la validación de esquema XML, incluidos los valores por omisión.
Figura 16: Ejemplo de XMLTEXT
Fuente: (IBM, 2013)
Conclusión
Los gestores de base de datos modernos ofrecen funcionalidades nativas para el manejo de XML, el utilizar
correctamente esas funcionalidades a nivel empresariales pueden ayudar a mejorar los procesos
relacionados al manejo de XML y la complejidad que estos significaban en el pasado.
Recomendación
Los analista de base de datos, deben analizar las necesidades relacionadas con el manejo de datos de tipo
XML y analizar que gestor de base de datos, es el motor adecuado para sus requerimientos, aunque XML
no es un tema nuevo, muchos administradores de base de datos, carecen del conocimiento del soporte
nativo de muchos gestores y optan por manejar datos XML en forma de Texto o en forma de archivos
físico, esto no es óptimo y en muchos casos implican altos costos en el desarrollo de aplicaciones que
desean manejar información de este tipo.
Anexos
Figura Anexo 1: Estándar SQL 9075
Fuente: (Costilla, 2011)
Bibliografía
asptutor. (04 de 2013). http://www.asptutor.com/xml/index1.asp. Obtenido de
http://www.asptutor.com/xml/index1.asp
cicei. (04 de 2013). http://www.cicei.com/ocon/gsi/tutorial_xml/Estructura.html. Obtenido de
http://www.cicei.com/ocon/gsi/tutorial_xml/Estructura.html
Costilla, C. (2011). Introduccion A SQL/XML: SQL y XML funcionan conjuntamente. En C. Costilla. MAdrid:
SINBAD-UPM Research Group.
guillesql. (21 de Abril de 2013). guillesql. Obtenido de www.guillesql.es:
http://www.guillesql.es/Articulos/XML_SQL_Server.aspx
IBM. (04 de 2013). http://www.ibm.com/developerworks/ssa/data/tutorials/db2-
cert7305/section2.html. Obtenido de
http://www.ibm.com/developerworks/ssa/data/tutorials/db2-cert7305/section2.html
IBM. (04 de 2013). IBM. Obtenido de
http://pic.dhe.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.db2.luw.sql.ref.d
oc%2Fdoc%2Fr0022197.html&lang%3Des
Ortiz, M. N. (4 de 2013). http://es.scribd.com. Obtenido de http://es.scribd.com/doc/64763902/Bases-
de-Datos-Nativas-XML
Sánchez, L. A. (2006). IBM DB2 9 pureXML, base de datos híbrida XML Relacional. Chile: IBM.
wikipedia. (04 de 2013). http://es.wikipedia.org/wiki/Base_de_datos_XML. Obtenido de
http://es.wikipedia.org/wiki/Base_de_datos_XML

Mais conteúdo relacionado

Mais procurados

Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a EventosLaura
 
Base de datos
Base de datosBase de datos
Base de datosDavid
 
Metodos De acceso
Metodos De accesoMetodos De acceso
Metodos De accesojjhlhdez
 
Publicación de páginas web
Publicación de páginas webPublicación de páginas web
Publicación de páginas webborja94
 
Elementos de diagramas de secuencias
Elementos de diagramas de secuenciasElementos de diagramas de secuencias
Elementos de diagramas de secuenciasJorge Reyes
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacionalMaria Garcia
 
Sistemas De Numeracion Octal Y Exadecimal
Sistemas De Numeracion Octal Y ExadecimalSistemas De Numeracion Octal Y Exadecimal
Sistemas De Numeracion Octal Y ExadecimalG7DAI
 
Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)angeljlp08
 
Paradigma de poo
Paradigma de pooParadigma de poo
Paradigma de poopixeleante
 
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/Julio Pari
 

Mais procurados (20)

Eventos en Java
Eventos en JavaEventos en Java
Eventos en Java
 
Menejo de eventos en java introduccion
Menejo de eventos en java introduccionMenejo de eventos en java introduccion
Menejo de eventos en java introduccion
 
Programacion Orientada a Eventos
Programacion Orientada a EventosProgramacion Orientada a Eventos
Programacion Orientada a Eventos
 
Arquitectura cliente servidor
Arquitectura cliente servidorArquitectura cliente servidor
Arquitectura cliente servidor
 
Base de datos
Base de datosBase de datos
Base de datos
 
Metodos De acceso
Metodos De accesoMetodos De acceso
Metodos De acceso
 
Publicación de páginas web
Publicación de páginas webPublicación de páginas web
Publicación de páginas web
 
Elementos de diagramas de secuencias
Elementos de diagramas de secuenciasElementos de diagramas de secuencias
Elementos de diagramas de secuencias
 
Elementos Swing
Elementos SwingElementos Swing
Elementos Swing
 
Pt7seccion2
Pt7seccion2Pt7seccion2
Pt7seccion2
 
Tecnologias de desarrollo web
Tecnologias de desarrollo webTecnologias de desarrollo web
Tecnologias de desarrollo web
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Sistemas De Numeracion Octal Y Exadecimal
Sistemas De Numeracion Octal Y ExadecimalSistemas De Numeracion Octal Y Exadecimal
Sistemas De Numeracion Octal Y Exadecimal
 
Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)Diapositivas sobre BD (Base de Datos)
Diapositivas sobre BD (Base de Datos)
 
Patrones diseño de software
Patrones diseño de softwarePatrones diseño de software
Patrones diseño de software
 
Paradigma de poo
Paradigma de pooParadigma de poo
Paradigma de poo
 
Introduccion a UML
Introduccion a UMLIntroduccion a UML
Introduccion a UML
 
Métodos agiles
Métodos agilesMétodos agiles
Métodos agiles
 
Controles Básicos de Android Studio
Controles Básicos de Android StudioControles Básicos de Android Studio
Controles Básicos de Android Studio
 
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
3 Clase Ciclo De Vida Del Software - http://blog.juliopari.com/
 

Semelhante a XML Básico DB2

Semelhante a XML Básico DB2 (20)

Xml
XmlXml
Xml
 
Steven Toala 2c3
Steven Toala 2c3Steven Toala 2c3
Steven Toala 2c3
 
UG2011html.pptx
UG2011html.pptxUG2011html.pptx
UG2011html.pptx
 
Guía+básica+de+características+de+archivos+.pdf
Guía+básica+de+características+de+archivos+.pdfGuía+básica+de+características+de+archivos+.pdf
Guía+básica+de+características+de+archivos+.pdf
 
Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5
 
Xml
XmlXml
Xml
 
Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...
Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...
Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...
 
Xml
XmlXml
Xml
 
7.2 estructura de dato xml
7.2 estructura de dato xml7.2 estructura de dato xml
7.2 estructura de dato xml
 
Lenguajes de marcas
Lenguajes de marcasLenguajes de marcas
Lenguajes de marcas
 
Xml
XmlXml
Xml
 
XML
XMLXML
XML
 
Lenguajes de marcado
Lenguajes de marcadoLenguajes de marcado
Lenguajes de marcado
 
Lenguajes de Marcas XML
Lenguajes de Marcas XMLLenguajes de Marcas XML
Lenguajes de Marcas XML
 
Edición Digital: Lenguajes de marcado
Edición Digital: Lenguajes de marcadoEdición Digital: Lenguajes de marcado
Edición Digital: Lenguajes de marcado
 
Html
HtmlHtml
Html
 
Xml presentacin
Xml presentacinXml presentacin
Xml presentacin
 
Unidad 1 lenguajes de marcas
Unidad 1   lenguajes de marcasUnidad 1   lenguajes de marcas
Unidad 1 lenguajes de marcas
 
Tema 2
Tema 2Tema 2
Tema 2
 
Xml json yaml
Xml json yamlXml json yaml
Xml json yaml
 

Mais de JOSE AHIAS LOPEZ PORTILLO

Mi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning StudioMi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning StudioJOSE AHIAS LOPEZ PORTILLO
 
01 - DAX de principiante a experto con Power BI: Introducción a DAX
01 - DAX de principiante a experto con Power BI: Introducción a DAX01 - DAX de principiante a experto con Power BI: Introducción a DAX
01 - DAX de principiante a experto con Power BI: Introducción a DAXJOSE AHIAS LOPEZ PORTILLO
 
Instalación de Sql Server 2019 On-Premises.
Instalación de Sql Server 2019 On-Premises.Instalación de Sql Server 2019 On-Premises.
Instalación de Sql Server 2019 On-Premises.JOSE AHIAS LOPEZ PORTILLO
 
Mi primer modelo de clasificación utilizando regresión logística
Mi primer modelo de clasificación utilizando regresión logísticaMi primer modelo de clasificación utilizando regresión logística
Mi primer modelo de clasificación utilizando regresión logísticaJOSE AHIAS LOPEZ PORTILLO
 
70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_Introducción
70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_Introducción70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_Introducción
70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_IntroducciónJOSE AHIAS LOPEZ PORTILLO
 
Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01
Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01
Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01JOSE AHIAS LOPEZ PORTILLO
 
Introducción a Ciencia de datos con Microsoft
Introducción a Ciencia de datos con MicrosoftIntroducción a Ciencia de datos con Microsoft
Introducción a Ciencia de datos con MicrosoftJOSE AHIAS LOPEZ PORTILLO
 
Transformación Digital – Ciencia de datos el siguiente nivel
Transformación Digital – Ciencia de datos el siguiente nivelTransformación Digital – Ciencia de datos el siguiente nivel
Transformación Digital – Ciencia de datos el siguiente nivelJOSE AHIAS LOPEZ PORTILLO
 
Sql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data WarehouseSql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data WarehouseJOSE AHIAS LOPEZ PORTILLO
 
Sql Saturday Guatemala 2018-Mas rápido y Mas Furioso Windowing Functions & Co...
Sql Saturday Guatemala 2018-Mas rápido y Mas FuriosoWindowing Functions & Co...Sql Saturday Guatemala 2018-Mas rápido y Mas FuriosoWindowing Functions & Co...
Sql Saturday Guatemala 2018-Mas rápido y Mas Furioso Windowing Functions & Co...JOSE AHIAS LOPEZ PORTILLO
 
Fast and Furious: Discovering Windowing Function
Fast and Furious: Discovering Windowing FunctionFast and Furious: Discovering Windowing Function
Fast and Furious: Discovering Windowing FunctionJOSE AHIAS LOPEZ PORTILLO
 
Sql Server - Troubleshooting De Bloqueos (Parte I)
Sql Server - Troubleshooting De Bloqueos (Parte I)Sql Server - Troubleshooting De Bloqueos (Parte I)
Sql Server - Troubleshooting De Bloqueos (Parte I)JOSE AHIAS LOPEZ PORTILLO
 
Sql Saturday CR - Introducción al Optimizador
Sql Saturday CR - Introducción al OptimizadorSql Saturday CR - Introducción al Optimizador
Sql Saturday CR - Introducción al OptimizadorJOSE AHIAS LOPEZ PORTILLO
 
Modelos de recuperación de desastre híbridos (On premise / Cloud)
Modelos de recuperación de desastre híbridos (On premise / Cloud)Modelos de recuperación de desastre híbridos (On premise / Cloud)
Modelos de recuperación de desastre híbridos (On premise / Cloud)JOSE AHIAS LOPEZ PORTILLO
 
SQLSaturday Guatemala - SOS de Alto de rendimiento con Window Functions
SQLSaturday Guatemala - SOS de Alto de rendimiento con Window FunctionsSQLSaturday Guatemala - SOS de Alto de rendimiento con Window Functions
SQLSaturday Guatemala - SOS de Alto de rendimiento con Window FunctionsJOSE AHIAS LOPEZ PORTILLO
 

Mais de JOSE AHIAS LOPEZ PORTILLO (20)

Mi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning StudioMi primer modelo de clasificación con Azure Machine Learning Studio
Mi primer modelo de clasificación con Azure Machine Learning Studio
 
Introducción Azure Synapse Analytics
Introducción Azure Synapse AnalyticsIntroducción Azure Synapse Analytics
Introducción Azure Synapse Analytics
 
002 - Introducción a DAX
002 - Introducción a DAX002 - Introducción a DAX
002 - Introducción a DAX
 
01 - DAX de principiante a experto con Power BI: Introducción a DAX
01 - DAX de principiante a experto con Power BI: Introducción a DAX01 - DAX de principiante a experto con Power BI: Introducción a DAX
01 - DAX de principiante a experto con Power BI: Introducción a DAX
 
Instalación de Sql Server 2019 On-Premises.
Instalación de Sql Server 2019 On-Premises.Instalación de Sql Server 2019 On-Premises.
Instalación de Sql Server 2019 On-Premises.
 
Mi primer modelo de clasificación utilizando regresión logística
Mi primer modelo de clasificación utilizando regresión logísticaMi primer modelo de clasificación utilizando regresión logística
Mi primer modelo de clasificación utilizando regresión logística
 
70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_Introducción
70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_Introducción70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_Introducción
70-761 Consultas de datos con Transact-SQL(SQL Server 2019)_Introducción
 
Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01
Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01
Exam 70-761 Querying Data with Transact-SQL: Ambiente parte 01
 
Introducción a Ciencia de datos con Microsoft
Introducción a Ciencia de datos con MicrosoftIntroducción a Ciencia de datos con Microsoft
Introducción a Ciencia de datos con Microsoft
 
Dax paso a paso con Power BI
Dax paso a paso con Power BIDax paso a paso con Power BI
Dax paso a paso con Power BI
 
Transformación Digital – Ciencia de datos el siguiente nivel
Transformación Digital – Ciencia de datos el siguiente nivelTransformación Digital – Ciencia de datos el siguiente nivel
Transformación Digital – Ciencia de datos el siguiente nivel
 
Sql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data WarehouseSql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data Warehouse
 
Sql Saturday Guatemala 2018-Mas rápido y Mas Furioso Windowing Functions & Co...
Sql Saturday Guatemala 2018-Mas rápido y Mas FuriosoWindowing Functions & Co...Sql Saturday Guatemala 2018-Mas rápido y Mas FuriosoWindowing Functions & Co...
Sql Saturday Guatemala 2018-Mas rápido y Mas Furioso Windowing Functions & Co...
 
Fast and Furious: Discovering Windowing Function
Fast and Furious: Discovering Windowing FunctionFast and Furious: Discovering Windowing Function
Fast and Furious: Discovering Windowing Function
 
Sql Server - Troubleshooting De Bloqueos (Parte I)
Sql Server - Troubleshooting De Bloqueos (Parte I)Sql Server - Troubleshooting De Bloqueos (Parte I)
Sql Server - Troubleshooting De Bloqueos (Parte I)
 
Preguntando a sql server con DMV
Preguntando a sql server con DMVPreguntando a sql server con DMV
Preguntando a sql server con DMV
 
Sql Saturday CR - Introducción al Optimizador
Sql Saturday CR - Introducción al OptimizadorSql Saturday CR - Introducción al Optimizador
Sql Saturday CR - Introducción al Optimizador
 
Modelos de recuperación de desastre híbridos (On premise / Cloud)
Modelos de recuperación de desastre híbridos (On premise / Cloud)Modelos de recuperación de desastre híbridos (On premise / Cloud)
Modelos de recuperación de desastre híbridos (On premise / Cloud)
 
BI para todos
BI para todosBI para todos
BI para todos
 
SQLSaturday Guatemala - SOS de Alto de rendimiento con Window Functions
SQLSaturday Guatemala - SOS de Alto de rendimiento con Window FunctionsSQLSaturday Guatemala - SOS de Alto de rendimiento con Window Functions
SQLSaturday Guatemala - SOS de Alto de rendimiento con Window Functions
 

Último

Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxLudy Ventocilla Napanga
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORGonella
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxNataliaGonzalez619348
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxEribertoPerezRamirez
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadJonathanCovena1
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Rosabel UA
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicialLorenaSanchez350426
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTESaraNolasco4
 

Último (20)

Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
 
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
DETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIORDETALLES EN EL DISEÑO DE INTERIOR
DETALLES EN EL DISEÑO DE INTERIOR
 
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docxSecuencia didáctica.DOÑA CLEMENTINA.2024.docx
Secuencia didáctica.DOÑA CLEMENTINA.2024.docx
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
Los Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la SostenibilidadLos Nueve Principios del Desempeño de la Sostenibilidad
Los Nueve Principios del Desempeño de la Sostenibilidad
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024Actividad transversal 2-bloque 2. Actualización 2024
Actividad transversal 2-bloque 2. Actualización 2024
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicial
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
 

XML Básico DB2

  • 1. Universidad Cenfotec Maestría en Base de datos Curso: Programación avanzada de base de datos Profesor: Mario Chacón Investigación XML en Base de datos Alumno López Portillo, José Ahias Abril del 2013
  • 2. Contenido Introducción..................................................................................................................................................3 XML en base de datos...................................................................................................................................3 Ventajas del XML ......................................................................................................................................3 Estructura de un documento XML............................................................................................................3 Documentos XML bien formados y control de errores ............................................................................5 Partes de un documento XML...................................................................................................................5 Prólogo..................................................................................................................................................5 Cuerpo...................................................................................................................................................5 Elementos .............................................................................................................................................6 Atributos ...............................................................................................................................................6 Entidades predefinidas .........................................................................................................................6 Secciones CDATA...................................................................................................................................7 Comentarios..........................................................................................................................................7 ¿Qué es SQL/XML?....................................................................................................................................7 XQuery ......................................................................................................................................................7 XPath.........................................................................................................................................................8 Base de datos XML....................................................................................................................................8 Gestores XML Enable ............................................................................................................................8 Gestores XML nativo.............................................................................................................................8 XML en DB2...............................................................................................................................................9 Funciones XML en DB2........................................................................................................................10 Conclusión...................................................................................................................................................17 Recomendación ..........................................................................................................................................17 Anexos.........................................................................................................................................................18 Bibliografía..................................................................................................................................................19
  • 3. Introducción El presente documento, contiene una introducción a conceptos de XML y su manejo en base de datos. Luego de la definición de conceptos básicos de XML, el desarrollo de este documento se centra en su aplicación en DB2 y funciones de sistema para la manipulación de XML. XML en base de datos (Wikipedia, 2013) XML, siglas en inglés de eXtensible Markup Language ('lenguaje de marcas extensible'), es un lenguaje de marcas desarrollado por el World Wide Web Consortium (W3C). Deriva del lenguaje SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML) para estructurar documentos grandes. A diferencia de otros lenguajes, XML da soporte a bases de datos, siendo útil cuando varias aplicaciones se deben comunicar entre sí o integrar información. (Bases de datos Silberschatz). Ventajas del XML  Es extensible: Después de diseñado y puesto en producción, es posible extender XML con la adición de nuevas etiquetas, de modo que se pueda continuar utilizando sin complicación alguna.  El analizador es un componente estándar, no es necesario crear un analizador específico para cada versión de lenguaje XML. Esto posibilita el empleo de cualquiera de los analizadores disponibles. De esta manera se evitan bugs y se acelera el desarrollo de aplicaciones.  Si un tercero decide usar un documento creado en XML, es sencillo entender su estructura y procesarla. Mejora la compatibilidad entre aplicaciones. Podemos comunicar aplicaciones de distintas plataformas, sin que importe el origen de los datos, es decir, podríamos tener una aplicación en Linux con una base de datos Postgres y comunicarla con otra aplicación en Windows y Base de Datos MS-SQL Server.  Transformamos datos en información, pues se le añade un significado concreto y los asociamos a un contexto, con lo cual tenemos flexibilidad para estructurar documentos. Estructura de un documento XML (cicei, 2013)Un documento XML tiene dos estructuras, una lógica y otra física. Físicamente, el documento está compuesto por unidades llamadas entidades. Una entidad puede hacer referencia a otra entidad, causando que esta se incluya en el documento. Cada documento comienza con una entidad documento, también llamada raíz. Lógicamente, el documento está compuesto de declaraciones, elementos, comentarios, referencias a caracteres e instrucciones de procesamiento, todos los cuales están indicados por una marca explícita. Las estructuras lógica y física deben encajar de manera adecuada: Los documentos XML se dividen en dos grupos, documentos bien formados y documentos válidos.  Bien formados: Son todos los que cumplen las especificaciones del lenguaje respecto a las reglas sintácticas sin estar sujetos a unos elementos fijados en un DTD. De hecho los documentos XML
  • 4. deben tener una estructura jerárquica muy estricta y los documentos bien formados deben cumplirla.  Válidos: Además de estar bien formados, siguen una estructura y una semántica determinada por un DTD: sus elementos y sobre todo la estructura jerárquica que define el DTD, además de los atributos, deben ajustarse a lo que el DTD dicte. Figura 01: Ejemplo de XML Fuente (Creación Propia) Lo primero que tenemos que observar es la primera línea. Con ella deben empezar todos los documentos XML, ya que es la que indica que lo que la sigue es XML. Aunque es opcional, es recomendable incluirla. Puede tener varios atributos, algunos obligatorios y otros no:  version: Indica la versión de XML usada en el documento. Es obligatorio ponerlo, a no ser que sea un documento externo a otro que ya lo incluía.  encoding: La forma en que se ha codificado el documento. Se puede poner cualquiera, y depende del parser el entender o no la codificación. Por defecto es UTF-8, aunque podrían ponerse otras, como UTF-16, US-ASCII, ISO-8859-1, etc. No es obligatorio salvo que sea un documento externo a otro principal.  standalone: Indica si el documento va acompañado de un DTD ("no"), o no lo necesita ("yes"); en principio no hay porqué ponerlo, porque luego se indica el DTD si se necesita.
  • 5. La "declaración de tipo de documento" define qué tipo de documento estamos creando para ser procesado correctamente. Es decir, definimos que declaración de tipo de documento (DTD) valida y define los datos que contiene nuestro documento XML. Documentos XML bien formados y control de errores Los documentos denominados como «bien formados» (del inglés well formed) son aquellos que cumplen con todas las definiciones básicas de formato y pueden, por lo tanto, analizarse correctamente por cualquier analizador sintáctico (parser) que cumpla con la norma. Se separa esto del concepto de validez que se explica más adelante. Los documentos han de seguir una estructura estrictamente jerárquica con lo que respecta a las etiquetas que delimitan sus elementos. Una etiqueta debe estar correctamente incluida en otra, es decir, las etiquetas deben estar correctamente anidadas. Los elementos con contenido deben estar correctamente cerrados. Los documentos XML sólo permiten un elemento raíz del que todos los demás sean parte, es decir, solo pueden tener un elemento inicial. Los valores atributos en XML siempre deben estar encerrados entre comillas simples o dobles. Partes de un documento XML Un documento XML está formado por el prólogo y por el cuerpo del documento así como texto de etiquetas que contiene una gran variedad de efectos positivos o negativos en la referencia opcional a la que se refiere el documento, hay que tener mucho cuidado de esa parte de la gramática léxica para que se componga de manera uniforme. Prólogo Aunque no es obligatorio, los documentos XML pueden empezar con unas líneas que describen la versión XML, el tipo de documento y otras cosas. El prólogo de un documento XML contiene:  Una declaración XML. Es la sentencia que declara al documento como un documento XML.  Una declaración de tipo de documento. Enlaza el documento con su DTD (definición de tipo de documento), o el DTD puede estar incluido en la propia declaración o ambas cosas al mismo tiempo.  Uno o más comentarios e instrucciones de procesamiento. Figura 02: Ejemplo Prologo Fuente: (Creación Propia) Cuerpo A diferencia del prólogo, el cuerpo no es opcional en un documento XML, el cuerpo debe contener solo un elemento raíz, característica indispensable también para que el documento esté bien formado. Sin embargo es necesaria la adquisición de datos para su buen funcionamiento.
  • 6. El XML es sensible a mayúsculas y minúsculas. Existe un conjunto de caracteres llamados espacios en blanco (espacios, tabuladores, retornos de carro, saltos de línea) que los procesadores XML tratan de forma diferente en el marcado XML. Es necesario asignar nombres a las estructuras, tipos de elementos, entidades, elementos particulares, etc. En XML los nombres tienen alguna característica en común. Las construcciones como etiquetas, referencias de entidad y declaraciones se denominan marcas; son partes del documento que el procesador XML espera entender. El resto del documento entre marcas son los datos «entendibles» por las personas. Figura 03: Ejemplo Cuerpo Fuente: (Creación Propia) Elementos Los elementos XML pueden tener contenido (más elementos, caracteres o ambos), o bien ser elementos vacíos. Atributos Los elementos pueden tener atributos, que son una manera de incorporar características o propiedades a los elementos de un documento. Deben ir entre comillas. Figura 04: Ejemplo Atributo Fuente: (Creación Propia) Entidades predefinidas En XML 1.0, se definen cinco entidades para representar caracteres especiales y que no se interpreten como marcado por el procesador XML. Es decir, que así podemos usar el carácter "<" sin que se interprete como el comienzo de una etiqueta XML, por ejemplo. Entidad Carácter &amp; & &lt; < &gt; > &apos; ' &quot; " Tabla 1: Entidades predefinidas en XML Fuente (asptutor, 2013)
  • 7. Secciones CDATA Existe otra construcción en XML que permite especificar datos, utilizando cualquier carácter, especial o no, sin que se interprete como marcado XML. La razón de esta construcción llamada CDATA (Character Data) es que a veces es necesario para los autores de documentos XML, poder leerlo fácilmente sin tener que descifrar los códigos de entidades. Especialmente cuando son muchas. Comentarios A veces es conveniente insertar comentarios en el documento XML, que sean ignorados por el procesado de la información y las reproducciones del documento. Los comentarios tienen el mismo formato que los comentarios de HTML. Es decir, comienzan por la cadena "<!--" y terminan con "-->". Figura 05: Ejemplo de Comentario Fuente: (Creación Propia) Se pueden introducir comentarios en cualquier lugar de la instancia o del prólogo, pero nunca dentro de las declaraciones, etiquetas, u otros comentarios. ¿Qué es SQL/XML?  SQL/XML es un estandard ANSI, ISO que incorpora XML dentro del lenguaje SQL de bases de datos objeto-relacionales.  SQL: 2003 es el estándar para acceder y manejar datos de bases de datos objetorelacionales. Las empresas y los usuarios necesitan integrar sus datos XML en sus bases de datos objeto- relacionales, aprovechando las ventajosas facilidades de SQL.  SQL/XML permite almacenar sus documentos XML en sus bases de datos objetorelacionales, para consultar dichos documentos mediante “Xpath” y “Xquery” y para “publicar” sus datos SQL en un formato de documentos XML. XQuery  XQuery usa la estructura arbórea de XML para expresar consultas a todas estas fuentes de datos, bien estén físicamente almacenados en XML o bien sean vistos como XML vía un middleware.  XQuery 1.1 describe un lenguaje consultivo aplicado a un amplio espectro de tipos de fuentes de datos XML muy diversos.
  • 8.  XQuery es un lenguaje estándar para combinar documentos, bases de datos, páginas Web y otras formas de representación de información.  XQuery cuenta con una amplia implementación, es potente y más fácil de aprender y mantener que otros lenguajes alternativos XPath XQuery (soportado mediante XPath) es un lenguaje consultivo para que XML pueda extraer datos, al estilo de SQL en XORDB, o como SPARQL en la Web Semántica. Base de datos XML (wikipedia, 2013)Una base de datos XML constituye un sistema software que da persistencia a datos almacenados en formato XML. Estos datos pueden ser interrogados, exportados y serializados. Las bases de datos XML están generalmente asociadas con las bases de datos documentales. Existen dos grandes clases de bases de datos XML:  XML Enable: Estas base de datos pueden mapear XML en estructuras tradicionales de bases de datos (como las relacionales ), aceptando XML como entrada y formateando en XML la salida, o más recientemente soportando tipos XML nativos en la propia base de datos. Esto implica que la base de datos procesa el XML internamente (lo opuesto a soportarlo mediante middleware).  XML nativo (NXD): el modelo interno de estas bases de datos usa documentos XML como la unidad elemental de almacenamiento, los cuales no han de almacenarse necesariamente en formato de texto. Gestores XML Enable SGBD XML-Enabled (Sistemas de administración de base de datos XML) desglosan un documento XML en su correspondiente modelo relacional. Algunos de los principales Motores en el mercado:  IBM DB2 (XML pure)  Microsoft Sql Server  Oracle  PostgreSQL Gestores XML nativo (Ortiz, 2013)Las bases de datos XML nativas son diseñadas para trabajar con XQL (eXtensible Query Language), el cuál sirve un propósito similar a SQL en una base de datos relacional. XQL está diseñado para trabajar con documentos XML jerárquicamente estructurados y puede proveer características de consulta como filtros y joins. Los esquemas XML son implementados en bases de datos XML nativas para registrar reglas de almacenamiento e indexación de datos y para proveer y obtener información de almacenamiento a los mecanismos de bases de datos XML nativas. Adicionalmente, todos los objetos en
  • 9. una base de datos XML nativa son típicamente accesibles directamente mediante un URL. El trabajo con bases de datos XML nativas involucra dos pasos básicos:  Describir los datos mediante Definiciones de Tipos de Datos (Document TypeDefinitions, DTD) o esquemas XML  Definir un nuevo esquema de base de datos XML nativa XML o Mapa de Datos a usar para almacenamiento y obtención de datos. Algunos de los principales Motores en el mercado:  TotalXML  OpenLink  Tamino XML Server  Berkeley DB de Oracle XML en DB2 (IBM, 2013)El DB2 proporciona los tipos de datos XML para almacenar documentos XML bien formados. Los valores en las columnas XML son almacenados en una representación interna diferente a los tipos de datos de cadena de caracteres. Para almacenar datos XML en una columna de tipo de datos XML, los datos deben ser transformados usando la función XMLPARSE. Un valor de datos de tipo XML puede transformarse en un valor de cadena de caracteres serializada, representante del documento XML que usa la función XMLSERIALIZE. DB2 proporciona muchas otras funciones integradas para manipular tipos de datos XML. Desde la versión 9 DB2 incorpora una nueva Tecnología llamada XML pure, cuyas características son:  XML es un tipo de dato.  XML se gestiona y almacena en un contenedor separado.  XML se valida con schemas en la base de datos.  Incluye funciones para transformar XML en SQL y viceversa.  Incorpora procedimientos para generar documentos XML en tablas.  XML se indexa para agilizar búsquedas y recuperación de datos.
  • 10. Figura 06: Arquitectura de XML PURE Fuente: (Sánchez, 2006) Funciones XML en DB2 Consultas SQL/XML Como lo indica su nombre, SQL/XML sirve como puente entre los mundos SQL y XML. Evolucionó como parte del estándar SQL y ahora incluye especificaciones para incrustar expresiones XQuery o XPath dentro de instrucciones SQL. XPath es un lenguaje que permite navegar por un documento XML para buscar diferentes elementos y atributos. XQuery es compatible con XPath. Es importante destacar que las expresiones XQuery (y XPath) distinguen mayúsculas de minúsculas. Por ejemplo, una expresión XQuery que hacer referencia al elemento XML "zip" no se aplicará a los elementos XML denominados "ZIP" o "Zip". A veces, esta distinción entre mayúsculas y minúsculas es pasada por alto por los programadores SQL, ya que la sintaxis de consulta SQL les permite usar "zip", "ZIP" y "Zip" para referirse al mismo nombre de columna. DB2 9 tiene más de 15 funciones SQL/XML que permiten buscar datos específicos dentro de los documentos XML, convertir datos relacionales en XML, convertir datos XML en relacionales y realizar otras tareas útiles. Algunas de las funciones de sistema que provee DB2 son: XMLATTRIBUTES La función XMLATTRIBUTES construye los atributos XML a partir de los argumentos. Esta función sólo se puede utilizar como argumento de la función XMLELEMENT. El resultado es una secuencia XML que contiene un nodo de atributo XQuery para cada valor de entrada que no sea nulo.
  • 11. Figura 07: Ejemplo de XMLATTRIBUTES Fuente: (IBM, 2013) XMLCOMMENT La función XMLCOMMENT devuelve un valor XML con un único nodo de comentario XQuery con el argumento de entrada como contenido. XMLCONCAT La función XMLCONCAT devuelve una secuencia que contiene la concatenación de un número variable de argumentos de entrada de XML. Figura 08: Ejemplo de XMLCONCAT Fuente: (IBM, 2013) XMLDOCUMENT La función XMLDOCUMENT devuelve un valor XML con un único nodo de documento XQuery con ninguno o varios nodos hijo.
  • 12. Figura 09: Ejemplo de XMLDOCUMENT Fuente: (IBM, 2013) XMLELEMENT La función XMLELEMENT devuelve un valor XML que es un nodo de elemento XQuery. Figura 10: Ejemplo de XMLELEMENT Fuente: (IBM, 2013) XMLFOREST La función XMLFOREST devuelve un valor XML que es una secuencia de nodos de elemento XQuery. Esta función toma un conjunto opcional de declaraciones de espacios de nombres y uno o varios argumentos que forman el contenido de nombre y elemento para uno o varios nodos de elemento. El resultado es una secuencia XML que contiene una secuencia de nodos de elemento XQuery o el valor nulo. El tipo de datos del resultado es XML. Si cualquiera de los argumentos expresión-contenido- elemento puede ser nulo, el resultado puede ser nulo; si todos los valores del argumento expresión- contenido-elemento son nulos y la opción NULL ON NULL está en vigor, el resultado es el valor nulo. La función XMLFOREST se puede expresar mediante XMLCONCAT y XMLELEMENT.
  • 13. Figura 11: Ejemplo de XMLFOREST Fuente: (IBM, 2013) XMLNAMESPACES La declaración XMLNAMESPACES construye las declaraciones de espacios de nombres a partir de los argumentos. Esta declaración únicamente puede emplearse como argumento de funciones específicas como XMLELEMENT, XMLFOREST y XMLTABLE. El resultado es una o varias declaraciones de espacios de nombres XML que contienen espacios de nombres con ámbito para cada uno de los valores de entrada no nulos. Figura 11: Ejemplo de XMLFOREST Fuente: (IBM, 2013)
  • 14. XMLPARSE La función XMLPARSE analiza el argumento como un documento XML y devuelve un valor XML. Figura 12: Ejemplo de XMLPARSE Fuente: (IBM, 2013) XMLPI La función XMLPI devuelve un valor XML con un nodo de instrucción de proceso XQuery. Figura 13: Ejemplo de XMLPI Fuente: (IBM, 2013) XMLQUERY La función XMLQUERY devuelve un valor XML a partir de la evaluación de una expresión XQuery utilizando posiblemente los argumentos de entrada especificados como variables XQuery.  Restricciones de uso de XMLQUERY: La función XMLQUERY no puede formar parte de los elementos siguientes: o Parte de la cláusula ON asociada a un operador JOIN o una sentencia MERGE (SQLSTATE 42972)
  • 15. o Parte de la cláusula GENERATE KEY USING o RANGE THROUGH de la sentencia CREATE INDEX EXTENSION (SQLSTATE 428E3) o Parte de la cláusula FILTER USING de la sentencia CREATE FUNCTION (escalar externa) o la cláusula FILTER USING de la sentencia CREATE INDEX EXTENSION (SQLSTATE 428E4) o Parte de una restricción de comprobación o de una expresión de generación de columnas (SQLSTATE 42621) o Una cláusula-group-by (SQLSTATE 42822) o Un argumento de una función-columna (SQLSTATE 42607)  XMLQUERY como subconsulta: Una expresión XMLQUERY que actúa como subconsulta puede estar limitada por sentencias que restringen las subconsultas. XMLROW La función XMLROW devuelve un valor XML con un único nodo de documento XQuery que contiene un nodo de elemento de nivel superior. Figura 14: Ejemplo de XMLPI Fuente: (IBM, 2013) XMLSERIALIZE La función XMLSERIALIZE devuelve un valor XML serializado de los tipos de datos especificados, generados a partir del argumento expresión-XML. XMLTEXT La función XMLTEXT devuelve un valor XML con un único nodo de texto XQuery cuyo contenido es el argumento de entrada. Figura 15: Ejemplo de XMLTEXT Fuente: (IBM, 2013)
  • 16. XMLVALIDATE La función XMLVALIDATE devuelve una copia del valor de entrada XML aumentado con la información obtenida a partir de la validación de esquema XML, incluidos los valores por omisión. Figura 16: Ejemplo de XMLTEXT Fuente: (IBM, 2013)
  • 17. Conclusión Los gestores de base de datos modernos ofrecen funcionalidades nativas para el manejo de XML, el utilizar correctamente esas funcionalidades a nivel empresariales pueden ayudar a mejorar los procesos relacionados al manejo de XML y la complejidad que estos significaban en el pasado. Recomendación Los analista de base de datos, deben analizar las necesidades relacionadas con el manejo de datos de tipo XML y analizar que gestor de base de datos, es el motor adecuado para sus requerimientos, aunque XML no es un tema nuevo, muchos administradores de base de datos, carecen del conocimiento del soporte nativo de muchos gestores y optan por manejar datos XML en forma de Texto o en forma de archivos físico, esto no es óptimo y en muchos casos implican altos costos en el desarrollo de aplicaciones que desean manejar información de este tipo.
  • 18. Anexos Figura Anexo 1: Estándar SQL 9075 Fuente: (Costilla, 2011)
  • 19. Bibliografía asptutor. (04 de 2013). http://www.asptutor.com/xml/index1.asp. Obtenido de http://www.asptutor.com/xml/index1.asp cicei. (04 de 2013). http://www.cicei.com/ocon/gsi/tutorial_xml/Estructura.html. Obtenido de http://www.cicei.com/ocon/gsi/tutorial_xml/Estructura.html Costilla, C. (2011). Introduccion A SQL/XML: SQL y XML funcionan conjuntamente. En C. Costilla. MAdrid: SINBAD-UPM Research Group. guillesql. (21 de Abril de 2013). guillesql. Obtenido de www.guillesql.es: http://www.guillesql.es/Articulos/XML_SQL_Server.aspx IBM. (04 de 2013). http://www.ibm.com/developerworks/ssa/data/tutorials/db2- cert7305/section2.html. Obtenido de http://www.ibm.com/developerworks/ssa/data/tutorials/db2-cert7305/section2.html IBM. (04 de 2013). IBM. Obtenido de http://pic.dhe.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=%2Fcom.ibm.db2.luw.sql.ref.d oc%2Fdoc%2Fr0022197.html&lang%3Des Ortiz, M. N. (4 de 2013). http://es.scribd.com. Obtenido de http://es.scribd.com/doc/64763902/Bases- de-Datos-Nativas-XML Sánchez, L. A. (2006). IBM DB2 9 pureXML, base de datos híbrida XML Relacional. Chile: IBM. wikipedia. (04 de 2013). http://es.wikipedia.org/wiki/Base_de_datos_XML. Obtenido de http://es.wikipedia.org/wiki/Base_de_datos_XML