Topicos Avanzados de Bases de Datos en la Web



Documentos relacionados
IIC Tópicos Avanzados en Bases de Datos. Una introducción a XML

Almacenamiento de documentos XML

extensible Markup Language (XML)

extensible Markup Language

Bases de Datos XPath - XQuery 1. XML: XPath - XQuery. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006

Fundamentos de las tecnologías de la información

1 Introducción a XML

XML. María Consuelo Franky. Universidad Javeriana 2009

Depto de Cs e Ing. de la Computación Universidad Nacional del Sur

Transformación de documentos XML con

M. Carmen Fernández Panadero

Introducción a XML - Validación y Parseo. Huibert Aalbers, Senior Certified Software IT Architect

Bases de Datos XML 1 XML. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006

Web Services. Introducción

Sistemas de Información 12/13 XML (extensible Mark-up Language)

Índice. HTML HyperText Markup Language. Conceptos básicos. Qué es HTML? Diseño de servicios Web HTML 1

Introducción a XML. Simon Pickin Ingeniería Telemática. Basado en una presentación de M. Carmen Fernández Panadero <mcfp@it.uc3m.

Visualización y Transformaciones en XML

XML. Introducción. Cómo se usa? XML Tree. Sintaxis XML

Capítulo 1 Documentos HTML5

Unidad II. Interfaz Grafica (continuación ) Basado en clases de Ing. Carlos A. Aguilar

Bases de Datos Multimedia

Tema 4 Metadatos. Eduardo Martínez Graciá Humberto Martínez Barberá

LOS LENGUAJES DE MARCADO APLICADOS A LOS REGISTROS BIBLIOGRÁFICOS. XML MARC DTD; XML MARC SCHEMA.

IIC Tópicos Avanzados en Bases de Datos. Extracción de Información en XML: XPath con atributos y XQuery

Agenda XML XML XML XML XML. 1.1 Conceptos básicos de XML. 1.2 Ejemplos de lenguajes basados en XML. 1.3 Estructura de un documento XML

XSL: extensible Style Language. Anabel Fraga

DISEÑO E IMPLEMENTACIÓN DE UNA BASE DE DATOS PARA LA ONG ASEM

Leer XML con XMLReader en el aula

Práctica de introducción a

Ejercicios del bloque de Web de Sistemas de Información:

Tecnología Multimedia

GLOSARIO. un conjunto de noticias, ordenado por fecha. CMF (Content Management Framework) - Entorno a programación de

BASE DE DATOS UNIVERSIDAD DE LOS ANDES FACULTAD DE MEDICINA T.S.U. EN ESTADISTICA DE SALUD CATEDRA DE COMPUTACIÓN II. Comenzar presentación

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

IES Pablo Serrano-ASIR1D/DAM1D-B.Soler XML

Curso PHP Curso Online Analista Programador Web PHP

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

TEMA: DESARROLLO DE APLICACIONES WEB INTERACTIVAS UTILIZANDO LA TÉCNICA AJAX AUTOR: MERY SUSANA ZAMBONINO BAUTISTA

BASE DE DATOS RELACIONALES

XML práctico Bases esenciales, conceptos y casos prácticos (2ª edición)

FORMACIÓN EN ACADEMIAS GP 3.1

Roberto Gómez Cárdenas Qué es DOM?

TEMA 35: Estándares SGML y XML. Entornos de aplicación.

HTML. HyperText Markup Language (Lenguaje de Marcas de Hipertexto)

1. Resumen Objetivos Introducción. 3

XIII Reunión de Usuarios Aleph México. MarcXML. Egar Arturo Garcia Cárdenas

SISTEMAS DE INFORMACIÓN III TEORÍA

PREGUNTAS TIPO (EXAMEN DE OFIMÁTICA AVANZADA)

Capí tulo IV. Lenguajes de estilo

Servidores Web E2B2C. Leandro Radusky Esteban Lanzarotti. Nov 2014

Análisis y Diseño de Sistemas de

XML y XQuery. Qué es XML? Qué es XML? (II) Ejemplo de fichero XML. Cuerpo de un documento XML. Estructura de un documento XML

Registro (record): es la unidad básica de acceso y manipulación de la base de datos.

PREPARATORIA DIURNA DE CUAUTLA

Base de datos relacional

XML. Escuela Técnica Superior de Ingeniería de Telecomunicación Universidad Rey Juan Carlos. Marzo de gsyc-profes (arroba) gsyc.urjc.

XML. Necesitamos un formato de datos: Posibles usos. Estandard Robusto Extensible

Objetos educativos y estandarización en e-learning: Experiencias en el sistema <e-aula>

Trabajo final de Ingeniería

