34
Übung 2: XML / XQuery Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD Übung 2: XML / Übung 2: XML / XQuery XQuery

Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Embed Size (px)

Citation preview

Page 1: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übung 2: XML / XQueryÜbung 2: XML / XQuery

Page 2: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

In jedem Protokoll müssen enthalten sein:In jedem Protokoll müssen enthalten sein:• TitelTitel• DatumDatum• ZeitZeit• OrtOrt• ProtokollführerProtokollführer

Protokollkopf mit diesen DatenProtokollkopf mit diesen Daten

Page 3: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Protokollkopf mit:Protokollkopf mit:Titel, Protokolldatum, Zeit, Ort, ProtokollführerTitel, Protokolldatum, Zeit, Ort, Protokollführer

<!ENTITY % protokollkopf "titel,datum,zeit,ort,protokollfuehrer"><!ELEMENT titel (#PCDATA)><!ELEMENT datum (#PCDATA)><!ELEMENT zeit (#PCDATA)><!ELEMENT ort (#PCDATA)><!ELEMENT protokollfuehrer (person)>

Page 4: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp person<!ELEMENT person (%anrede;,vorname?,name)><!ATTLIST person bemerkung CDATA #IMPLIED ident ID #IMPLIED>

Die Datentypen Die Datentypen vorname & name<!ELEMENT vorname (#PCDATA)><!ELEMENT name (#PCDATA)>

Page 5: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp anrede<!ENTITY % anrede "(prof_dr|prof|dr|herr|frau)?">

Die Datentypen Die Datentypen prof_dr, prof, dr, herr & frau<!ELEMENT prof_dr EMPTY><!ELEMENT prof EMPTY><!ELEMENT dr EMPTY><!ELEMENT herr EMPTY><!ELEMENT frau EMPTY>

Page 6: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

<xsd:element name="protokoll"> <xsd:complexType> <xsd:sequence> <xsd:element ref="titel"/> <xsd:element ref="datum"/> <xsd:element ref="zeit"/> <xsd:element ref="ort"/> <xsd:element name="protokollfuehrer" type="protokollfuehrerType"/> ... </xsd:sequence> </xsd:complexType> </xsd:element>

Protokollkopf mit:Protokollkopf mit:Titel, Protokolldatum, Zeit, Ort, ProtokollführerTitel, Protokolldatum, Zeit, Ort, Protokollführer

Page 7: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentypen Der Datentypen titel, datum, zeit & ort <xsd:element name="titel" type="xsd:string"/> <xsd:element name="datum" type="xsd:date"/> <xsd:element name="zeit" type="xsd:time"/> <xsd:element name="ort" type="xsd:string"/>

Der Datentyp Der Datentyp protokollführerType <xsd:complexType name="protokollfuehrerType"> <xsd:sequence> <xsd:element name="person" type="personType"/> </xsd:sequence> </xsd:complexType>

Page 8: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp personType <xsd:complexType name="personType"> <xsd:sequence> <xsd:choice> <xsd:element ref="prof_dr"/> <xsd:element ref="prof"/> <xsd:element ref="dr"/> <xsd:element ref="herr"/> <xsd:element ref="frau"/> </xsd:choice> <xsd:element ref="vorname" minOccurs="0"/> <xsd:element ref="name"/> </xsd:sequence> <xsd:attribute name="bemerkung" type="xsd:string"/> <xsd:attribute name="ident" type="xsd:ID"/> </xsd:complexType>

Page 9: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentypen Der Datentypen vorname & name <xsd:element name="name" type="xsd:string"/> <xsd:element name="vorname" type="xsd:string"/>

Die Datentypen Die Datentypen prof_dr, prof, dr, herr & frau <xsd:element name="prof_dr"> <xsd:complexType/> </xsd:element> <xsd:element name="prof"> <xsd:complexType/> </xsd:element> <xsd:element name="dr"> <xsd:complexType/> </xsd:element> <xsd:element name="herr"> <xsd:complexType/> </xsd:element> <xsd:element name="frau"> <xsd:complexType/> </xsd:element>

Page 10: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Die Teilnehmerliste soll alle An- und Die Teilnehmerliste soll alle An- und Abwesenden auflisten: Abwesenden auflisten: • Ordentliche TeilnehmerOrdentliche Teilnehmer• GästeGäste• Entschuldigt AbwesendeEntschuldigt Abwesende• Unentschuldigt AbwesendeUnentschuldigt Abwesende

Je eine Teilliste mit diesen PersonenJe eine Teilliste mit diesen Personen

Page 11: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Liste von Personen mitListe von Personen mitAnwesenden, Gästen, (un)entschuldigt Anwesenden, Gästen, (un)entschuldigt

AbwesendenAbwesenden<!ENTITY % teilnehmerliste "teilnehmer,gaeste?,entschuldigt?,unentschuldigt?">

<!ELEMENT teilnehmer (person)+><!ELEMENT gaeste (person)+><!ELEMENT entschuldigt (person)+><!ELEMENT unentschuldigt (person)+>

Die Datentypen Die Datentypen teilnehmer, gaeste,entschuldigt, unentschuldigt

Page 12: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Listen von Personen mit:Listen von Personen mit:Anwesenden, Gästen, (un)entschuldigt Anwesenden, Gästen, (un)entschuldigt

AbwesendenAbwesenden

Übungsblatt 2Übungsblatt 2

<xsd:element name="protokoll"> <xsd:complexType> <xsd:sequence> ... <xsd:element name="teilnehmer" type="teilnehmerType"/> <xsd:element name="gaeste" type="gaesteType" minOccurs="0"/> <xsd:element name="entschuldigt" type="entschuldigtType" minOccurs="0"/> <xsd:element name="unentschuldigt" type="unentschuldigtType" minOccurs="0"/> ... </xsd:sequence> </xsd:complexType> </xsd:element>

Page 13: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentypen Der Datentypen teilnehmerType, gaesteType,entschuldigtType, unentschuldigtType

<xsd:complexType name="teilnehmerType"> <xsd:sequence> <xsd:element name="person" type="personType" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="gaesteType"> ... </xsd:complexType> <xsd:complexType name="entschuldigtType"> ... </xsd:complexType> <xsd:complexType name="unentschuldigtType"> ... </xsd:complexType>

Page 14: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Zu Tagesordnungspunkten muß angegebenZu Tagesordnungspunkten muß angegebenwerden:werden:• Antragsteller / BerichterAntragsteller / Berichter• Beschlußziffer (nur Beschlüsse)Beschlußziffer (nur Beschlüsse)• Beschlußdatum (nur Beschlüsse)Beschlußdatum (nur Beschlüsse)• Abstimmungsresultat (nur Beschlüsse)Abstimmungsresultat (nur Beschlüsse)

Datentyp für KenntnisnahmenDatentyp für Kenntnisnahmen Datentyp für BeschlüsseDatentyp für Beschlüsse

Page 15: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Tagesordnungspunkte sollen enthalten:Tagesordnungspunkte sollen enthalten:• Einen oder mehrere AbschnitteEinen oder mehrere Abschnitte• Spezielle Kennzeichnungen fürSpezielle Kennzeichnungen für

• NamenNamen• ZeitenZeiten• DatenDaten

Datentyp für AbschnittDatentyp für Abschnitt Datentypen für Daten & ZeitenDatentypen für Daten & Zeiten

Page 16: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp beschluss<!ELEMENT beschluss (titel,ziffer,inhalt,resultat)><!ATTLIST beschluss antragsteller IDREFS #REQUIRED>

Die Datentypen Die Datentypen ziffer, inhalt & resultat<!ELEMENT ziffer (#PCDATA)><!ELEMENT resultat (#PCDATA)><!ELEMENT inhalt (p)*>

Die Datentyp Die Datentyp p<!ELEMENT p (#PCDATA|name|zeit|datum)*>

Page 17: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp kenntnisnahme<!ELEMENT kenntnisnahme (titel,inhalt)><!ATTLIST kenntnisnahme berichter IDREFS #REQUIRED>

Die Datentypen Die Datentypen ziffer, inhalt & resultat<!ELEMENT ziffer (#PCDATA)><!ELEMENT resultat (#PCDATA)><!ELEMENT inhalt (p)*>

Die Datentyp Die Datentyp p<!ELEMENT p (#PCDATA|name|zeit|datum)*>

Page 18: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp beschlussType <xsd:complexType name="beschlussType"> <xsd:sequence> <xsd:element ref="titel"/> <xsd:element ref="ziffer"/> <xsd:element name="inhalt" type="inhaltType"/> <xsd:element ref="resultat"/> </xsd:sequence> <xsd:attribute name="antragsteller" type="xsd:IDREFS" use="required"/> </xsd:complexType>

Die Datentypen Die Datentypen ziffer & resultat <xsd:element name="ziffer" type="xsd:string"/> <xsd:element name="resultat" type="xsd:string"/>

Page 19: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp inhaltType <xsd:complexType name="inhaltType"> <xsd:sequence> <xsd:element name="p" type="pType" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType>

Der Datentyp Der Datentyp pType <xsd:complexType name="pType" mixed="true"> <xsd:choice minOccurs="0"> <xsd:element ref="ein_name"/> <xsd:element ref="ein_datum"/> <xsd:element ref="eine_zeit"/> </xsd:choice> </xsd:complexType>

Page 20: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Die Datentypen Die Datentypen ein_name, ein_datum & eine_zeit <xsd:element name="ein_name" type="xsd:string"/> <xsd:element name="ein_datum" type="xsd:string"/> <xsd:element name="eine_zeit" type="xsd:string"/>

Der Datentyp Der Datentyp kenntnisnahmeType <xsd:complexType name="kenntnisnahmeType"> <xsd:sequence> <xsd:element ref="titel"/> <xsd:element name="inhalt" type="inhaltType"/> </xsd:sequence> <xsd:attribute name="berichter" type="xsd:IDREFS" use="required"/> </xsd:complexType>

Page 21: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp protokoll<!ELEMENT protokoll (%protokollkopf;,%teilnehmerliste;,(beschluss|kenntnisnahme)+)>

Und wie wird das alles zusammengesetzt?Und wie wird das alles zusammengesetzt?

Page 22: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 2Übungsblatt 2

Der Datentyp Der Datentyp protokoll <xsd:element name="protokoll"> <xsd:complexType> <xsd:sequence> <xsd:element ref="titel"/> ... <xsd:element name="protokollfuehrer" type="protokollfuehrerType"/> <xsd:element name="teilnehmer" type="teilnehmerType"/> ... <xsd:element name="unentschuldigt" type="unentschuldigtType" minOccurs="0"/> <xsd:choice maxOccurs="unbounded"> <xsd:element name="beschluss" type="beschlussType"/> <xsd:element name="kenntnisnahme" type="kenntnisnahmeType"/> </xsd:choice> </xsd:sequence> </xsd:complexType> </xsd:element>

Und wie wird das alles zusammengesetzt?Und wie wird das alles zusammengesetzt?

Page 23: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Stellen Sie die Gesamtzahl sowie die Anzahl der männlichen und der weiblichen Sitzungsteilnehmer fest.

<numberOfPersons>{let $t := count(doc("protokoll.xml")/protokoll/teilnehmer/person)let $g := count(doc("protokoll.xml")/protokoll/gaeste/person)return $t + $g}</numberOfPersons>

Page 24: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Stellen Sie die Gesamtzahl sowie die Anzahl der männlichen und der weiblichen Sitzungsteilnehmer fest.

<numberOfMen>{let $t := count(doc("protokoll.xml")/protokoll/teilnehmer/person)let $g := count(doc("protokoll.xml")/protokoll/gaeste/person)let $f1 := count(doc("protokoll.xml")/protokoll/teilnehmer/person/frau)let $f2 := count(doc("protokoll.xml")/protokoll/gaeste/person/frau)return $t + $g - $f1 - $f2}</numberOfMen>

Page 25: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Stellen Sie die Gesamtzahl sowie die Anzahl der männlichen und der weiblichen Sitzungsteilnehmer fest.

<numberOfWomen>{let $f1 := count(doc("protokoll.xml")/protokoll/teilnehmer/person/frau)let $f2 := count(doc("protokoll.xml")/protokoll/gaeste/person/frau)return $f1 + $f2}</numberOfWomen>

Page 26: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Extrahieren Sie die Personen, denen keine ID zugeordnet ist (kein „ident“-Attribut im <person>-Tag), generieren Sie dieses Attribut aus dem Nachname und erstellen Sie ein neues <person>-Tag. Der Rest des Protokolls soll dabei kopiert werden, so daß am Ende das komplette Protokoll wieder zur Verfügung steht, mit „ident“-Attribut für jede Person.

Page 27: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Teilen Sie das Protokoll zwecks besserer Strukturierung in bedeutungsmäßige Blöcke ein (zB Kopf, Personen und Verlauf), und erstellen Sie ein XQuery, das den Inhalt des ursprünglichen Protokolls in diese Blöcke kopiert.

Page 28: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3declare function local:bemCheck( $p ){if (compare($p/@bemerkung, '') = 1)then <person ident="{lower-case($p/name)}" bemerkung="{$p/@bemerkung}"> {$p/*} </person>else <person ident="{lower-case($p/name)}">{$p/*}</person>};

declare function local:identCheck( $p ){if (compare($p/@ident, '') = 1)then $pelse local:bemCheck($p)};

Page 29: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3<protokoll> <protokollkopf>{for $n in doc("protokoll.xml")/protokoll/titel return $n}...{for $n in doc("protokoll.xml")/protokoll/protokollfuehrer return $n} </protokollkopf> <teilnehmerliste> <teilnehmer>{for $n in doc("protokoll.xml")/protokoll/teilnehmer/person return local:identCheck($n)} </teilnehmer> <gaeste> <entschuldigt> <unentschuldigt> </teilnehmerliste> <verlauf>{for $n in doc("protokoll.xml")/protokoll/* where (compare(name($n), "beschluss") = 0 or compare(name($n), "kenntnisnahme") = 0)return $n} </verlauf></protokoll>

Page 30: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Extrahieren Sie Abstimmungen, die nicht einstimmig getroffen wurden, sowie den zugehörigen Antragsteller.

Page 31: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

<kritischeBeschluesse>{for $n in doc("protokoll.xml")/protokoll/beschlusswhere (compare($n/resultat, "einstimmig") > 0 or compare($n/resultat, "einstimmig") < 0)return <kritischerBeschluss>{$n}{for $a in doc("protokoll.xml")/protokoll/*/personwhere (compare($n/@antragsteller, $a/@ident) = 0)return <antragsteller>{$a}</antragsteller>}</kritischerBeschluss>}</ kritischeBeschluesse >

Page 32: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Erstellen Sie ein XQuery, um zu prüfen, ob in Traktat-Texten (Beschlüsse und Kenntnisnahmen) genannten Personen anwesend sind, oder ob über dritte gesprochen wird.

Page 33: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

<personen> <anwesende>{for $n in doc("protokoll.xml")/protokoll/*/inhalt/p/namereturn <person>{for $p in doc("protokoll.xml")/protokoll/teilnehmer/person/name union doc("protokoll.xml")/protokoll/gaeste/person/namewhere (ends-with($n, $p)) return $p} </person>} </anwesende> <abwesende></personen>

Page 34: Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery

Übung 2: XML / XQuery

Vorlesung Datenbankeinsatz WS 04/05 Vorlesung Datenbankeinsatz WS 04/05 IPD IPD

Übungsblatt 3Übungsblatt 3

Extrahieren Sie die Kenntnisnahmen von Beschlüssen, die vor mehr als drei Sitzungen gefaßt wurden (Tip: Die Ziffer enthält die SitzungsNummer)

Sorry, ging gar nicht, da Kenntnisnahmen die Ziffer nicht enthalten ...