<?xml version="1.0" encoding="utf-8"?>
<!--Generated by ILIAS XmlWriter-->
<questestinterop>
<assessment ident="il_10632_tst_2246"
            title="Semistructured Data and XML (21082020)">
<item ident="il_10632_qst_98324" title="XML" maxattempts="0">
<duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>20</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3aee9e0cd5b8.40199000</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98324_o98302</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XML"><flow><material><mattext texttype="text/xhtml"><h4
class="likesubsectionHead"><a
id="x1-2000"></a>Project: Housing Cooperative
(german:
Wohnungsgenossenschaft)</h4>&#13;&#10;<!--l. 138-->&#13;&#10;<p
class="noindent">All exercises are based on a common
“project”: the database of a housing cooperative that owns houses with
rental apartments in cities all over
Germany. <!--l. 150--></p>&#13;&#10;<ol
class="enumerate1">&#13;&#10;<li
class="enumerate" id="x1-2002x1">Assume that
cities are uniquely identified by their name. Also, every street name
exists at most once in every city.</li>&#13;&#10;<li
class="enumerate" id="x1-2004x2">For each
building that is owned by the cooperative, the address (city, street,
house number) is stored. It is also stored how many apartments are in
the building (assume that always all apartments in the building are
owned by the
cooperative). <!--l. 158-->&#13;&#10;<ul>&#13;&#10;<li
class="enumerate" id="x1-2006x1">The building
<span class="ecti-1200">Hauptstraße 100
</span>in <span class="ecti-1200">Göttingen
</span>consists of 80 apartments.</li>&#13;&#10;<li
class="enumerate" id="x1-2008x2">The building
<span class="ecti-1200">Rheinstraße 53 </span>in
<span class="ecti-1200">Köln </span>consists of
100
apartments.</li>&#13;&#10;</ul>&#13;&#10;</li>&#13;&#10;<li
class="enumerate" id="x1-2010x3">Every
apartment has a (unique) number in its building. For each apartment,
the number of rooms, the size (in square meters) and the current
monthly rent (=Kaltmiete) is
stored. <!--l. 169-->&#13;&#10;<ul>&#13;&#10;<li
class="enumerate" id="x1-2012x1">The apartment
with the number 42 of the building <span
class="ecti-1200">Hauptstraße 100 </span>in
<span class="ecti-1200">Göttingen </span>has
three rooms, 82 m<sup><span
class="cmr-8">2</span></sup>, for 850 EUR per
month.</li>&#13;&#10;<li class="enumerate"
id="x1-2014x2">The apartment with the number 43 of the
same building has two rooms, 50 m<sup><span
class="cmr-8">2</span></sup>, for 550 EUR per
month.</li>&#13;&#10;<li class="enumerate"
id="x1-2016x3">The apartment with the number 17 of the
building <span class="ecti-1200">Rheinstraße 53
</span>in <span class="ecti-1200">Köln
</span>has three rooms, 95 m<sup><span
class="cmr-8">2</span></sup>, for 1300 EUR
per
month.</li>&#13;&#10;</ul>&#13;&#10;</li>&#13;&#10;<li
class="enumerate" id="x1-2018x4">For being
entitled to rent an apartment in a cooperative, persons must buy a
share and become <span class="ecti-1200">members
</span>of the cooperative. For every person, the name, the
(unique) membership code (recall that XML IDs must start with a
letter), the birthdate, and the birth place (city name, country) are
stored. <!--l. 188-->&#13;&#10;<ul>&#13;&#10;<li
class="enumerate" id="x1-2020x1">John Doe is
born on February 28th, 1995 in Boston, USA.</li>&#13;&#10;<li
class="enumerate" id="x1-2022x2">Markus Meier
is born on July 10th, 1980 in Göttingen,
Germany.</li>&#13;&#10;<li class="enumerate"
id="x1-2024x3">Liese Müller is born on October 1st, 1950
in Köln, Germany.</li>&#13;&#10;<li
class="enumerate" id="x1-2026x4">Jan Jansen is
born on August 10th, 1985 in Stockholm,
Sweden.</li>&#13;&#10;</ul>&#13;&#10;</li>&#13;&#10;<li
class="enumerate" id="x1-2028x5">For every
individual rental agreement (=Mietvertrag) the name of the tenant
(=Mieter) is stored (assume that the agreement is always made with a
single person), together with the starting date, and the contact
address where the tenant lived when the contract was signed. <br
class="newline" />Contracts always begin with the first
day of a month, and end with the last day of a month.<br
class="newline" />Additionally, it is stored whether the
contract is terminated or announced to be terminated, and for which
date (=gekündigt; in Germany, a rental contract must be announced to
be terminated three months in advance – e.g. today you could announce
to terminate the contract for your apartment for November 30th,
2020). <!--l. 208-->&#13;&#10;<ul
class="enumerate2">&#13;&#10;<li
class="enumerate" id="x1-2030x1"><span
class="ecti-1200">John Doe </span>lives in the
apartment nr. 42 of the building <span
class="ecti-1200">Hauptstrasse 100</span> in
<span class="ecti-1200">Göttingen </span>since
April 1st, 2018. The contract is not announced to be
terminated.</li>&#13;&#10;<li class="enumerate"
id="x1-2032x2"><span
class="ecti-1200">Markus Meier </span>lives in the
apartment nr. 43 of the building <span
class="ecti-1200">Hauptstrasse 100</span> in
<span class="ecti-1200">Göttingen </span>since
August 1st, 2011. He already announced to terminate the contract for
October 31st, 2020.</li>&#13;&#10;<li
class="enumerate" id="x1-2034x3"><span
class="ecti-1200">Liese Müller </span>lives in the
apartment nr. 17 of the building <span
class="ecti-1200">Rheinstrasse 53</span> in Köln
since March 1st, 1990. She announced to terminate the contract for
August 31st,
2020.</li>&#13;&#10;</ul>&#13;&#10;</li>&#13;&#10;<li
class="enumerate" id="x1-2036x6">When a new
contract is signed, the (at this point current) address of the tenant
and the starting date of the contract is
stored. <!--l. 226-->&#13;&#10;<ul
class="enumerate2">&#13;&#10;<li
class="enumerate" id="x1-2038x1">The
above-mentioned <span class="ecti-1200">Markus Meier
</span>has signed a contract for the apartment nr. 17 of the
building <span class="ecti-1200">Rheinstrasse 53
</span>in <span
class="ecti-1200">Köln</span>, beginning October
1st, 2020.</li>&#13;&#10;<li class="enumerate"
id="x1-2040x2"><span
class="ecti-1200">Jan Jansen</span>, who currently
lives at the address <span
class="ecti-1200">Hafenstrasse 10, Hamburg</span>
(this apartment is not owned by the cooperative), signed a contract
for the apartment nr. 43 of the building <span
class="ecti-1200">Hauptstrasse 100 </span>in
<span class="ecti-1200">Göttingen </span>from
December 1st, 2020
on.</li>&#13;&#10;</ul>&#13;&#10;</li>&#13;&#10;<li
class="enumerate" id="x1-2042x7">If a tenant
moves somewhere else (not necessarily to an apartment of the
cooperative), the new address is stored (e.g., to send the final cost
bills). <!--l. 243-->&#13;&#10;<ul
class="enumerate2">&#13;&#10;<li
class="enumerate" id="x1-2044x1">The future
address of <span class="ecti-1200">Liese Müller
</span>is <span class="ecti-1200">Mühlengasse
24, Mühlhausen </span>in a building that does not belong to the
cooperative.</li>&#13;&#10;</ul>&#13;&#10;</li>&#13;&#10;<li
class="enumerate" id="x1-2046x8">Data about
older contracts is kept in the database, it is <span
class="ecti-1200">not
</span>deleted.</li>&#13;&#10;</ol><hr
/>&#13;&#10;<h4>And now ... the first
Exercise:</h4>&#13;&#10;<p>Design an XML structure (use
the frame given in file exam.xml) and fill it with some sample data
(e.g. with some of the example data given in the text). <br
class="newline" />(Information about handling dates in
XML can be found in the course’s slides around Slide 300.)
<!--l. 262--></p>&#13;&#10;<p
class="noindent">Copy-and-paste the XML from the file
exam.xml afterwards (at the end of the exam, because it will be
extended in later exercises)
here:</p></mattext></material><render_fib fibtype="String"
prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item>
<!--Generated by ILIAS XmlWriter-->

