Introdução de XML. Dados da Web. Gerência de Dados da Web. A Web representa, nos dias de hoje, um repositório universal de dados, onde:



Documentos relacionados
XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

Dados Semi-Estruturados e XML

Programação para Internet I 4. XML. Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt

XML (extensible Markup Language) por. Rafael Port da Rocha. (Notas de Aula)

5a. Aula - XML

XMLs E INTEGRAÇÃO COM BANCOS DE DADOS

Introdução XML. Vanessa Braganholo

extensible Markup Language (XML) XML é uma linguagem de anotação. XML utiliza tags para descrever informação.

Dados Semi-Estruturados e XML. Alberto Laender - DCC/UFMG

XML - Extensible Markup Language

XML. Prof. Júlio Machado

XML XML. XML extensible Markup Language HTML. Motivação. W3C: World Wide Web Consortium XML 1.0. Mário Meireles Teixeira DEINF-UFMA

Gerência de Dados da Web - DCC922 -

Programação para Internet I Aulas 10 e 11

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução à Tecnologia Web HTML HyperText Markup Language XHTML extensible HyperText Markup Language Estrutura Básica do Documento HTML

Gerenciamento de Dados XML

5 Tecnologias estudadas

BANCO DE DADOS I Atualizado em 13 de maio de 2009

Utilização de XML no Desenvolvimento de Hiperdocumentos Educacionais

Sumário. XML (extensible Markup Language)

XML e XSL. Ciência da Computação DESENVOLVIMENTO DE APLICAÇÕES PARA WEB. Claudinei Dias prof.claudinei.dias@gmail.com

XML para transferência de dados Estrutura hierárquica do XML DTDs e XML Schema Consultas de documentos XML: XPath e XQuery Transformação de

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Manual para utilização da funcionalidade de importar arquivo XML para prestação de contas

Bancos de Dados Orientados a Grafos. Mateus Lana e Thiago Santana

Bases de dados semi-estruturadas, XML

Revisando Banco de Dados. Modelo Relacional

Mestrado em Engenharia Informática Processamento Estruturado de Documentos 2004/ de Janeiro de 2005

XML Schema. Um XML schema descreve a estrutura de um documento XML.

Extensible Markup Language (XML) Júnio César de Lima Cedric Luiz de Carvalho. Instituto de Informática Universidade Federal de Goiás

Formas de Gerência de Dados XML

XML XML. Motivação. Mário Meireles Teixeira DEINF-UFMA

Sumário. Gerência de Dados da Web - DCC922 - Linguagens de Consulta. Características Desejáveis de uma LC/DSE. Linguagens de Consulta

Dados Semi-Estruturados e XML

Série Rações Semanais Xpath e XSLT Rogério Araújo

XML Schema. Vanessa Braganholo. Curso baseado em mini-cursos apresentados no SBBD. Autores: Carlos Heuser, Carina Dorneles e Vanessa Braganholo

Webdesign HTML. Introdução a HTML e as principais tags da linguagem. Thiago Miranda dos Santos Souza

Informática. Banco de Dados Relacional. Professor Julio Alves.

DTD. Vanessa Braganholo.

XML (extensible Markup Language)

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

Korth Silberschatz Sundarshan. Sistema de Banco de Dados, 5/E

Transformação de documentos XML

Módulo III Introdução a XML

XML: uma introdução prática X100. Helder da Rocha

INE BDNC. Bancos de Dados XML

Simbiose entre Tecnologias: XML e Java

AULA 1 INTRODUÇÃO A BANCO DE DADOS E VISÃO GERAL DO SQL CONCEITUANDO BANCO DE DADOS MODELO RELACIONAL

Compressão de Textos. Introdução. Introdução. Introdução. O volume de informação textual disponível on-line é imenso:

Definição da Sintaxe Abstrata de Potigol em XML

BCD29008 Banco de dados

Capítulo 1. Importação de Dados de Instituições Financeiras - Arquivo TXT 3

Conteúdo. Integração de Dados, Web e Warehousing. Introdução. Introdução. BD Heterogêneos. Introdução. Introdução

Modelo para a representação de informações, utilizado por aplicações Web que trabalham com a tecnologia AJAX.

Banco de Dados I. Prof. Edson Thizon

BCD29008 Banco de dados

