Carregar apresentação
A apresentação está carregando. Por favor, espere
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.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.