Trabalho XML
-
Upload
henrique-madureira -
Category
Documents
-
view
113 -
download
0
description
Transcript of Trabalho XML
5/15/2018 Trabalho XML - slidepdf.com
http://slidepdf.com/reader/full/trabalho-xml 1/8
Trabalho sobre Tecnologia XML
Henrique M. Bolognese - 17
Mauro A. Filho - 26
1. O que é a tecnologia XML?
Extensible Markup Language (XML) é linguagem de marcação de dados (meta-markuplanguage) que provê um formato para descrever dados estruturados. Isso facilita declaraçõesmais precisas do conteúdo e resultados mais significativos de busca através de múltiplasplataformas. O XML também vai permitir o surgimento de uma nova geração de aplicaçõesde manipulação e visualização de dados via internet.
O XML permite a definição de um número infinito de tags. Enquanto no HTML, se as tagspodem ser usadas para definir a formatação de caracteres e parágrafos, o XML provê umsistema para criar tags para dados estruturados.
Um elemento XML pode ter dados declarados como sendo preços de venda, taxas de preço,um título de livro, a quantidade de chuva, ou qualquer outro tipo de elemento de dado. Comoas tags XML são adotadas por intranets de organizações, e também via Internet, haverá umacorrespondente habilidade em manipular e procurar por dados independentemente dasaplicações onde os quais são encontrados. Uma vez que o dado foi encontrado, ele pode ser distribuído pela rede e apresentado em um browser como o Internet Explorer 5 de váriasformas possíveis, ou então esse dado pode ser transferido para outras aplicações paraprocessamento futuro e visualização.
2. Por que utilizar XML?
Buscas mais eficientes;
Desenvolvimento de aplicações Web mais flexíveis. Isso inclui integração de dados de fontes completamente
diferentes, de múltiplas aplicações; computação e manipulação local dos dados; múltiplas formas de visualizaçãoe atualização granulares do conteúdo;
Distribuição dos dados via rede de forma mais comprimida e escalável;
Padrões abertos.
3. Qual a vantagem do XML sobre os dados relacionais CLOB e BLOB?
5/15/2018 Trabalho XML - slidepdf.com
http://slidepdf.com/reader/full/trabalho-xml 2/8
A capacidade de guardar informações com XML é muito maior que a do CLOB e BLOB.
4. Na estrutura de um arquivo XML, identifique: elemento, atributo e valor.
Elementos: descrevem dados;
Atributos: são como propriedades de um elemento, neles é fornecida mais definição sobre o elemento e comopropriedades descrevem características de objetos e classes.
Valor :
5. Fazer uma comparação entre as modelagens: Relacional, XML e Híbrida.
O modelo relacional permite ao projetista criar um modelo lógico consistente da informação aser armazenada. Este modelo lógico pode ser refinado através de um processo denormalização. Um banco de dados construído puramente baseado no modelo relacionalestará inteiramente normalizado. O plano de acesso, outras implementações e detalhes deoperação são tratados pelo sistema DBMS, e não devem ser refletidos no modelo lógico. Istose contrapõe à prática comum para DBMSs SQL nos quais o ajuste de desempenhofreqüentemente requer mudanças no modelo lógico.
Já o XML é capaz de descrever diversos tipos de dados e o seu propósito principal é a facilidade decompartilhamento de informações, sendo considerado um bom formato para a criação de documentos com dadosorganizados de forma hierárquica, como se vê frequentemente em documentos de texto formatados.
O modelo híbrido, onde se mistura o modelo relacional com XML já permite ter ambas asvantagens do modelo relacional e do XML, além de uma maior flexibilidade. Sobre essaflexibilidade, podemos destacar:
• Consultas e modificações em dados XML de maneira eficiente, permitindo extração e inserção de seções dentro
de um documento XML sem precisar substituir todo o documento;
• Interoperabilidade entre os dados relacionais e XML;
5/15/2018 Trabalho XML - slidepdf.com
http://slidepdf.com/reader/full/trabalho-xml 3/8
• Suporte a idiomas para consultas e modificações de dados para aplicativos entre domínios;
• Dados bem formados além de, opcionalmente, validar os dados de acordo com esquemas XML;
• Indexação de dados XML para processamento eficiente de consultas e boa escalabilidade e o uso de um
otimizador de consulta de primeira classe.
• Funcionalidade administrativa do servidor de banco de dados para gerenciar dados XML como, backup
recuperação e replicação.
6 – O que é Xpath? Dê um exemplo.
XPath advém de XML Path Language (linguagem de caminhos XML), usa uma sintaxe diferente da doXML e oferece uma forma flexível de referenciar diferentes partes dum documento XML. Também podeser usado para testar nodos referenciados dentro dum documento para determinar se respeitam um certo padrão.
A XML Path Language, XPath, é parte importante da família de tecnologias XML, já que ela provê a possibilidade de selecionar e filtrar dados contidos em um ou mais documentos XML. Quandotrabalhamos com XML em geral, vários são os casos de uso que surgem aos quais podemos aplicar expressões XPath para realizar pesquisas sobre esses documentos.
Exemplo de contagem de nodos:
count( /PedidosItens/Pedidos ) Pedidos é filho de PedidosItens
7 – Explique os caracteres curingas do Xpath.
Seleciona todos os elementos, independentemente do nome de elemento.
EX: livraria/*/catálogo
5/15/2018 Trabalho XML - slidepdf.com
http://slidepdf.com/reader/full/trabalho-xml 4/8
Localiza elementos emph em qualquer lugar dentro trechos do Catálogo, em qualquer lugar dentro delivraria.
8 – O que são predicados Xpath? Dê exemplos.
Em XPath uma expressão dentro de [] designa-se por predicado.
Um predicado visa especificar ainda mais um dado elemento: testanto a sua posição na árvore, o seuconteúdo, ...
/AAA/BBB[1] - Seleciona o primeiro elemento BBB
filho de AAA.
/AAA/BBB[last()] - Seleciona o último elemento BBB
filho de AAA.
9 – Dê exemplos de eixo-pai no Xpath.
.. parent::node() ../cd é o mesmo que parent::node()//child::cd
10 – Explique as funções SQL/XML:
- XMLPARSE
São usadas para ler, atualizar, criar, e manipular arquivos XML,
- XMLSERIALIZE
Fazer a serialização/deserialização. Criar um objeto a partir de um XML.
5/15/2018 Trabalho XML - slidepdf.com
http://slidepdf.com/reader/full/trabalho-xml 5/8
- XMLVALIDATE
Esta task valida tanto se o XML está sintaticamente correto (abrindo e fechando todas as tags) comotambém valida contra a DTD (linguagem para definir a estrutura de um documento XML).
- XMLEXISTS
xmlexists: as linhas retornadas contém um documento XML com o valor especificado. Retornaverdadeiro ou falso.
select name from clients where xmlexists(‘$c/Client/Address[zip = “95116”]’ passing clients.contact as“c”)
- XMLQUERY
xmlquery: retorna elementos do documento XML
select xmlquery(‘$c/Client/email’ passing contact as “c”) from clients where status = ‘Gold’
Seleciona os nós email filhos do nó Client do documento XML no campo contact da tabela clients sendoo campo status igual a ‘Gold’.
Para selecionar o texto do nó email, utilizar text()
- XMLTABLE
xmltable: retorna uma tabela relacional a partir de documentos XML.
select t.comment#, i.itemname, t.customerID, Message from items i, xmltable(‘$c/Comments/Comment’ passing i.comments as “c” columns Comment# integer path ‘CommentID’, CustomerID integer path‘CustomerID’,Message varchar(100) path ‘Message’) as t
Converte os nós Comment do documento XML no campo comments da tabela items numa tabela de
nome t com colunas Comment# (para o nó CommentID), CustomerID (para o nó CustomerID) e Message(para o nó Message)
- XMLCAST
5/15/2018 Trabalho XML - slidepdf.com
http://slidepdf.com/reader/full/trabalho-xml 6/8
11 – Considerando as vantagens de XML sobre o modelo relacional:
a. Definir um cenário de aplicação para XML
Modelo de escola com apenas uma tabela que cadastra os alunos.
A tabela apresenta dois campos:
Codaluno e aluno, sendo aluno uma campo XML que é importado dos arquivos "mauro.xml"e"china.xml"
b. Descrever o cenário em linhas gerais
- create database school using codeset utf-8 territory br;
- create table Aluno (Codaluno int not null primary key, aluno xml);
- import from "/home/usuario/ALUNO/AAluno.del" of del insert into Aluno;
- dentro de "AAluno.del":
1, "<XDS FIL=""mauro.xml""/>"2, "<XDS FIL=""china.xml""/>"
- dentro de "mauro.xml":
<aluno><Codaluno>124</Codaluno><Nome>Mauro Aguiar Filho</Nome><DataNascimento>01/01/1991</DataNascimento><Telefone>34664714</Telefone><Endereco>Rua das Tapiocas 4759</Endereco>
5/15/2018 Trabalho XML - slidepdf.com
http://slidepdf.com/reader/full/trabalho-xml 7/8
<RG>479741254853</RG><Responsavel>Mauro</Responsavel>
</aluno>
- dentro de "china.xml":
<aluno><Codaluno>125</Codaluno><Nome>Lucas Akira Yada</Nome><DataNascimento>01/01/1989</DataNascimento><Telefone>34664714</Telefone><Endereco>Rua do Rio 59</Endereco><RG>484564526</RG><Responsavel>Ricardo</Responsavel>
</aluno>
c. Justificar por que o modelo XML seria melhor do que o relacional
Porque em casos onde a estrutura dos dados é organizada em um padrão, como o nosso, o xml se tornamais eficiente se comparado ao modelo relacional, o tratamento e a manipulação dos dados em xml émais facil do que em modelos relacionais normalizados.
d. Definir consultas para o cenário
- select * from Alunos;
- select Codaluno from Aluno where xmlexists('$c/aluno[Responsavel="Mauro"]' passing Aluno.aluno
as "c");
- select Codaluno, xmlquery('$c/aluno/RG' passing aluno as "c")
from Aluno where xmlexists('$c/aluno[Nome="Lucas Akira Yada"]'passing Aluno.aluno as "c");
- select Codaluno from Aluno where xmlexists ('$c/aluno[RG="484564526"]' passing Aluno.aluno as"c");