<item ident="il_10632_qst_98321" title="DTD"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>15</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be277bc91b3.60095701</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98321_o98308</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="DTD"><flow><material><mattext
texttype="text/xhtml"><p>Develop the DTD for your document
developed in Exercise <a
href="#x1-20471">1<!--tex4ht:ref: ex-xml
--></a>, use the file <span
class="ectt-1200">exam.dtd</span>. <br
class="newline" />Use the saxon
call</p>&#13;&#10;<pre>saxonValid.bat -s:exam.xml</pre>&#13;&#10;<!--l. 324-->&#13;&#10;<p
class="nopar">for validating it. <br
class="newline" />Copy-and-paste the DTD from the file
exam.dtd afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98325" title="XPath
(a)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>2</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be3423acad0.86867861</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98325_o98309</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XPath (a)"><flow><material><mattext
texttype="text/xhtml"><p>Use your XML file exam.xml as a basis
for solving this and the following exercises. <br
class="newline" />None of the results should contain
duplicates.</p>&#13;&#10;<hr
/><!--l. 371-->&#13;&#10;<p
class="noindent">Give an XPath query or an XQuery query
that returns the names of all cities where the cooperative owns at
least one apartment that consists of <span
class="ecti-1200">exactly three
</span>rooms. <!--l. 375--></p>&#13;&#10;<p
class="noindent">Write the XPath query string in the file
<span class="ectt-1200">query1.xq </span>and
call it with</p>&#13;&#10;<pre>
   saxonXQ.bat -s:exam.xml query1.xq</pre>&#13;&#10;<p
