Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery."—  Präsentation transkript:

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

2 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Übungsblatt 2 In jedem Protokoll müssen enthalten sein: Titel Titel Datum Datum Zeit Zeit Ort Ort Protokollführer Protokollführer Protokollkopf mit diesen Daten Protokollkopf mit diesen Daten

3 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Protokollkopf mit: Titel, Protokolldatum, Zeit, Ort, Protokollführer

4 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp person Die Datentypen Die Datentypen vorname & name

5 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp anrede Die Datentypen Die Datentypen prof_dr, prof, dr, herr & frau

6 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2... Protokollkopf mit: Titel, Protokolldatum, Zeit, Ort, Protokollführer

7 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentypen Der Datentypen titel, datum, zeit & ort Der Datentyp Der Datentyp protokollführerType

8 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp personType

9 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentypen Der Datentypen vorname & name Die Datentypen Die Datentypen prof_dr, prof, dr, herr & frau

10 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Übungsblatt 2 Die Teilnehmerliste soll alle An- und Abwesenden auflisten: Ordentliche Teilnehmer Ordentliche Teilnehmer Gäste Gäste Entschuldigt Abwesende Entschuldigt Abwesende Unentschuldigt Abwesende Unentschuldigt Abwesende Je eine Teilliste mit diesen Personen Je eine Teilliste mit diesen Personen

11 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Liste von Personen mit Anwesenden, Gästen, (un)entschuldigt Abwesenden Die Datentypen Die Datentypen teilnehmer, gaeste, entschuldigt, unentschuldigt

12 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Listen von Personen mit: Anwesenden, Gästen, (un)entschuldigt Abwesenden Übungsblatt

13 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentypen Der Datentypen teilnehmerType, gaesteType, entschuldigtType, unentschuldigtType

14 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Übungsblatt 2 Zu Tagesordnungspunkten muß angegeben werden: Antragsteller / Berichter Antragsteller / 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 Kenntnisnahmen Datentyp für Kenntnisnahmen Datentyp für Beschlüsse Datentyp für Beschlüsse

15 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Übungsblatt 2 Tagesordnungspunkte sollen enthalten: Einen oder mehrere Abschnitte Einen oder mehrere Abschnitte Spezielle Kennzeichnungen für Spezielle Kennzeichnungen für Namen Namen Zeiten Zeiten Daten Daten Datentyp für Abschnitt Datentyp für Abschnitt Datentypen für Daten & Zeiten Datentypen für Daten & Zeiten

16 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp beschluss Die Datentypen Die Datentypen ziffer, inhalt & resultat Die Datentyp Die Datentyp p

17 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp kenntnisnahme Die Datentypen Die Datentypen ziffer, inhalt & resultat Die Datentyp Die Datentyp p

18 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp beschlussType Die Datentypen Die Datentypen ziffer & resultat

19 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp inhaltType Der Datentyp Der Datentyp pType

20 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Die Datentypen Die Datentypen ein_name, ein_datum & eine_zeit Der Datentyp Der Datentyp kenntnisnahmeType

21 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp protokoll Und wie wird das alles zusammengesetzt?

22 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 2 Der Datentyp Der Datentyp protokoll Und wie wird das alles zusammengesetzt?

23 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 Stellen Sie die Gesamtzahl sowie die Anzahl der männlichen und der weiblichen Sitzungsteilnehmer fest. { let $t := count(doc("protokoll.xml")/protokoll/teilnehmer/person) let $g := count(doc("protokoll.xml")/protokoll/gaeste/person) return $t + $g }

24 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 Stellen Sie die Gesamtzahl sowie die Anzahl der männlichen und der weiblichen Sitzungsteilnehmer fest. { 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 }

25 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 Stellen Sie die Gesamtzahl sowie die Anzahl der männlichen und der weiblichen Sitzungsteilnehmer fest. { let $f1 := count(doc("protokoll.xml")/protokoll/teilnehmer/person/frau) let $f2 := count(doc("protokoll.xml")/protokoll/gaeste/person/frau) return $f1 + $f2 }

26 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 Extrahieren Sie die Personen, denen keine ID zugeordnet ist (kein ident -Attribut im -Tag), generieren Sie dieses Attribut aus dem Nachname und erstellen Sie ein neues -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.

27 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Ü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.

28 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 declare function local:bemCheck( $p ) {if '') = 1) then {$p/*} else {$p/*} }; declare function local:identCheck( $p ) {if '') = 1) then $p else local:bemCheck($p) };

29 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 {for $n in doc("protokoll.xml")/protokoll/titel return $n}... {for $n in doc("protokoll.xml")/protokoll/protokollfuehrer return $n} {for $n in doc("protokoll.xml")/protokoll/teilnehmer/person return local:identCheck($n)} {for $n in doc("protokoll.xml")/protokoll/* where (compare(name($n), "beschluss") = 0 or compare(name($n), "kenntnisnahme") = 0) return $n}

30 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 Extrahieren Sie Abstimmungen, die nicht einstimmig getroffen wurden, sowie den zugehörigen Antragsteller.

31 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 { for $n in doc("protokoll.xml")/protokoll/beschluss where (compare($n/resultat, "einstimmig") > 0 or compare($n/resultat, "einstimmig") < 0) return {$n} { for $a in doc("protokoll.xml")/protokoll/*/person where = 0) return {$a} } }

32 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Ü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.

33 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Übungsblatt 3 { for $n in doc("protokoll.xml")/protokoll/*/inhalt/p/name return { for $p in doc("protokoll.xml")/protokoll/teilnehmer/person/name union doc("protokoll.xml")/protokoll/gaeste/person/name where (ends-with($n, $p)) return $p } }

34 Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery Ü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...


Herunterladen ppt "Vorlesung Datenbankeinsatz WS 04/05 IPD Übung 2: XML / XQuery."

Ähnliche Präsentationen


Google-Anzeigen