xpath
Link para estudo do xpath: http://www.macoratti.net/vb_xpath.htm
Para pegar o texto de um elemento
/bookstore/book/price/text()
A expressão XPath a seguir seleciona o primeiro elemento cd filho do elemento catalog:
/catalog/cd[1]
A expressão XPath a seguir seleciona o último elemento cd filho do elemento catalog (Nota: não existe a função first()):
/catalog/cd[last()]
Visualizar todos os livros da editora FCA-Editora
/Livros/Livro[Editora="FCA-Editora"]
Exibir todos os livros que não sejam da categoria
/Livros/Livro[Categoria!="Informática"]
Exibir o segundo livro
/Livros/Livro[2] ou /Livros/Livro[position()=2]
Exibir o último livro
/Livros/Livro[last()] ou /Livros/Livro[position()=last()]
Exibir o penúltimo livro
/Livros/Livro[last()-1] ou /Livros/Livro[position()=last()-1]
Exibir o total de livros *
count(/Livros/Livro)
Exibir o custo total de livros *
sum(/Livros/Livro/Custo)
Exibir o segundo parágrafo de uma seção
/secao[count(paragrafo)=2]
Cd do catalogo com preço maior que 10.80
/catalog/cd[price>10.80]
Resposta dos execÃcios
Sobre a Prova:
- Questões semelhantes à Lista de Exercicio, com foco em cima do XPATH.
- Sobre XQuery, teremos 2 questões. Uma teórica (tirada dos slides) e uma questão prática. O resto é XPath (teoria e prática), nada além dos slides e dos exercÃcios.
- Não haverá recuperação!!!!
Abaixo, as respostas dos exercÃcios. Estudem!!!!!!!
01 - /artigo/autores/*/instituicao
02 - /artigo/secao/paragrafo
03 - /artigo/autor/nome
04 - //*[endereco] ou //endereco/..
05 - //paragrafo/../..
06 - //endereco
07 - //artigo/autores//nome[contains(.,'Ana')]
08 - /artigo/@versao
09 - //paragrafo[@numero and @tipo]
10 - //bibliografia/referencia/obra[titulo='Union Types for Semistructured Data']/autor/nome
11 - //nome[contains(.,'Abiteboul')]/../../ano
12 - //paragrafo[string-length(.)=27]
13 - //secao/paragrafo[position() = 3] ou
//secao/paragrafo[3]
14 - //paragrafo[contains(.,concat(../../autores/autor[2]/nome," from",../../autores/autor[2]/instituicao))]
15- //paragrafo[contains(translate(normalize-space(.), "abcdefghijklmnopqrstuvwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ"), "TWO YEARS")]
16- //secao[count(paragrafo)=2]
17- //bibliografia//ano
18- //paragrafo/processing-instruction()
Referências
Comments (0)
You don't have permission to comment on this page.