Figura 4.1 Clasificación de los lenguajes de bases de datos

XML, parte 3. M. en C. Erika Vilches

SQL Server Business Intelligence parte 1

Tema 1: Introducción

La Web Semántica como herramienta para e-learning

DAW LENGUAJES DE MARCAS. Tema 1: Reconocimiento de las características de los Lenguajes de Marcas

Tema 11 Bases de datos. Fundamentos de Informática

Unidad 1. Introducción a HTML (I)

GENERACIÓN Y CONSTRUCCIÓN DE DOCUMENTOS XML

Servidores Donantonio

Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. cjimenez@inf.udec.cl, tamrstro@inf.udec.cl

Internet - Web. Internet - Web. Internet. Internet. Diseño de Sitios Web Desarrollo de Paginas Web. Qué es la Internet? - Qué es la Web?

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

Hojas de Estilos XSLT en el aula. Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

Desarrollo de una Base de Datos Nativa XML

Presentación del Curso Virtual PROGRAMACIÓN WEB PHP CON MYSQL AVANZADO

Componentes de Integración entre Plataformas Información Detallada

Informe Final Desarrollo del Proyecto Áreas Naturales Protegidas del Ecuador. Desarrollado por: Jessica Nathaly Correa María Isabel Granda.

Formal Models of Web Queries

DATA WAREHOUSING (ENERO DE 2003) Documento creado por Ing. Héctor H. Martínez Orpinel

Componente del sistema operativo que maneja el acceso a los archivos.

XML: extensible Markup Language (Parte I) Ingeniería de la Información

PROCESADORES DE LENGUAJES I PRÁCTICA DE LABORATORIO 7

Recuperación de información Bases de Datos Documentales Licenciatura en Documentación Curso 2011/2012

Software de sistema: Programas genéricos que permiten gestionar los recursos del ordenador.

XML Namespaces. Sergio Luján Mora.

Programación en Internet Curso Índice

Programación del Módulo Profesional. Lenguajes de Marcas y Sistemas de Gestión de Información. Del Ciclo Formativo de Grado Superior

Unidad 6: DTD. JJ Taboada León IES San Sebastián, Departamento de Informática LENGUAJE DE MARCAS Y SGI Curso 2011 / 2012

10776 Developing Microsoft SQL Server 2012 Databases

Capitulo 5. Implementación del sistema MDM

XML, parte 2. M. en C. Erika Vilches

Tema: Maquetación Web y CSS

5.1 Introducción a XSL

Introducción a XQuery Autor: Jorge Huedo Díaz Master Oficial en Tegnologías de la Información y Sistemas Informáticos

Capítulo 12: Indexación y asociación

Definición de XQuery.

Capitulo VI. Conclusiones.

UNIVERSIDAD DE EL SALVADOR FACULTAD MULTIDISCIPLINARIA DE OCCIDENTE TEMA: XHTML CATEDRA: INTRODUCCION A LA PROGRAMACION EN INTERNET

Transcripción:

Topicos Avanzados de Bases de Datos en la Web Introducción a XML Profesor: Alejandro Vaisman 1er. Cuatrimestre, 2007 4/16/2007 1

XML XML es el lenguaje estándar para intercambiar información en la Web. Ampliamente usado para almacenar información en la Web. Siguiente generación de buscadores. Algunas de las tecnologías asociadas al uso de XML ya están maduras. Un área con muchos problemas de investigación abiertos. Interesantes Relevantes. No triviales. 4/16/2007 2

Datos Dada una colección grande de datos, Cómo organizar/representar los datos? modelos de datos crítico con respecto al almacenamiento, recuperación, y data management Cómo recuperar eficientemente la información de los datos? Queries Cómo manejar eficientemente los datos? actualizaciones (updates) Los datos se encuentran típicamente en documentos y bases de datos relacionales: los sistemas de la base de datos relacionales dominan los sistemas comerciales XML es el estándar de facto para el intercambio de datos 4/16/2007 3

Documentos vs. Bases de datos Los documentos son, típicamente, pequeños, mientras que las bases de datos pueden se muy grandes Documentos: usualmente estáticos, mientras que las bases de datos son dinámicas. Un documento has tiene una estructura implícita, mientras una base de datos tiene una estructura explícita. Los documentos son, usualmente, semi-estructurados, y las bases de datos son estructuradas, restringida según un esquema. Los documentos are human-friendly, y las bases de datos son machine-friendly Problemas de los documentos incluyen presentación, edición, codificacion de caracteres, codificación de languajes, mientras las bases de datos se focalizan en modelo, consultas, control de concurrencia, performance 4/16/2007 4

Documentos vs.bases de Datos 4/16/2007 5