class="noindent"><!--l. 378--></p>&#13;&#10;<p
class="nopar"><!--l. 380--></p>&#13;&#10;<p
class="noindent">Copy-and-paste the query from query1.xq
afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98320"
title="Application-semantic validation of query result"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>2</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be4118c4f12.70547836</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98320_o98310</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="Application-semantic validation of query
result"><flow><material><mattext texttype="text/xhtml"><p>Add
additional sample data to your XML designed in Exercise <a
href="#x1-20471">1<!--tex4ht:ref: ex-xml
--></a> to test that your result does not return duplicates
in case that there are multiple such apartments in a
city.</p>&#13;&#10;<!--l. 401-->&#13;&#10;<p
class="noindent">Paste your <span
class="ecti-1200">result </span>of evaluating the
query from Exercise <a
href="#x1-20513">3<!--tex4ht:ref: ex-xpath1
--></a> (XPath (a))
here:</p></mattext></material><render_fib fibtype="String"
prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98326"
title="XPath/XQuery (b)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>4</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be469aa25b2.96761913</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98326_o98311</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XPath/XQuery (b)"><flow><material><mattext
texttype="text/xhtml"><p>Give an XPath query or an XQuery query
that returns the names of all persons who have <span
class="ecti-1200">currently </span>rented an
apartment that consists of exactly three rooms and costs less than 900
EUR. <br class="newline" />(note: the current date can
be obtained by the XPath function
current-date().)</p>&#13;&#10;<!--l. 420-->&#13;&#10;<p
class="noindent">Copy-and-paste the query from query2.xq
afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98327"
title="XPath/XQuery (c)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>6</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be4cf0c6f96.23889148</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98327_o98312</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XPath/XQuery (c)"><flow><material><mattext
texttype="text/xhtml"><p>Give an XPath query or an XQuery query
which, for every city, yields the total earnings of the cooperative in
October 2020. The results should be of the
format</p>&#13;&#10;<pre>  &amp;lt;city name="..." total="..."/&amp;gt;&#13;&#10;</pre>&#13;&#10;<!--l. 470-->&#13;&#10;<p
class="nopar"><!--l. 472--></p>&#13;&#10;<p
class="noindent">Copy-and-paste the query from query3.xq
afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98328"
title="XPath/XQuery (d)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>5</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be530bddd54.30947432</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98328_o98313</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XPath/XQuery (d)"><flow><material><mattext
texttype="text/xhtml"><p>Give an XPath query or an XQuery query
that yields the names of all persons who ever rented an apartment of
the cooperative, but never rented an apartment of the cooperative in
Köln.</p>&#13;&#10;<!--l. 494-->&#13;&#10;<p
class="noindent">Copy-and-paste the query from query4.xq
afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98329"
title="XPath/XQuery (e)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>5</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be5b49ef902.23995530</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98329_o98314</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XPath/XQuery (e)"><flow><material><mattext
texttype="text/xhtml"><p>Give an XQuery query or an XPath query
that returns the names of all cities such that in <span
class="ecti-1200">every </span>building owned by
the cooperative in this city there is at least one apartment that has
at least 100 square
meters.</p>&#13;&#10;<!--l. 543-->&#13;&#10;<p
class="noindent">Copy-and-paste the query from query5.xq
afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98330"
title="XPath/XQuery (f)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>10</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be5ea64b736.73878430</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98330_o98315</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XPath/XQuery (f)"><flow><material><mattext
texttype="text/xhtml"><p>Give an XQuery query that returns
information about all persons who moved from one apartment <span
class="ecti-1200">directly </span>to another (both
owned by the cooperative), and the second apartment is more expensive
than the one before (use the <span
class="ecti-1200">current rent </span>for
time-independent comparison of “expensiveness” of apartments). <br
class="newline" />The results should be of the
format</p>&#13;&#10;<pre>
  &amp;lt;person name="..." rent1="..." rent2="..."/&amp;gt;</pre>&#13;&#10;<!--l. 568-->&#13;&#10;<p
