Solución: Actividad 603
1.xq
for $artista in artistas/artista
return concat($artista/nombre, " ", $artista/pais)
2.xq
for $artista in artistas/artista
where $artista/nacimiento < 1500
return $artista/nombre/text()
3.xq
for $artista in artistas/artista
where not($artista/fallecimiento)
order by $artista/nombre ascending
return $artista/nombre/text()
(: Alternativa :)
for $artista in artistas/artista
where not(exists($artista/fallecimiento))
order by $artista/nombre ascending
return $artista/nombre/text()
4.xq
for $artista in artistas/artista
where exists($artista/fallecimiento)
return concat($artista/nombre, " ", $artista/fallecimiento)
5.xq
<ul>
{
for $artista in artistas/artista
where $artista/pais = "España"
return <li>{$artista/nombre/text()}</li>
}
</ul>
(: Alternativa sin repetir artistas :)
<ul>
{
for $a in distinct-values(
for $artista in artistas/artista
where $artista/pais = "España"
return $artista/nombre/text()
)
return <li>{$a}</li>
}
</ul>
6.xq
for $artista in artistas/artista
where $artista/pais = "Italia"
return concat($artista/nombre, " ", $artista/@id)
7.xq
count(
for $artista in artistas/artista
where $artista/nacimiento < 1600
return $artista
)
8.xq
for $artista in artistas/artista
where starts-with($artista/nombre, "P")
return $artista/nombre/text()
9.xq
for $artista in artistas/artista
where
exists($artista/fallecimiento) and
$artista/fallecimiento = max(artistas/artista/fallecimiento)
return $artista
10.xq
for $artista in artistas/artista
where string-length($artista/nombre) > 15
return $artista/nombre/text()