Porqué estudiar XML? Enorme demanda de data exchange Entre plataformas Entre empresas Enorme demanda de data integration Fuentes de datos heterogéneas. Fuentes de datos distribuídas en diferentes ubicaciones. XML (extensible Markup Language) se transformó en el primer modelo standard para data exchange en la Web y un modelo de datos uniforme para data integration. 4/16/2007 6

Porqué no HTML? Amazon publica un catálogo de ventas de libros Fuente de datos: base de datos relational Publicación: páginas HTML generadas de la base de datos relacional Los clientes quieren consultar el catálogo pueden solo acceder a las paginas web publicadas (ergo, necesitan un parser) Solo les interesa información de libros sobre las Armas de Destrucción Masiva, y solo les interesa información sobre ADM escritos por Bush -- En SQL: select B from book B where B.title contains WMD and B.author = Bush 4/16/2007 7

Cuál es el problema de HTML? Un cambio de menor importancia del formato al documento del HTML puede romper el parser - y dar una respuesta errónea la consulta Porque? Los tags HTML son predefinidos y fijos describen el formato y no la estructura de los datos HTML es bueno para presentación es human-friendly, pero no ayuda a la extracción automática de datos mediante programas 4/16/2007 8

Una solución XML 4/16/2007 9

XML vs. HTML XML tags: user-defined describen la estructura de los datos XML es human-friendly Y computer-friendly. HTML es human-friendly PERO NO computer-friendly. HTML tags: Predefinidos y fijos Describen formato y no estructura Orientados a consumo por parte de personas y no de máquinas 4/16/2007 10

Acerca de XML XML basics: elementos, atributos, trees Document Type Definition types : element type definition constraints : ID/IDREF XML query Languages XPath XQuery, XSLT 4/16/2007 11

Historia: SGML, HTML, XML SGML: Standard Generalized Markup Language Charles Goldfarb, ISO 8879, 1986 DTD (Document Type Definition) Herramienta poderosa y flexible para estructurar información, pero Una implementación completa, genérica de SGML ha demostrado ser extremadamente dificil. Herramientas para trabajar con documentos SGML han demostrado ser muy caros. Dos sub-languages desplazaron a SGML: HTML: HyperText Markup Language (Tim Berners-Lee,1991). Describe presentación. XML: extensible Markup Language, W3C, 1998. Describe contenido. 4/16/2007 12

De HTML a XML El HTML es bueno para presentación (human-friendly), pero no ayuda a la extracción de datos automática por medio de los programas (no user-friendly). Porqué? Los tags HTML son: Predefinidos y fijos Describe el display format, no la estructura de los datos. 4/16/2007 13

XML: Una introducción XML tags: user-defined describen la estructura de los datos 4/16/2007 14

XML vs. HTML Nuevos tags, user-defined describen la estructura en lugar del formato Las estructuras se pueden anidar arbitrariamente (aun en forma recursiva) Opcionalmente puede describirse su gramática (DTD) y validar a estructura Para que se puede usar XML? Standard para intercambio de datos en la Web Un modelo de datos uniforme para data integration XML El standard XML no define como debe desplegarse la información Style sheet: provee browsers y un conjunto de reglas de formateo a aplicar a elementos particulares CSS (Cascading Style Sheets), originalmente para HTML XSL (extensible Style Language), for XML 4/16/2007 15

XML El usuario puede definir tags: <book>, <title>, etc. La estructura se puede anidar arbitrariamente 4/16/2007 16

XML La estructura se puede definir recursivamente 4/16/2007 17

Tags y Texto XML consiste en tags y texto Los tags vienen en pares: markups start tag, e.g., <course> end tag, e.g., </course> Los tags deben anidarse correctamente XML tiene un único tipo básico : text, llamado PCDATA (Parsed Character DATA) 4/16/2007 18

Elementos XML Elemento: el segmento entre el tag inicial y su correspondiente tag final. Subelemento: la relacion entre un elemento y sus elementos componentes. <person> <name> Alejandro Vaisman </name> <tel> (5411) 4576 3390 ext. 710 </tel> <email> avaisman@dc.uba.ar </email> <email> avaisman@cs.toronto.edu</email> <oldemail>avaisman@dcc.uchile.cl</oldemail> </person> 4/16/2007 19

Elementos XML Elemento: el segmento entre el tag inicial y su correspondiente tag final. Subelemento: la relacion entre un elemento y sus elementos componentes. <person> <name> Alejandro Vaisman </name> <tel> (5411) 4576 3390 ext. 710 </tel> <email> avaisman@dc.uba.ar </email> <email> avaisman@cs.toronto.edu</email> <oldemail>avaisman@dcc.uchile.cl</oldemail> </person> 4/16/2007 20

