17.7 (a)
Here, adm is the namespace prefix used for the schema of the document
in Fig 17.4 and CourseKey is defined as the primary key for Course
elements:
17.12 (a)
//Student[../CrsTaken/@CrsCode="MAT123" and ends-with(@StudId,"987")]
(b)
//Student[count(../CrsTaken) < 3 and starts-with(@Name,"Joe")]
17.14
17.21
(a)
(
FOR $s IN document("http://xyz.edu/student.xml")//tuple
WHERE contains($s/Address/@value,"Main St")
RETURN $s
)
(b)
(
FOR $c IN document("http://xyz.edu/course.xml")//tuple
WHERE NOT contains($c/CrsCode/@value,$c/DeptId/@value)
RETURN $c
)
(c)
(
FOR $tIN document("http://xyz.edu/teaching.xml")//tuple
WHERE starts-with($t/Semester/@value,"F")
RETURN $t
)