Ricardo Couto Antunes da Rocha 2005 Ricardo Couto Antunes da Rocha

Sistema de Banco de Dados. UNIDADE 1 Introdução aos Sistemas de Bancos de Dados Professor: Armando Hage

Modelagem de Dados Usando o Modelo Entidade-Relacionamento (ME-R)

Modelagem de Dados MODELAGEM DE DADOS. Lista de Exercícios 01. Luiz Leão Lista de Exercícios AV1

Arquitetura de Banco de Dados

Aula 2 BD Introdução. Profa. Elaine Faria UFU

Banco de dados. Conteúdo: Modelo relacional Prof. Patrícia Lucas

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

XML: uma introdução prática X100. Helder da Rocha

Banco de dados. Objetivo: Reter os dados de forma que possam ser utilizados em outros momentos

MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES DE BANCO DE DADOS RELACIONAIS

Universidade Federal da Paraíba CCEN Departamento de Informática Disciplina: Banco de Dados. Aula 1 Introdução a Banco de Dados

Mapping of Topic Map ISO Norm for

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

XML. 1. XML: Conceitos Básicos. 2. Aplicação XML: XHTML 3. Folhas de Estilo em Cascata XML

Web Design Aula 11: XHTML

GERÊNCIA DE DADOS SEMIESTRUTURADOS -DTD. Prof. Angelo Augusto Frozza, M.Sc.

Um Tradutor de Esquemas Relacionais em XML para Esquemas SQL

Conceitos e arquitetura do banco de dados. Andre Noel

O que é modelo lógico. Tipos de modelo

Banco de Dados I 2007 Módulo II: Modelagem Entidade- Relacionamento versus Relacional. (Aula 1) Clodis Boscarioli

Bancos de Dados NoSQL

Banco de Dados. Gerenciamento de Dados e Informação Fernando Fonseca, Ana Carolina Salgado & Robson Fidalgo

01 - Quais as principais vantagens da utilização de um Sistema de Banco de Dados em relação aos sistemas tradicionais de gerenciamento de arquivos?

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

BCD29008 Banco de dados

Normalização para Bancos de Dados Relacionais

Internet. Gabriela Trevisan Bacharel em Sistemas de Infomação

L A C Laboratory for Advanced Collaboration

PÓS-GRADUAÇÃO EM MATEMÁTICA COMPUTACIONAL INFORMÁTICA INSTRUMENTAL Aula 06: Introdução Linguagem HTML

Notas sobre TinyXML (TP2)

Tecnologia da Informação

Sistemas de Banco de Dados

Documentos XML 1/20. Exemplo de documento XML:

TÉCNICAS DE PROGRAMAÇÃO. Estrutura de dados

XTREM: UMA FERRAMENTA PARA ARMAZENAMENTO DE DOCUMENTOS XML EM BANCO DE DADOS RELACION ABS

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas

MODELAGEM DE DADOS UNIDADE 2 Projeto de Banco de Dados. Luiz Leão

Transcrição:

Dados da Web Introdução de XML Banco de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM A Web representa, nos dias de hoje, um repositório universal de dados, onde: a quantidade de sítios existentes e o volume disponível de dados é muito grande; a informação está espalhada e desorganizada; os sítios estão cada vez mais complexos para se navegar; geralmente, é difícil manipular/consultar dados de múltiplas fontes. Nesse contexto, recuperação de informação na Web consiste, basicamente, em busca por palavras-chave e navegação (browsing) na Web. 1 2 Dados da Web Gerência de Dados da Web Algumas características dos dados da Web são: encontram-se disponíveis, geralmente, por meio de documentos textuais; são utilizados apenas para "consumo humano"; são constantemente alterados; possuem estrutura implícita e não-declarada (dados semiestruturados). 3 Esta área trata de problemas relacionados a coleta, extração, consulta, modelagem, armazenamento, transformação e integração de dados existentes na Web. Exemplo de uma consulta típica: Um usuário deseja encontrar restaurantes de comida japonesa na região da Savassi em Belo Horizonte. Como realizar tal consulta? Como extrair e processar dados contidos em diferentes fontes da Web? Há necessidade de padrões para representação e troca de dados semi-estruturados. Há necessidade de se adaptar a tecnologia tradicional de bancos de dados. 4

