Consultas em xml – xpath

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1195 palavras )
  • Download(s) : 0
  • Publicado : 14 de março de 2013
Ler documento completo
Amostra do texto
Tecnologias de Banco de Dados para a Web Semântica

Consultas em XML – XPath
Marco A. Casanova

Módulo 2a –

08/09/03

(c) Marco A. Casanova - PUC-Rio

1

Tópicos
• Introdução • Sintaxe básica • Expressões de caminho para local • Outros tipos de expressões • Funções pré-definidas • Exemplos • Referências

08/09/03

(c) Marco A. Casanova - PUC-Rio

2

Introdução
• XPath
–linguagem para endereçar elementos de documentos XML
• utiliza expressões de caminho • define uma biblioteca de funções

– publicada como W3C Recommendation em novembro/1999 – projetada para ser utilizada por XSLT, XPointer e outros parsers de XML

08/09/03

(c) Marco A. Casanova - PUC-Rio

3

10.000]

08/09/03

(c) Marco A. Casanova - PUC-Rio

6

Sintaxe básica
•Endereçamento de elementos:
– documentos XML podem ser representados como árvores – XPath usa padrões para identificar nós em um documento XML:
• um padrão em XPath é uma lista de nomes de elementos, separados por barras, que descreve um caminho no documento • o padrão "seleciona" os elementos que casam com o caminho
08/09/03 (c) Marco A. Casanova - PUC-Rio 7
leilão

data
20000829

lote

no
1valor
20.000

obra
Chalupa Adernada

Sintaxe básica
• Exemplos de endereçamento de elementos:
– se o caminho começa com "/", então representa um caminho absoluto para um elemento:
• "selecione todos os elementos "valor" de todos os elementos "lote" de "leilao" " /leilao/lote/valor

– se o caminho começa com "//", então todos os elementos no documento que satisfazem o critério sãoselecionados, mesmo que ocorram em níveis diferentes da árvore:
• "selecione todos os elementos "valor" no documento" //valor
08/09/03 (c) Marco A. Casanova - PUC-Rio 8

Sintaxe básica
• Seleção de elementos não nomeados:
– " * " seleciona elementos não nomeados – exemplos:
• "selecione todos os elementos que são filhos de elementos "lote" /leilao/lote/* • selecione todos os elementos "valor"que são netos de "leilao" /leilao/*/valor • selecione todos os elementos "valor" que tem 2 ancestrais" /*/*/valor • "selecione todos os elementos no documento" //*

08/09/03

(c) Marco A. Casanova - PUC-Rio

9

Sintaxe básica
• Seleção de ramos na árvore do documento:
– " [ " e " ] " selecionam elementos específicos – exemplos:
• "selecione o primeiro elemento "lote" que é filho de"leilao" " /leilao/lote[1] • "selecione o último elemento "lote" que é filho de "leilao" " (não há função para selecionar o primeiro) /leilao/lote[last()]

08/09/03

(c) Marco A. Casanova - PUC-Rio

10

Sintaxe básica
• Seleção de ramos na árvore do documento:
– exemplos:
• "selecione todos os elementos "lote" de "leilao" que possuem um elemento "valor" " /leilao/lote[valor] • "selecionetodos os elementos "lote" de "leilao" que possuem um elemento "valor" com valor 10.90" /leilao/lote[valor=10.90] • "selecione todos os elementos "valor" de todos os elementos "lote" de "leilao" que tem um elemento "valor" com valor 10.90" /leilao/lote[valor=10.90]/valor

08/09/03

(c) Marco A. Casanova - PUC-Rio

11

Sintaxe básica
• Seleção de ramos alternativos:
– " | " permiteselecionar ramos alternativos – exemplos:
• "selecione os elementos "valor" e "descricao" de "lote" de "leilao" " /leilao/lote/valor | /leilao/lote/descricao • "selecione todos os elementos "valor" e "descricao" no documento" //valor | //descricao • "selecione todos os elementos "valor" de "lote" de "leilao" e todos os elementos "descricao" do documento" /leilao/lote/valor | //descricao

08/09/03(c) Marco A. Casanova - PUC-Rio

12

Sintaxe básica
• Seleção de atributos:
– atributos são designados pelo prefixo @ – exemplos:
• "selecione todos os atributos com nome "moeda" " //@moeda • "selecione todos elementos "valor" que tem um atributo com nome "moeda" " //valor[@moeda] • "selecione todos os elementos "leilao" que tem algum atributo" //leilao[@*] • "selecione todos os...
tracking img