class="nopar"><!--l. 570--></p>&#13;&#10;<p
class="noindent">Copy-and-paste the query from query6.xq
afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98331"
title="XPath/XQuery (g)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>10</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be64fd14745.65087391</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98331_o98316</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XPath/XQuery (g)"><flow><material><mattext
texttype="text/xhtml"><p>Give an XQuery query or an XSLT
stylesheet that, for each city “A”, gives a list of all cities “B”
such that <span class="ecti-1200">some
</span>person moved <span
class="ecti-1200">directly </span>from an apartment
in city “A” to an apartment in “B”, and both of the apartments belong
to the cooperative. <br class="newline" />for each
such city “A”, the result should be of the
form</p>&#13;&#10;<pre>
&amp;lt;result city="name-of-city-A"&amp;gt;&#13;&#10; 
name-of-city-B1 ... name-of-city-Bn&#13;&#10; &amp;lt;/result&amp;gt;</pre>&#13;&#10;<!--l. 599-->&#13;&#10;<p
class="nopar">(no duplicate B’s, in any order, with
arbitrary whitespaces) <!--l. 602--></p>&#13;&#10;<p
class="noindent">Copy-and-paste the query from query7.xq
afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98332" title="XSLT"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>assSourceCode</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>POINTS</fieldlabel><fieldentry>15</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>SOURCE_CODE_LANG</fieldlabel><fieldentry>txt</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be6e9b65e63.29832477</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98332_o98317</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="XSLT"><flow><material><mattext
texttype="text/xhtml"><p>Extend the given XSL stylesheet frame
<span class="ectt-1200">exam.xsl </span>to an
XSLT stylesheet that for each person returns the name in an
h3-element, followed by an HTML list that chronologically lists all
apartments (by address) that the person had rented from the
cooperative. <br class="newline" />(an HTML list
consists of an ul-element with nested li-elements; omit the
surrounding HTML stuff, don’t care too much for
formatting)</p>&#13;&#10;<!--l. 655-->&#13;&#10;<p
class="noindent">Use the following call to execute
it:</p>&#13;&#10;<pre>
   saxonXSL.bat -s:exam.xml exam.xsl </pre>&#13;&#10;<p