Gerência de Dados da Web Gerência de Dados da Web Na resenha, há alguns itens da culinária japonesa e preços que podem ser importantes para uma consulta. Há alguns dados estruturados, referentes ao restaurante em questão, nesse sítio. 5 6 Gerência de Dados da Web As principais contribuições da tecnologia de banco de dados para a área de gerência de dados da Web são: modelagem de dados; linguagens de consulta; mecanismos para manutenção de integridade; técnicas para processamento de consultas; estruturas para armazenamento e indexação de grandes volumes de dados. Dados estruturados são dados que possuem uma estrutura bem definida e rígida. Ex.: tuplas de uma relação em um esquema relacional. Dados não-estruturados são dados que não possuem alguma estrutura. Ex.: páginas no formato HTML, onde aparecem tags pré-definidas que especificam apenas a formatação dos dados e não o significado dos mesmos. Dados semi-estruturados são dados que possuem uma estrutura flexível (não rígida). Ex.: dados bibliográficos oriundos de fontes heterogêneas, arquivos BibTex, dados da Web. 7 8

Algumas características de dados semi-estruturados são: possuem estrutura (esquema) irregular, implícita e nãodeclarada; são heterogêneos, envolvendo diferentes tipos; Exemplo de dados semiestruturados: arquivo BibTex são auto-descritivos (self-described), já que o esquema é misturado com os valores dos dados; o esquema evolui com a evolução dos dados. 9 10 Exemplo de uma página Web com dados semiestruturados: dados bibliográficos da DBLP Artigos de periódicos Artigos de anais 11 12

Para representar dados semi-estruturados, utilizam-se grafos direcionados. Os nós internos representam objetos complexos (atributos compostos). Os nós externos representam objetos atômicos (atributos simples). As arestas possuem rótulos que representam: nomes de atributos compostos e simples que referenciam os objetos complexos e atômicos, respectivamente; relacionamentos entre os objetos. 13 14 XML Representação de bancos de dados relacionais: XML (extensible Markup Language) corresponde ao padrão W3C para complementação da HTML, visando o intercâmbio de dados na Web. Motivação da criação da XML: HTML descreve apenas apresentação (formato), não incluindo o esquema dos dados presentes em documentos. XML descreve conteúdo. Aplicações atuais necessitam de componentes de software especiais (wrappers) para extração automática de dados da Web. 15 16

XML XML HTML descreve apresentação. Marcadores (tags) são definidos para indicar estrutura. XML descreve conteúdo. Um documento XML pode conter uma descrição opcional de sua gramática (ex.: Document Type Definition). 17 18 XML Sintaxe Básica XML Sintaxe Básica Os componentes básicos de um documento XML são denominados elementos. <author> Abiteboul </author> <title> Regular path queries with constraints </title> Os pares <author> </author> são denominados marcadores e são definidos pelo usuário Os elementos podem ser decompostos em sub-elementos. Os elementos podem ser repetidos para representar uma determinada coleção. <authors> <author> Abiteboul </author> <author> Vianu </author>... </authors> <page> <first> 122 </first> <last> 133 </last> </page> 19 20

XML Sintaxe Básica Atributos definem propriedades dos elementos e são definidos como pares (nome = valor). <product > <name language = "French"> trompete six trous </name> <price currency = "Euro"> 420.12 </price> <address format = "XLB56" language = "French"> <street> 31 rue Croix-Basset </street> <zip> 92310 </zip> <city> Sevres </city> <country> France </country> </address> </product > Documentos XML Bem Formados Um documento XML é considerado bem formado se: todos os marcadores estiverem corretamente aninhados; os atributos forem únicos. Os elementos de um documento XML encontram-se ordenados no mesmo; porém, atributos não se encontram ordenados. <person> <fname> John </fname > <lname> Smith </lname > </person> <person> <lname> Smith </lname> <fname> John </fname> </person> <person> fname = "John" lname = "Smith" /> <person> lname = "Smith" fname = "John" /> Não são documentos equivalentes São documentos equivalentes 21 22 IDs e IDREFs IDs e IDREFs Referências permitem a criação de documentos XML cuja representação interna corresponde a um grafo. ID: atributo usado para identificar univocamente um elemento em um documento XML. Valores associados devem ser distintos. IDREF: atributo que referencia um elemento por meio do valor de seu atributo ID. Valor associado deve existir como valor de algum atributo ID. IDREFS: atributo que referencia um conjunto de elementos por meio dos valores de seus atributos ID. Valores associados devem existir como valores de atributos ID. Tais atributos não são tipados: referências nem sempre são feitas ao mesmo "tipo" de elemento. Exemplo: <state id="e3"> <scode> MG </scode> <sname> Minas Gerais </sname> </state> <city id="c5"> <ccode> OP </ccode> <cname> Ouro Preto </cname> <state-of-city idref="e3" /> </city> Faz referência ao estado "e3" 23 24

