8
 Trabalho sobre Tecnologia XML Henrique M. Bolognese - 17 Mauro A. Filho - 26 1. O que é a tecnologia XML? Extensible Markup Lan guag e (XML ) é ling uag em de marc açã o de dad os (met a-markup language) que provê um formato para descrever dados estruturados. Isso facilita declarações  mais precisas do conteúdo e resultados mais significativos de busca através de múltiplas plataformas. O XML também vai permitir o surgimento de uma nova geração de aplicações de 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 tags podem ser usadas para definir a formatação de caracteres e parágrafos, o XML provê um sistema 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. Como as tags XML são adotadas por intranets de organizações, e também via Internet, haverá uma cor respondente habilidade em manipular e pro cura r por dad os independentemente das aplicaçõ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árias formas possíveis, ou então esse dado pode ser transferido para outras aplicações para processamento 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ção e 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? 

Trabalho XML

Embed Size (px)

DESCRIPTION

Uploaded from Google Docs

Citation preview

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");

5/15/2018 Trabalho XML - slidepdf.com

http://slidepdf.com/reader/full/trabalho-xml 8/8