class="noindent"><!--l. 658--></p>&#13;&#10;<p
class="nopar"><!--l. 660--></p>&#13;&#10;<p
class="noindent">Copy-and-paste the XSLT stylesheet from
exam.xsl afterwards here:</p></mattext></material><render_fib
fibtype="String" prompt="Box"><response_label
ident="A"></response_label></render_fib></flow></presentation><itemfeedback
ident="Correct"
view="All"><flow_mat><material><mattext/></material></flow_mat></itemfeedback></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98322"
title="Miscellaneous (a)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>TEXT
QUESTION</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be774b656a9.31297078</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98322_o98318</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>textrating</fieldlabel><fieldentry>ci</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>matchcondition</fieldlabel><fieldentry/></qtimetadatafield><qtimetadatafield><fieldlabel>termscoring</fieldlabel><fieldentry>YTowOnt9</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>termrelation</fieldlabel><fieldentry>non</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>specificfeedback</fieldlabel><fieldentry>non</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="Miscellaneous (a)"><flow><material><mattext
texttype="text/xhtml"><p>Describe (short and concisely) what ID
and IDREF in XML, and primary keys and foreign keys in relational
databases both are used
for:</p></mattext></material><response_str ident="TEXT"
rcardinality="Ordered"><render_fib fibtype="String"
prompt="Box"><response_label
ident="A"></response_label></render_fib></response_str></flow></presentation><resprocessing
scoremodel="HumanRater"><outcomes><decvar varname="WritingScore"
vartype="Integer" minvalue="0"
maxvalue="2"></decvar></outcomes><respcondition><conditionvar><other>tutor_rated</other></conditionvar></respcondition></resprocessing></item><!--Generated
by ILIAS XmlWriter--><item ident="il_10632_qst_98323"
title="Miscellaneous (b)"
maxattempts="0"><qticomment></qticomment><duration>P0Y0M0DT0H1M0S</duration><itemmetadata><qtimetadata><qtimetadatafield><fieldlabel>ILIAS_VERSION</fieldlabel><fieldentry>5.3.13
2019-02-14</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>QUESTIONTYPE</fieldlabel><fieldentry>TEXT
QUESTION</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>AUTHOR</fieldlabel><fieldentry>Prof. Dr. Wolfgang
May</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>additional_cont_edit_mode</fieldlabel><fieldentry>default</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>externalId</fieldlabel><fieldentry>5f3be7c9308289.33139833</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>TransferId</fieldlabel><fieldentry>i10632_q98323_o98319</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>textrating</fieldlabel><fieldentry>ci</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>matchcondition</fieldlabel><fieldentry/></qtimetadatafield><qtimetadatafield><fieldlabel>termscoring</fieldlabel><fieldentry>YTowOnt9</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>termrelation</fieldlabel><fieldentry>non</fieldentry></qtimetadatafield><qtimetadatafield><fieldlabel>specificfeedback</fieldlabel><fieldentry>non</fieldentry></qtimetadatafield></qtimetadata></itemmetadata><presentation
label="Miscellaneous (b)"><flow><material><mattext
texttype="text/xhtml"><p>Describe <span
class="ecbx-1200">two </span>aspects in which the
ID/IDREF mechanism in the XML world differs from the primary
key/foreign key concept in relational
databases:</p></mattext></material><response_str ident="TEXT"
rcardinality="Ordered"><render_fib fibtype="String"
prompt="Box"><response_label
ident="A"></response_label></render_fib></response_str></flow></presentation><resprocessing
scoremodel="HumanRater"><outcomes><decvar varname="WritingScore"
vartype="Integer" minvalue="0"
maxvalue="4"></decvar></outcomes><respcondition><conditionvar><other>tutor_rated</other></conditionvar></respcondition></resprocessing></item>
</assessment>
</questestinterop>
