Categorias de Documentos Categorias de Documentos XML XML Documento Orientado a Dados (DOD) – fracamente semi-estruturado representação de dados mais homogênea e estruturada <endereco> <rua>Beira-Mar</rua><numero>104</numero><complemento>apto 203</complemento> <bairro>centro</bairro><cidade>Fpolis</cidade> <cep>88010- 600</cep> </endereco> <endereco> <rua>Lauro Linhares</rua><numero>761</numero><bairro>trindade</bairro> <cidade>Fpolis</cidade><cep>88040-900</cep>
Categorias de Documentos XML. Documento Orientado a Dados ( DOD ) fracamente semi-estruturado representação de dados mais homogênea e estruturada. Beira-Mar104apto 203 - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Categorias de Documentos XMLCategorias de Documentos XML
Documento Orientado a Dados (DOD)– fracamente semi-estruturado
representação de dados mais homogênea e estruturada
Documento Orientado a Documento (DODoc)– fortemente semi-estruturado
representação fortemente textual
<anuncio><transacao>Vendo</transação>, por motivo de viagem,<produto>automóvel Gol I 97</produto>, cor azul, em ótimo estado de conservação. Preço: R$<preco>9000,00</preco>. Tratar com<contato><nome>Pedro</nome> fone</fone>99991111</fone></contato> </anuncio> <anuncio>Atenção! Se você deseja vender o seu veículo, nós realizamos o melhor negócio. <transacao>Compramos</transação> qq tipo de <produto>veículo</produto>. Ligue-nos: <contato><fone>2340011</fone> ou envie um e-mail:<eMail>[email protected]</eMail><contato></anuncio>
BD estendido para lidar com dados XML– mais adequado a DODs– funcionalidades para tratamento de dados XML
aplicadas a um BD com um modelo lógico e físico diferente BD Relacional, BDOO, ...
– pode apresentar um modelo lógico para dados XML ou apenas definir um mapeamento de um esquema lógico XML para o esquema lógico do BD
BD XML nativo– mais adequado a DODocs– gerenciamento específico de dados XML
Tipos de BDs para XMLTipos de BDs para XML
BD XML NativoBD XML Nativo Suporta um modelo lógico para dados XML
– requisitos mínimos definição de elementos, atributos, #PCDATA e ordem
Define um modelo de armazenamento físico proprietário para dados XML
Adequado a – docs XML fortemente semi-estruturados
mapeamento para BD relacional seria complexo!
– aplicações que lidam apenas com dados no formato XML
BD XML Nativo - CaracterísticasBD XML Nativo - Características
Objetivo– discussão de características encontradas ou
desejadas em BDs XML Nativos
Estudo de Caso– SGBD XML Tamino (www.softwareag.com/tamino)
“Transaction Architecture for the Management of INternet Objects”
servidor de dados XML desenvolvido pela Software AG
ColeçõesColeções
Noção lógica de um conjunto de docs XML– a decisão sobre quais docs XML pertencem a uma
coleção fica em geral a cargo da aplicação + : flexibilidade quanto ao conteúdo da coleção - : baixo nível de integridade dos dados
– em alguns casos, um esquema XML fixo pode ser associado a uma coleção
Consultas e atualizações podem ser direcionadas a coleções
Coleções - TaminoColeções - Tamino 1 BD – n coleções – n esquemas com n tipos de documentos
– tipo de documento: definição de elemento raiz
– novo doc XML: inserido em uma coleção e válido para algum tipo doc
Docs sem esquema mantidos na coleção ino:etc
tipos de documentos
ConsultasConsultas
Suporte a pelo menos uma linguagem de consulta para XML– uso mais extensivo de XPath – uso de alguns dialetos da XQuery (tendência!)
Características desejadas para uma linguagem de consulta para XML– busca por padrões (análise de conteúdo textual)– consultas declarativas– resultados de consultas
doc XML, fragmentos de docs XML ou novas estruturas XML
Consultas - TaminoConsultas - Tamino Suporte a Xpath (chamada X-Query) e XQuery estendidos Geração de docs XML como resultado
busca por padrão
AtualizaçõesAtualizações
Capacidades de atualização são variadas– possibilidade apenas de substituição de um doc
XML completo– API DOM para atualização de nodos– linguagens de atualização declarativas
exemplo: XUpdate (consórcio XML:DB) XML:DB
– consórcio de empresas responsável pelo desenvolvimento de tecnologias para BDs XML
tendência (?): XQuery como linguagem de atualização
XUpdateXUpdate Sintaxe XML
– I / E de elementos, atributos e texto– A do conteúdo de elementos e atributos
Capacidade de recuperação integral de um doc XML– seqüência textual exata do doc
Precisão do round-tripping é diretamente proporcional ao poder de expressão do modelo lógico– BDs XML garantem pelo menos round-tripping
a nível de elementos, atributos e seus conteúdos
Round-TrippingRound-Tripping - Tamino - Tamino
Duas formas de armazenamento– campo longo CLOB
utilizado em geral para docs XML sem esquema índices de texto podem ser definidos
– permite buscas por padrões
100% round-tripping
– formato nativo esquema de objetos proprietário índices sobre elementos e atributos podem ser definidos garante round-tripping a nível de hierarquia de
elementos
Integridade SemânticaIntegridade Semântica
RIs a nível de esquemas XML são limitadas– ordem hierárquica e restrições de cardinalidade– tipo de dado de elementos e atributos– valores permitidos– integridade referencial dentro de um documento XML
(recursos do tipo ID/IDREF ou key/keyref) Basicamente estas RIs são controladas em BDs
XML Carência de um mecanismo de integridade mais
robusto– similar a BD relacional (checks, triggers, ...)
Integridade referencial controlada por “funções de extensão” (para cada caso indicado na trigger)
controles de integridade
ArmazenamentoArmazenamento Docs XML “in-natura”
tratados como uma “caixa preta”– deseja-se preservar o texto do documento
indexação apenas textual (por palavra-chave)
Objetos DOM que representam os dados XML (+ usado) armazenamento clusterizado de objetos
– nodos próximos na hierarquia do doc XML são armazenados próximos fisicamente
através de uma busca em largura ou profundidade
– facilita indexação e busca de uma hierarquia de objetos apenas os elementos de mais alto nível precisam ser indexados os demais elementos são buscados via varredura linear
IndexaçãoIndexação Indexação por valor
– para elementos e atributos
Indexação de texto do doc XML Indexação de estrutura
– indexação de nodos do doc XMO associada a técnicas para localização de nodos filhos facilita consultas em docs XML sem esquema
– não se sabe quais elementos filhos um elemento possui
Indexação – SGBD eXistIndexação – SGBD eXist Índices são IDs numéricos para nodos, com uma numeração
dada por uma busca em largura– supondo uma árvore sempre completa (“nodos virtuais”)
– certas propriedades da árvore permitem calcular o ID de nodos filhos, pai, irmãos, ... ex.: maxFilhos = 4 filhos de X [ID(X)*4+1, ID(X)*4+4]
livro
título preço
nome mail
autor autor
0
nome mail
1 2 3 4
. . .
“XML & BD” 79.00
8 12
15 16 19 20
ReferênciasReferências Tecnologia XML
– http://www.w3c.org/xml
XML & BD– http://www.rpbourret.com/xml/XMLAndDatabases.htm