Estructura Anidada Los tags anidados pueden utilizarse para expresar varias estructuras, e.g., records : <person> <name> Alejandro Vaisman </name> <tel> (5411) 4576 3390 ext. 710 </tel> <email> avaisman@dc.uba.ar </email> <email> avaisman@cs.toronto.edu</email> </person> una lista: representada usando los mismos tags repetidamente: <person> </person> <person> </person> 4/16/2007 21

Estructura Ordenada Los elementos XML estan ordnados! Como representar conjuntos en XML? Como representar un par no ordenado (a, b) en XML? <person> <name> Alejandro Vaisman </name> <tel> (5411) 4576 3390 ext. 710 </tel> <email> avaisman@dc.uba.ar </email> <email> avaisman@cs.toronto.edu</email> </person> 4/16/2007 22

Estructura Ordenada Los elementos XML estan ordnados! Como representar conjuntos en XML? Como representar un par no ordenado (a, b) en XML? <person> <name> Alejandro Vaisman </name> <tel> (5411) 4576 3390 ext. 710 </tel> <email> avaisman@dc.uba.ar </email> 1er. e-mail <email> avaisman@cs.toronto.edu</email> 2do. e-mail </person> 4/16/2007 23

Estructura Ordenada Los siguientes elementos son considerados distintos <person> <name> Alejandro Vaisman </name> <tel> (5411) 4576 3390 ext. 710 </tel <email> avaisman@dc.uba.ar </email> <email> avaisman@cs.toronto.edu</email> </person> <person> <name> Alejandro Vaisman </name> <tel> (5411) 4576 3390 ext. 710 </tel> <email> avaisman@cs.toronto.edu</email> <email> avaisman@dc.uba.ar </email> </person> 4/16/2007 24

Elementos Especiales Elemento raíz: Un documento XML consiste de un sinple elemento llamado root, e.g., Elemento vacío: elemento especial que indica contenido no-textual Un elemento puede contener atributos a ser interpretados por las aplicaciones. 4/16/2007 25

Atributos XML Un tag inicial puede contener atributos describiendo algunas propiedades del elemento (e.g., dimensión o tipo) Referencias (relevantes solo en presencia de un DTD): 4/16/2007 26

La estructura de los Atributos XML No pueden ser anidados estructura flat Los nombres de los atributos XML deben ser únicos. Es erróneo escribir <person pal= Blair pal= Saddam >.. Los atributos XML NO estan ordenados <person id = 011 pal= 012 > <name> George Bush</name> </person> Es lo mismo que: <person pal= 012 id = 011 > <name> George Bush</name> </person> Atributos vs. subelementos: unordered vs. ordered, y atributos no pueden anidarse subelementos no pueden representar referencias 4/16/2007 27

Otras construcciones XML Declaración XML: información de versión <?xml version= 1.0?> Comentarioss: <!-- This is a comment. Processors will ignore me --> CDATA: bloque de escape conteniendo caracteres que, de otra manera se reconocería como markup: <![CDATA[ content]]> e.g., <![CDATA[ <start> this is not an element </end>]]> Es decir, todo lo que esta dentro de CDATA se interpreta como caracteres. PI (Processing Instruction): para aplicaciones, no parsers <?instruction?> Ejemplo: Asociar una hoja XSL con un documento XML <?xml:stylesheet href= http://homepages.inf.ed.ac.uk/~wenfei/book.xsl type= text/xsl?> 4/16/2007 28

Documentos XML Bien Formados Un documento esta bien formado, si satisface dos restricciones (donde solo elementos y atributos se consideran): Los tags deben anidarse apropiadamente Los atributos deben ser únicos. Constraints muy débiles: Prácticamente aseguran que el documento XML podrá generar un labeled tree. 4/16/2007 29

Bases de datos relacionales y XML Curso Nombre Pab. Aula Profesor BD I TABD PI-I Bases de datos Tópicos Avanzados de BD en la Web Introducción al Procesamiento de imágenes I 8 Frías I 6 Vaisman I 4 Mejail Cómo se puede almacenar esta información en XML? Cómo lo haría si tuviera varias relaciones? 4/16/2007 30

Un documento XML Completo 4/16/2007 31

El modelo de árbol XML Un documento XML se modela como un node-labeled ordered tree. Element node: típicamente interno, con un nombre (tag) e hijos (subelementos y atributos), e.g., student, name. Attribute node: nodo hoja con nombre (tag) y texto, e.g., @id. Text node: nodo hoja con texto (string) pero sin nombre (tag). Un documento XML tiene una única representación como árbol? 4/16/2007 32

El modelo de árbol XML(cont.) 4/16/2007 33