Uma (Document Type Definition) serve como uma gramática para o documento XML correspondente. Uma pode ser vista como um esquema de banco de dados para os dados representados pelo documento XML. <!DOCTYPE db [ <!ELEMENT db (r1*, r2*)> <!ELEMENT r1 (a,b)> <!ELEMENT r2 (b, c)> <!ELEMENT a (#PCDATA)> <!ELEMENT b (#PCDATA)> <!ELEMENT c (#PCDATA)> ]> <db> </db> <r1> <a> a1 </a> <b> b1 </b> </r1> <r1> <a> a2 </a> <b> b2 </b> </r1> <r2> <b> b1 </b> <c> c1 </c> </r2> <r2> <b> b2 </b> <c> c2 </c> </r2> <r2> <b> b3 </b> <c> c2 </c> </r2> 25 26 Declaração de atributos em uma : Declaração de ID, IDREF e IDREFS em uma : <product> <name language = "French" department = "Music"> trompete six trous </name> <price currency = "Euro"> 420.12 </price> </product> <!ATTLIS name language CDATA # REQUIRED department CDATA # IMPLIED> <!ATTLIS price currency CDATA # IMPLIED> 27 28

Declaração de ID, IDREF e IDREFS em uma : <!DOCTYPE family [ <!ELEMENT family (person)*> <!ELEMENT person (name)> <!ELEMENT name (#PCDATA)> <!ATTLIST person id ID #REQUIRED mother IDREF #IMPLIED father IDREF #IMPLIED children IDREFS #IMPLIED ]> Principais limitações de uma, para representação de esquemas, são: imposição de ordem entre os elementos; "tipos" associados aos elementos são globais; não há distinção entre referências. Outras propostas para representação de esquemas são: DCD (Document Content Description); XDR (XML-Data Reduced); SOX (Schema for Object-Oriented XML); XML Schema. 29 30 Documentos XML válidos Um documento XML é considerado válido se, além de bem formado, possuir uma e estiver estruturado de acordo com ela. Quanto a identificadores e referências, necessita-se apenas que os valores de atributos do tipo ID sejam únicos e que as referências dos tipos IDREF e IDREFS sejam para identificadores ID existentes. Linguagens de Consulta Algumas linguagens de consulta importantes são: WebSQL (para dados da Web); Lorel (para dados semi-estruturados); XML-QL (para dados XML); XQuery (para dados XML). 31 32

Armazenamento de Documentos XML Para armazenar um documento XML em um banco de dados, pode-se utilizar um SGBD para armazenar: o documento XML como texto; o conteúdo (elementos) do documento XML como registros. 33 Armazenamento de Documentos XML Armazenamento do documento XML como texto. Geralmente, tal forma é usada quando o documento XML não possui uma. Um SGBD relacional ou de objeto pode ser usado para armazenar documentos XML inteiros como campos de texto em tuplas ou objetos do esquema do banco de dados. Armazenamento do conteúdo do documento XML como registros. Tal forma é usada quando o documento XML possui uma. Como o documento XML segue uma estrutura, deve-se projetar um banco de dados relacional ou de objeto para armazenar os elementos do mesmo. A técnica necessita de algoritmos de mapeamento entre o esquema do banco de dados e a estrutura do documento XML. 34 Extração de Documentos XML Para extrair um documento XML de um banco de dados, pode-se criar um documento XML personalizado a partir de um determinado banco de dados relacional. Tuplas de relações de bancos de dados relacionais podem ser formatadas como elementos de documentos XML, visando migração e exibição de dados via Web. Para tanto, um componente do SGBD é usado para tratar as conversões necessárias de tuplas de bancos de dados relacionais para elementos de documentos XML. 35