A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Consultado Documentos XML com XPATH

Apresentações semelhantes


Apresentação em tema: "Consultado Documentos XML com XPATH"— Transcrição da apresentação:

1 Consultado Documentos XML com XPATH
Vânia Maria Ponte Vidal

2 XPATH É linguagem para referenciar partes de um documento XML.
Define uma biblioteca de funções padrões para trabalhar com strings, números e booleanos. Foi projetada para ser usada por XSLT, XPointer e outros softwares. Sem XPath não seria possível criar documentos XSLT. Modela um documento XML como uma árvore de nós: nó elemento, nó atributo, nó texto, etc.

3 XPATH XPath usa expressões de caminho para identificar nós num documento XML. Expressões de caminho são parecidas com as expressões de caminho usadas no sistema de arquivo de um computador. Se o caminho XPath começa com uma barra(/), significa um caminho absoluto para o elemento. Se o caminho XPath começa com duas barras(//), significa que todos os elementos que satisfizerem o critério serão selecionados, ainda se eles estiverem em diferentes níveis na árvore.

4 ESTUDO DE CASO I <!ELEMENT livraria (livro)+> <!ELEMENT livro
Elemento Raiz livraria <!ELEMENT livraria (livro)+> <!ELEMENT livro (titulo,editora,preço,autor+)> <!ELEMENT titulo (#PCDATA)> <!ELEMENT editora (#PCDATA) > <!ELEMENT preco (#PCDATA) > <!ELEMENT autor ( ?,nome)> <!ELEMENT (#PCDATA) > <!ELEMENT nome (#PCDATA) > <!ATTLIST livro ISBN CDATA #REQUIRED]> livro livro @ISBN titulo editora preço autor autor nome nome 1234 Inside XML New Riders 100,00 Holzner Steven Definição da DTD: livraria.dtd

5 XPATH Exemplo(1) Obtenha todas as informações do livro cujo título é “Inside XML”. document(“liv.xml” ) / livraria / livro[titulo =“Inside XML”]

6 XPATH Exemplo(2) Obtenha as informações dos autores do livro cujo título é “Inside XML”. $liv / livraria / livro [titulo =“Inside XML”] / autor $liv= document(“liv.xml” )

7 XPATH Exemplo(3) $liv / livraria / livro [autor/nome =“steven”]
Liste os livros de autoria de Steven $liv / livraria / livro [autor/nome =“steven”]

8 XPATH Exemplo(4) $liv / livraria / livro [autor/nome =“steven”]/titulo
Liste o título dos livros de autoria de Steven $liv / livraria / livro [autor/nome =“steven”]/titulo $liv / livraria / livro [autor/nome =“steven”]/titulo/text()

9 XPATH Exemplo(5) Liste ISBN, título e editora dos livros cujo o autor é “Steven”

10 XPATH Exemplo(6) $liv / livraria / livro [autor/nome =“steven”]/@isbn
Liste o isbn dos livros de autoria de Steven $liv / livraria / livro [autor/nome Nomes de atributos são precedidos $liv / livraria / livro [autor/nome Obtém todos os atributos do elemento no contexto corrente

11 Estudo de Caso II <catalogo> <cd pais =“Brasil”>
<titulo>Milagreiro</titulo> <artista>Djavan</artista> <preco>15,00</preco> </cd> <titulo>O mito</titulo> <artista>Elis Regina</artista> <preco>20,00</preco> <titulo>Realce</titulo> <artista>Gilberto Gil</artista> </catalogo> <titulo> <cd pais=“Brasil”> <artista> <preco> catalogo 15,00 Djavan Milagreiro O mito Elis Regina Realce 20,00 Gilberto Gil

12 Xpath $catalogo / catalogo / cd / *
Selecionar todos os elementos filhos de todos os elementos cd do elemento catalogo . $catalogo / catalogo / cd / * Curingas podem ser usados para selecionar elementos XML desconhecidos.

13 $catalogo /catalogo/*/preço
Selecionar todos os elementos preço que são elementos netos do elemento catalogo: $catalogo /catalogo/*/preço Selecionar todos os elementos preco que têm dois ancestrais: $catalogo /*/*/preco <titulo> <cd pais=“Brasil”> <artista> <preco> catalogo 15,00 Djavan Milagreiro O mito Elis Regina Realce 20,00 Gilberto Gil

14 Xpath $catalogo /catalogo/cd[1] $catalogo/catalogo/cd[last()]
Obtenha o primeiro elemento cd filho do elemento catálogo: $catalogo /catalogo/cd[1] Obtenha o último elemento cd filho do elemento catálogo: $catalogo/catalogo/cd[last()] <titulo> <cd pais=“Brasil”> <artista> <preco> catalogo ... 15,00 Djavan Milagreiro Realce Gilberto Gil

15 Selecionar todos os elementos cd filho do elemento catálogo que têm um elemento preco:
<titulo> <cd pais=“Brasil”> <artista> <preco> catalogo 15,00 Djavan Milagreiro O mito Elis Regina Realce 20,00 Gilberto Gil $cat /catalogo/cd[preco] Selecionar todos os elementos cd filho do elemento catálogo que têm um elemento preco com o valor de 15,00: $cat /catalogo/cd[preco=15,00] Selecionar todos os elementos preco dos elementos cd cujo elemento preco com valor de 15,00: /catalogo/cd[preco=15,00]/preco

16 $cat//@país $cat //cd[@país] $cat //cd[@*]
Selecionar todos os atributos pais: <titulo> <cd pais=“Brasil”> <artista> <preco> catalogo 15,00 Djavan Milagreiro O mito Elis Regina Realce 20,00 Gilberto Gil Selecionar todos os elementos cd que tem um atributo pais: $cat Selecionar todos os elementos cd que tem algum atributo: $cat

17 XPATH parent:: - Pai do elemento contexto
Pode-se selecionar pai, filhos e irmãos, usando as expressões: parent:: - Pai do elemento contexto child:: - filho do elemento contexto preceding-sibling:: - irmão que precede following-sibling:: - irmão que segue Ancestor:: - ancestrais do elemento contexto Descendante::- descendentes do elemento contexto.


Carregar ppt "Consultado Documentos XML com XPATH"

Apresentações semelhantes


Anúncios Google