XML-Abfrage- und Transformationssprachen. (Weiter-) Entwicklung der Standards. XQuery 1.0. bisher betrachtet. XPath 2.0. XPath 1.0 XSLT 2.0 XSLT 1.
|
|
- Daniela Langenberg
- vor 7 Jahren
- Abrufe
Transkript
1 (Weiter-) Entwicklung der Standards bisher betrachtet XQuery 1.0 XPath 1.0 XPath 2.0 XSLT 1.0 XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
2 Warum weiter- bzw. neuentwickeln? - XML ist weitverbreitetes Datenaustausch und Datenspeicherformat - State of the Art XPath 1.0 ist nur Lokatorsprache XSLT 1.0 ist Transformationssprache vollwertige Abfragesprache (a la SQL) fehlt - XQuery soll Möglichkeit bieten einfach, flexibel und effizient auf Informationen in XML-Daten(-banken) zuzugreifen 143 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
3 XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 144 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
4 Weiterentwicklungen in Beziehung zueinander - XPath 2.0 bildet die Basis für die Empfehlungen XQuery 1.0 und XSLT alle 3 Standards wurden gemeinsam am verabschiedet XQuery 1.0 XPath 2.0 XSLT 2.0 XQuery 1.0 and XPath 2.0 Data Model (XDM) XQuery 1.0 and XPath 2.0 Formal Semantics XPath XQuery 1.0 and XPath 2.0 Functions and Operators 145 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
5 XPath 2.0 Überblick über die Weiterentwicklungen - Erweiterung der Datenmodells Sequenzen umfangreicheres Typkonzept - zusätzliche Formen von Ausdrücken - neue Funktionen und Operatoren 146 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
6 XPath 2.0 Erweiterung des Datenmodells - Sequenz (in gewisser Weise) Ersatz für Knotenmengen ist keine Menge, daher Duplikate möglich (vgl. Knotenmenge) Notation - Sequenz wird üblicherweise (nicht verpflichtend) durch umschließende Klammerung mit ( und ) definiert - Sequenzinhalte (Items) werden durch Kommas separiert (1, vorlesung/@titel, "Ein Text") 147 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
7 XPath 2.0 Erweiterung des Datenmodells - Zusammensetzung von Sequenzen Sequenz (1, vorlesung/@titel, "Ein Text") Item (atomarer Wert Integer) Item (Knoten Attributknoten) Item (atomarer Wert String) 148 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
8 XPath 2.0 Erweiterung des Datenmodells - Besonderheiten von Sequenzen leere Sequenz () - ist ungleich Nichts einelementige Sequenz - ist gleich dem enthaltenen Item (xyz) = xyz Kombination von Sequenzen - ergibt stets eine abgeflachte Sequenz - daher keine Verschachtelung möglich (1,(2,3)) = (1,2,3) 149 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
9 XPath 2.0 Erweiterung des Datenmodells - Pfadausdruck Weiterentwicklung des Lokalisierungspfads besteht aus mehreren durch / getrennten Lokalisierungsschritten - Lokalisierungsschritt setzt sich zusammen aus Achse, Knotentest und (optional) Prädikaten (vgl. XPath 1.0) einem beliebigen Ausdruck (bspw. Funktionsaufruf)* - Besonderheiten (vgl. mit XPath 1.0) Achse namespace zwar noch verfügbar, aber deprecated Bezeichnung für XPath 1.0 Wurzelknoten nun Dokumentknoten * Voraussetzung dafür ist jedoch, dass das Ergebnis des vorangehenden Lokalisierungsschrittes eine Sequenz von Knoten ist 150 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
10 XPath 2.0 Erweiterung des Datenmodells - analog zu XPath 1.0 Repräsentation von XML-Dokumenten als Baum mit verschiedenartigen Knoten - Knotentypen Dokumentknoten Elementknoten Attributknoten Namensraumknoten Verarbeitungsanweisungsknoten Kommentarknoten Textknoten 151 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
11 XPath 2.0 Erweiterung des Datenmodells - Umgang mit Duplikaten Sequenz Menge Duplikate sind daher erlaubt (1,1,2) (1,1,2) Aber: Duplikate in Zwischenergebnissen werden vor Abarbeitung eines nachfolgenden Lokalisierungsschrittes eliminiert. (vorlesung, vorlesung) (MustermannMax58NormalverbraucherOtto610, MustermannMax58NormalverbraucherOtto610) (vorlesung, vorlesung)/@titel (XML...) 152 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
12 XPath 2.0 Erweiterung des Datenmodells - sehr umfangreiches Typkonzept im Gegensatz zu XPath 1.0 (Knotenmenge, Zahl, Zeichenkette und Wahrheitswert) - Basis für XPath 2.0 Typsystem ist XML-Schema Übernahme der Built-in Datentypen (inklusive der 19 primitiven und den davon abgeleiteten Datentypen) von XML-Schema Ergänzung um 5 weitere Typen - Möglichkeit zur Verwendung eigener per Restriktion von den vorhandenen Datentypen abgeleiteter Typen 153 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
13 XPath 2.0 Typkonzept Legende Union types Types defined by XPath 2.0 Item type Node type User defined types (user defined atomic types are not shown) Built-in atomic types Built-in complex types Built-in simple, non-atomic types Built-in primitv types (XML-Schema) 154 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
14 XPath 2.0 Typkonzept - Sequenztypen setzt sich zusammen aus Itemtyp und Kardinalität (Ausnahme leere Sequenz empty-sequence()) - Itemtypen Knotentyp (element(), attribute(),...) oder atomarer Typ (xs:string, xs:integer,...) - Kardinalitäten "*" beliebig häufiges Vorkommen, einschließlich keinmal "+" mehrfaches Vorkommen, mindestens einmal "?" optionales Vorkommen, maximal einmal keine Angabe genau einmaliges Vorkommen 155 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
15 XPath 2.0 Typkonzept - Sequenztypen Prüfung auf bestimmten Typ bspw. möglich per instance of [Sequenztyp] Beispiele (vorlesung/teilnehmer instance of element()) (false) (4711 instance of xs:integer) (true) 156 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
16 XPath 2.0 zusätzliche Formen von Ausdrücken - XPath Kommentare in Ausdrücken keine Bedeutung für die Auswertung von Ausdrücken, daher auch keine Möglichkeit XPath Kommentare zu selektieren (vgl. Kommentarknoten) durch Klammerung zuzüglich Doppelpunkt gekennzeichnet ((:erstes Item der Sequenz:) vorlesung/teilnehmer) an (nahezu) beliebiger Stelle verwendbar (vorlesung/(:auch hier erlaubt:)teilnehmer) (vorlesung/teil(:hier nicht erlaubt:)nehmer) Schachtelung möglich ((:Ein (:Kommentar:) im Kommentar:) vorlesung) 157 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
17 XPath 2.0 zusätzliche Formen von Ausdrücken - Bedingungsausdrücke mächtiges Konstrukt (vgl. Prädikate) Bedingungen nach folgendem Muster spezifizierbar if (condition) Bedingung definieren then (expression) auszuwertender Ausdruck für den Fall, dass Bedingung erfüllt ist else (expression) auszuwertender Ausdruck für den Fall, dass Bedingung nicht erfüllt ist Angabe von else-bedingung ist verpflichtend Klammerung der expression s ist nicht notwendig 158 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
18 XPath 2.0 zusätzliche Formen von Ausdrücken - Bedingungsausdrücke am Beispiel alle Namen (vollständig) der Teilnehmer ausgeben und mögliche zweite Vornamen berücksichtigen (vorlesung/teilnehmer/ concat(vorname, " ", ( if (zweiter_vorname) then concat (zweiter_vorname, " ") else "" ), name)) (Max Mustermann, Otto Normalverbraucher) 159 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
19 XPath 2.0 zusätzliche Formen von Ausdrücken - for-ausdrücke ermöglichen loopen bzw. interieren über Sequenzen mithilfe von Variablen nach folgendem Muster spezifizierbar for $meinevariable in expression return expression definiert Rückgabeergebnis definiert Iterationsvariable(n) und die bindende Sequenz ( binding sequence ) 160 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
20 XPath 2.0 zusätzliche Formen von Ausdrücken - for-ausdrücke Variablen werden durch Präfix $ und einen frei wählbaren Bezeichner gekennzeichnet Mehrere Variablen - Verwendung beliebig vieler (mindestens einer) Variable in for- Ausdrücken durch Kommas separiert möglich - Abarbeitung entspricht dann dem kartesischem Produkt (for $var1 in (1, 2, 3), $var2 in ("a", "b") return concat($var1, $var2)) (1a, 1b, 2a, 2b, 3a, 3b) 161 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
21 XPath 2.0 zusätzliche Formen von Ausdrücken - for-ausdruck am Beispiel die Anzahl der eingeschriebenen Studenten pro Studienfach ermitteln (for $var1 in distinct-values(vorlesung/teilnehmer/studienfach) return concat( "Studienfach ", $var1, ": ", count(vorlesung/teilnehmer[studienfach = $var1]), " Teilnehmer")) (Studienfach 8: 1 Teilnehmer, Studienfach 10: 1 Teilnehmer) 162 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
22 XPath 2.0 zusätzliche Formen von Ausdrücken - Quantifizierungsausdrücke (some und every) ermöglichen Prüfungen auf notwendiges Erfüllen von Bedingungen (ebenfalls unter Nutzung von Variablen) - some Prüfung mindestens einmal erfüllt - every Prüfung für alle erfüllt Ergebnis ist ein Wahrheitswert nach folgendem Muster spezifizierbar quantifier $meinevariable in expression satisfies expression definiert Prüfausdruck definiert Variable(n) und die bindende Sequenz ( binding sequence ) 163 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
23 XPath 2.0 zusätzliche Formen von Ausdrücken - Quantifizierungsausdrücke (some und every) am Beispiel beginnt der Name aller Vorlesungsteilnehmer mit Muster? (every $var1 in vorlesung/teilnehmer satisfies starts-with($var1/name, "Muster")) (false) beginnt der Name mindestens eines Vorlesungsteilnehmers mit Muster? (some $var1 in vorlesung/teilnehmer satisfies starts-with($var1/name, "Muster")) (true) 164 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
24 XPath 2.0 neue Funktionen und Operatoren - arithmetische Operatoren +, -, *, div, mod, idiv idiv ganzzahliger Division (vgl. div in XPath 1.0) (5 idiv 2) (2) div normaler Division (5 div 2) (2,5) - boolesche Operatoren and, or 165 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
25 XPath 2.0 neue Funktionen und Operatoren - Vergleichsoperatoren gezieltere und transparentere Vergleiche als in XPath 1.0 (vor allem wegen erweitertem Typsystem und Sequenzkonzept) Sequenzvergleiche - Ergebnis ist true, wenn mindestens ein Item aus der einen Sequenz den Vergleich mit einem Item aus der anderen Sequenz erfüllt (vgl. Knotenmengenvergleiche bei XPath 1.0) - Operatoren: =,!=, <, >, <=, >= (1, 2, 3) = (1, 2, 3) (true) 166 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
26 XPath 2.0 neue Funktionen und Operatoren - Vergleichsoperatoren Einzelwertvergleiche - Operatoren: eq, ne, lt, gt, le, ge (logisch wie =,!=, <, >, <=, >=) (4 lt 5 and 8 eq 8) (true) Identitätsvergleich von Knoten per is - vergleicht zwei Knoten hinsichtlich ihrer Identität (vorlesung/teilnehmer[@matrikel = 4711] is vorlesung/teilnehmer[@matrikel = 4711]) (true) 167 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
27 XPath 2.0 neue Funktionen und Operatoren - Mengenoperatoren zur Kombination von Knotensequenzen union (vgl. bei Xpath 1.0) Vereinigung der Sequenzen intersect Schnittmenge der Sequenzen except Ausschluss einer Sequenz 168 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
28 XPath 2.0 neue Funktionen und Operatoren - Mengenoperatoren union (vorlesung/teilnehmer[@matrikel = "4711"]/@matrikel union vorlesung/teilnehmer[@matrikel = "4736"]/@matrikel) (4711, 4736) intersect (vorlesung/teilnehmer[@matrikel = "4711"]/@matrikel intersect vorlesung/teilnehmer/@matrikel) (4711) 169 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
29 XPath 2.0 neue Funktionen und Operatoren - Mengenoperatoren except (vorlesung/teilnehmer/@matrikel except vorlesung/teilnehmer[@matrikel = "4736"]/@matrikel) (4711) 170 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
30 XPath 2.0 neue Funktionen und Operatoren - sonstige Operatoren Range-Operator to - zur Erzeugung einer Sequenz von aufsteigenden Integer-Zahlen (1 to 5) (1, 2, 3, 4, 5) - Kombinationen möglich (1 to 5, 7, 9 to 12) (1, 2, 3, 4, 5, 7, 9, 10, 11, 12) - absteigende Sequenzen lassen sich mit Hilfe der reverse- Funktion erzeugen reverse(1 to 5) (5, 4, 3, 2, 1) 171 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
31 XPath 2.0 neue Funktionen und Operatoren - sonstige Operatoren Typabgleiche instance of - Prüfung auf bestimmten Sequenztyp (4711 instance of xs:integer) (true) Typkonvertierung cast as - Durchführung zulässiger Typkonvertierungen (4711 cast as xs:string instance of xs:integer) (false) - Zulässigkeit prüfbar per castable as 172 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
32 XPath 2.0 neue Funktionen und Operatoren - weitreichende Erweiterung der Funktionen aus XPath Funktionen durch Namensraumspräfix fn gekennzeichnet (Angabe optional, da per Default fn) - Zugriffsfunktionen (Accessors) node-name gibt den (qualifizierten) Namen eines Knotens zurück (vorlesung/teilnehmer[@matrikel = "4711"]/*/node-name(.)) (name, vorname, semester, studienfach) data transformiert eine Sequenz von beliebigen Items in eine Sequenz mit nur atomaren Werten 173 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
33 XPath 2.0 neue Funktionen und Operatoren - arithmetische Funktionen min, max ermittelt das Minimum bzw. Maximum von einer Sequenz (min((3,1,7,2))) (1) (max((3,1,7,2))) (7) avg berechnet den Durchschnitt der Werte von einer Sequenz (avg(vorlesung/teilnehmer/semester)) (5.5) 174 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
34 XPath 2.0 neue Funktionen und Operatoren - Datum- und Zeitfunktionen current-datetime gibt einen aktuellen Zeitstempel zurück (max((3,1,7,2))) ( T09:55:46.106Z) year-from-datetime extrahiert aus einem Zeitstempel die Jahresangabe (year-from-datetime( xs:datetime(" t09:55:46.106z") )) (2012) 175 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
35 XPath 2.0 neue Funktionen und Operatoren - Sequenzfunktionen subsequence extrahiert einen Teil einer Sequenz) anhand einer Startposition und einer (optionalen) Länge der Subsequenz (subsequence((10 to 20), 4, 3)) (13, 14, 15) index-of - ermittelt die Position(en) eines Items in einer Sequenz (index-of((1,2,5,3,5,7), 5)) (3, 5) distinct-values reverse 176 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
36 XPath 2.0 neue Funktionen und Operatoren es gibt noch viel mehr ( 177 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
37 XPath XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
38 XML Query Language (XQuery) - eine auf XPath 2.0 aufbauende deskriptive Abfragesprache für XML-Daten (vgl. SQL für relationale Daten) - XQuery erweitert XPath 2.0 um folgende Aspekte FLOWR-Ausdrücke Konstruktoren zur Erzeugung von Knoten Möglichkeiten zur Modularisierung (bspw. Auslagerung selbstdefinierter Funktionen in XQuery-Module meist xqm-dateien) zusätzliche Formen von Ausdrücken (bspw. Validierungsausdrücke) SQL XML-QL XPath Lorel UnQL OQL XQL Quilt XQuery 179 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
39 XQuery 1.0 FLWOR-Ausdrücke - Zusammensetzung der FLWOR-Ausdrücke (gesprochen flower ) For definiert eine Variable, die eine Liste von Elementen durchläuft Let definiert eine Variable, deren Wert eine ganze Liste von Elementen ist Where filtert das Ergebnis (ausgewählten Elemente) anhand einer Bedingung Order by sortiert das Ergebnis Return liefert das Ergebnis als Sequenz in der angegebenen Form zurück - mindestens eine for- oder let-klausel, sowie die return-klausel muss in einem gültigen FLWOR-Ausdruck enthalten sein - weitere Klauseln (where und order by) sind optional - vgl. SELECT... FROM... WHERE... ORDER BY 180 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
40 XQuery 1.0 FLWOR-Ausdrücke - for- und let-klausel in for-klausel wird eine Variable definiert, die an jedes Element (Item) der Sequenz einzeln gebunden wird (per in) in let-klausel wird eine Variable definiert, die an die ganze Sequenz gebunden wird (per :=) for $var1 in (1,2) let $var2 := ("a","b") return <tuple> <for_var>{$var1}</for_var> <let_var>{$var2}</let_var> </tuple> (<tuple> <for_var>1</for_var> <let_var>a b</let_var> </tuple>, <tuple> <for_var>2</for_var> <let_var>a b</let_var> </tuple>) 181 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
41 XQuery 1.0 FLWOR-Ausdrücke - Verwendung mehrere Variablen werden in for-klausel entweder durch Komma separiert oder durch mehrfache Verwendung der Klausel definiert Abarbeitung erfolgt durch Bildung des Kreuzprodukts for $var1 in (1,2) for $var2 in (3,4) return <tuple> <for1_var>{$var1}</for1_var> <for2_var>{$var2}</for2_var> </tuple> (<tuple><for1_var>1</for1_var><for2_var>3</for2_var></tuple>, <tuple><for1_var>1</for1_var><for2_var>4</for2_var></tuple>, <tuple><for1_var>2</for1_var><for2_var>3</for2_var></tuple>, <tuple><for1_var>2</for1_var><for2_var>4</for2_var></tuple>) 182 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
42 XQuery 1.0 FLWOR-Ausdrücke - Verwendung mehrere Variablen werden in let-klausel entweder durch Komma separiert oder durch mehrfache Verwendung der Klausel definiert Abarbeitung erfolgt unabhängig von anderen let-variablen und daher durch Zuweisung der ganzen Sequenz an die Variable let $var1 := (1,2) let $var2 := (3,4) return <tuple> <let1_var>{$var1}</let1_var> <let2_var>{$var2}</let2_var> </tuple> (<tuple><let1_var>(1,2)</let1_var><let2_var>(3,4)</let2_var></tuple>) 183 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
43 XQuery 1.0 FLWOR-Ausdrücke - Gültigkeitsbereich der Variablen der Wert einer Variablen, die in einer for- oder let-klausel gebunden wurde, ist für alle nachfolgenden Klauseln (unverändert) sichtbar let $var1 := 0 for $var2 in ("a","b") let $var1 := $var1 + 1 return <tuple> <let_var>{$var1}</let_var> <for_var>{$var2}</for_var> </tuple> <tuple><let_var>1</let_var><for_var>a</for_var></tuple> <tuple><let_var>1</let_var><for_var>b</for_var></tuple> Beispiel zeigt gleichzeitig noch Überdeckung von Variablen - neue Variable $var1 überdeckt alte Variable $var1 - daher im Ergebnis stets der Wert 1 für die Variable $var1 184 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
44 XQuery 1.0 FLWOR-Ausdrücke - Erkurs: Laden von Dokumenten mit doc() lädt ein XML-Dokument von einer übergebenen Uri Dokument kann an Variable (bspw. per let-klausel) gebunden werden let $document := doc(" return $document <vorlesung titel="xml..."> <teilnehmer matrikel="4711"> <name>mustermann</name> <vorname>max</vorname> <semester>5</semester> <studienfach>8</studienfach> </teilnehmer> <teilnehmer matrikel="4736"> <name>normalverbraucher</name> <vorname>otto</vorname> <semester>6</semester> <studienfach>10</studienfach> </teilnehmer> </vorlesung> Hinweis: weitere Beispiele verwenden z. T. Variable $document (let-klausel aus Kompaktheitsgründen vernachlässigt) 185 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
45 XQuery 1.0 FLWOR-Ausdrücke - where-klausel ermöglicht die gezielte Einschränkung der durch die for- und let- Klausel in den jeweiligen Variablen gehaltenen (Zwischen-)Ergebnisse anschließende return-klausel wird nur für die verbleibenden Elemente ausgewertet for $vorl in $document/vorlesung let $t_zahl := count($vorl/teilnehmer) where $t_zahl > 0 return data($vorl/@titel) XML XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
46 XQuery 1.0 FLWOR-Ausdrücke - where-klausel weiteres Beispiel mit Quantifizierungsausdrücken In welchen Vorlesungen ist mindestens ein Teilnehmer im 6ten Semesters? for $vorl in $document/vorlesung where some $t_sem in count($vorl/teilnehmer[semester = 6]) satisfies $t_sem > 0 return data($vorl/@titel) XML XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
47 XQuery 1.0 FLWOR-Ausdrücke - where-klausel weiteres Beispiel mit Quantifizierungsausdrücken Welche Teilnehmer heißen mit zweiten Vornamen nur Moritz? Welche Teilnehmer, die einen zweiten Vornamen haben, heißen mit zweiten Vornamen nur Moritz? for $teiln in $document/vorlesung/teilnehmer where every $zw_name in $teiln/zweiter_vorname satisfies $zw_name = "Moritz" return data($teiln/@matrikel) XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
48 XQuery 1.0 FLWOR-Ausdrücke - order by-klausel sortiert das Ergebnis nach bestimmten Werten und beeinflusst daher die Ergebnisausgabe der return-klausel Sortierreihenfolge: ascending oder descending for $teiln in $document/vorlesung/teilnehmer order by $teiln/@matrikel descending return $teiln/name <name>normalverbraucher</name> <name>mustermann</name> 189 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
49 XQuery 1.0 FLWOR-Ausdrücke - order by-klausel Umgang mit nicht vorhandenen Werten - empty least Interpretation als kleinste Werte - empty greatest Interpretation als größte Werte for $teiln in $document/vorlesung/teilnehmer order by $teiln/@matrikel descending empty least return $teiln/name <name>normalverbraucher</name> <name>mustermann</name> <name>externer Teilnehmer</name> * Beibehaltung der Dokumentreihenfolge mit stable order by * Annahme: unser Beispiel-XML-Dokument enthält noch einen (externen) Teilnehmer ohne Matrikelnummer 190 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
50 XQuery 1.0 FLWOR-Ausdrücke - return-klausel konstruiert das Ergebnis des FLWOR-Ausdrucks Erzeugung von Sequenzen muss zwingend mit Klammerung erfolgen, da einfache Kommatrennung einen weiteren Ausdruck erwarten lässt let $var1 := (1) let $var2 := (2) return $var1, $var2 let $var1 := (1) let $var2 := (2) return ($var1, $var2) Fehler * (1, 2) * Fehler, da $var2 als neuer Ausdruck interpretiert wird und in diesem nicht vorbelegt ist 191 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
51 XQuery 1.0 Konstruktoren zur Erzeugung von Knoten - zwei Formen von Konstruktoren direkte Konstruktoren (XML-ähnliche Syntax) berechnete Konstruktoren (abweichende Syntax, basierend auf umschlossenen Ausdrücken) - Konstruktoren für folgende Knoten vorhanden Elementknoten Attributknoten Dokumentknoten Textknoten Kommentarknoten Verarbeitungsanweisungsknoten 192 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
52 XQuery 1.0 Konstruktoren zur Erzeugung von Knoten - Elementknoten direkte Konstruktoren <name>inhalt</name> berechnete Konstruktoren element name {Inhalt} - Attributknoten name="inhalt" attribute name {Inhalt} - Dokumentknoten document {Inhalt} - Textknoten Inhalt text {Inhalt} - Kommentarknoten <!--Inhalt--> comment {Inhalt} - Verarbeitungsanweisungsknoten <?name Inhalt?> processing-instruction name {Inhalt} 193 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
53 XQuery 1.0 Konstruktoren zur Erzeugung von Knoten - Anwendung bspw. in return-klausel der FLWOR-Ausdrücke XQuery (FLWOR) XML HTML <vorlesung titel="xml..."> <teilnehmer matrikel="4711"> <name>mustermann</name> <vorname>max</vorname> <semester>5</semester> <studienfach>8</studienfach> </teilnehmer> </vorlesung> 194 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
54 XQuery 1.0 Konstruktoren zur Erzeugung von Knoten let $vorl := $document/vorlesung for $teiln in $vorl/teilnehmer return <html> <head> <title>liste</title> </head> <body> <h1>vorlesung: <h2>student: <font>{concat( $teiln/vorname, " ", $teiln/name, ", Semester ", $teiln/semester, ", Studienfach ", $teiln/semester )} </font> </body> </html> 195 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
55 XQuery XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
56 XSLT 2.0 Überblick über die Weiterentwicklungen - Anpassung an neues XPath 2.0 Datenmodell (Sequenzen) - Erstellung benutzerdefinierter Funktionen - Gruppierung von Knoten (xsl:for-each-group) - Erzeugung mehrerer Ausgabedokumente in einer Transformation - verbesserte Analyse von Text (xsl:analyze-string) -... XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
57 XSLT XML-Abfrage- und Transformationssprachen XQuery oder XSLT - Klassifizierung von XML-Dokumenten dokumentorientiert - (semi-strukturiertes) XML zur Präsentation, Strukturierung oder Konvertierung von Dokumenten in (viel) Text und (wenig) Felddaten - kaum vorhandene bzw. wenige strenge Schemadefinitionen - Dokumentreihenfolge relevant - in der Regel Zugriff auf komplette Dokumente - Beispiel: Zeitungsartikel <schlagzeile id="0815"> <titel>xml-vorlesung zu 50% geschafft!</titel> <inhalt> Jena, die Teilnehmer der Jenaer XML-Vorlesung haben knapp die Hälfte des Lehrinhalts vermittelt bekommen. Sie sind noch immer total fasziniert vom Vorlesungsstoff und können es kaum erwarten, noch mehr davon zu hören. </inhalt> </schlagzeile> 198 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
58 XQuery XML-Abfrage- und Transformationssprachen XQuery oder XSLT - Klassifizierung von XML-Dokumenten datenorientiert - XML zum Zweck der (stark) strukturierten und typisierten Speicherung und dem standardisierten Austausch von Daten (zumeist als Felddaten) - strenge Schemadefinitionen - Dokumentreihenfolge meist unrelevant - zumeist gezielter Zugriff auf einzelne Dokumentteile nötig - Beispiel: Teilnehmer-XML-Dokument zur XML-Vorlesung - XML-Dokumente lassen sich nicht immer strikt in einen der beiden Typen einteilen, daher sind in der Praxis häufig Mischformen anzutreffen - Einsatz von XQuery oder XSLT nicht nur von Klassifizierung abhängig 199 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
59 Es geht (sogar) noch weiter... aktuell (noch) Working Drafts XQuery 1.0 XQuery 3.0 XPath 1.0 XPath 2.0 XPath 3.0 XSLT 1.0 XSLT 2.0 XSLT x? 200 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
60 Exkurs: XQuery Update Facility - XQuery ist selbst nur eine Abfragesprache - keine Möglichkeit zur in-place Manipulation von XML-Dokumenten - Verabschiedung von XQuery Update Facility im März ergänzt XQuery um Manipulationsoperatoren insert() fügt einen Knoten in einen oder vor bzw. nach einem anderen Knoten ein delete() entfernt einen oder mehrere Knoten replace() ersetzt einen Knoten oder dessen Inhalt durch Sequenz bzw. Wert rename() benennt einen Knoten um (nur Elemente, Attribute und Verarbeitungsanw.) XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
61 XML-Datenmodellierung / XML-Schemasprachen Zusammenfassung - XPath ist eine Lokatorsprache, die für die Verwendung in XSLT und später auch XQuery konzipiert wurde - während XPath 1.0 mithilfe von Lokalisierungspfaden (über Achsen, Knotentests und Prädikate) gezielt Dokumentteile lokalisiert, besitzt XPath 2.0 durch verschiedene Ausdrücke weitreichendere Abfragemöglichkeiten - erst XQuery stellt (vor allem) durch die speziellen FLWOR-Ausdrücke und das durch das XPath 2.0 Datenmodell vorgegebenen Sequenz-Konzept eine vollwertige deskriptive Abfragesprache für XML-Dokumente dar - XSLT ist eine Transformationssprache und kann mithilfe des Template- Mechanismus vorhandene Dokumente in unterschiedlichste Strukturen/Formate transformieren - die genannten Standards werden kontinuierlich weiterentwickelt und befinden sich aktuell vor ihrer nächsten (Major-)Empfehlung 202 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken
XQuery 1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken Inhalt des Moduls: Grundlagen, Herkunft, Einsatz Basis-Syntax, FLWOR Anwendungsfälle/
MehrAnfragen an XML-Dokumente mit XPath
Anfragen an XML-Dokumente mit XPath Heike Adel 21.06.2010 1 / 32 Motivation Gliederung Motivation Mit XPath kann man... Knoten aus XML-Dokumenten auswählen Werte aus XML-Dokumentdaten berechnen => ganz
MehrXPath & XQuery Standardisierte Abfragesprachen für XML-Dokumente. Sebastian Apel
XPath & XQuery Standardisierte Abfragesprachen für XML-Dokumente Sebastian Apel Inhalt Die Geschichte XPath 1.0 Das Datenmodell Pfadausdrücke Anwendung von XPath XPath 2.0 & XQuery Neues in XPath 2.0 Wozu
MehrEntwicklung eines Tutorials für XQuery
Informatik Dimitar Menkov Entwicklung eines Tutorials für XQuery Development of a Tutorial for XQuery Masterarbeit Bibliografische Information der Deutschen Nationalbibliothek: Die Deutsche Bibliothek
MehrTypologie. XPath unterscheidet zwischen sieben verschiedenen Knoten- Typen.
Xpath und XQuery Inhalte Typologie Ergebnisarten Achsen Pfad-Ausdrücke Fortgeschrittene Ausdrücke Operatoren Kommentar Kontrollanweisungen FLWOR Konstruktoren Beispiele Variablen Funktionen Namensräume
MehrXQuery. XML Query Language. eine Abfragesprache für XML. Ulrike Henny. IDE Autumn School 2012, Chemnitz
XQuery XML Query Language eine Abfragesprache für XML Ulrike Henny ulrike.henny@uni-koeln.de Abfragesprache für XML Entwicklung seit 1999, aus Quilt, XQL und XML-QL hervorgegangen 2007/2010 W3C-Recommendation
MehrXML Path Language (XPath)
XML Path Language (XPath) 23.05.2006 Gholaman, Ali Bui, Binh Rodionov, Dmytro Büscher,Miguel Colak,Sedat Kebiri, Yassine Entstehung Wurde im November 1999 verabschiedet. Wurde von dem W3C in einer Zusammenarbeit
MehrDatenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen
Datenbanksysteme XML und Datenbanken Burkhardt Renz Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2019 Übersicht Semistrukturierte Daten Datendefinition in XML Dokumenttypdefinition
Mehr7.2.2 Spezifikation einer Treffermenge
7.2.2 Spezifikation einer Treffermenge Das Ergebnis der Auswertung eines XPath Ausdrucks (Version 1.0) ist eine Liste von Knoten. Folgende Schritte sind bei einer Anfrage auszuführen: 1.) Festlegung des
MehrXML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 13 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
MehrXML. Einführung, XML-Grundlagen und -Konzepte. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 12 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
Mehr- Wiederholung/Übung -
- Wiederholung/Übung - Einführung, XML-Grundlagen und -Konzepte 1 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen Welche Bestandteile hat ein XML-Dokument? Bestandteile eines XML-Dokuments XML-Dokument
MehrXML. XML-Abfrage- und Transformationssprachen. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 86 XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
MehrXML. XML-Datenmodellierung / XML-Schemasprachen. XPath DTD. XQuery. XML-Schema XSLT XML-Grundlagen, -Sprachen, -Datenhaltungsfragen
XML-Datenmodellierung / XML-Schemasprachen XML-Abfragesprachen XML-Schemasprachen DTD XML-Schema... XPath XQuery XML XML-Transformationssprache XSLT Relationale DBMS XML in DBMS Dedizierte XML-DBMS 83
MehrDatenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester 2015. Fachbereich MNI Technische Hochschule Mittelhessen
Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Übersicht Semistrukturierte Daten Dokumenttypdefinition XML-Schema XML aus Datenbank konstruieren XML in Datenbank speichern Merkmale
MehrXPath-Abfragen. 8 XPath-Abfragen
8 XPath-Abfragen 419 420 8 XPath-Abfragen Wie an verschiedenen Stellen angekündigt, soll die XPath-Syntax an dieser Stelle im Zusammenhang kurz in der Version 1.0, die in den PHP-Werkzeugen genutzt werden
MehrXPath Lokalisierspfade Achsen in Lokalisierungsschritten
Achsen in Lokalisierungsschritten self-achse Kontextknoten selbst child-achse Kindknoten des Kontextknotens in Dokumentreihenfolge parent-achse Elterknoten des Kontextknotens attribute-achse Attributknoten
MehrMit XQuery auf eine Oracle-Datenbank
Campus Gummersbach Institut für Informatik Prof. Dr. Heide Faeskorn-Woyke Informatik, insbesondere Multimediadatenbanken Mit XQuery auf eine Oracle-Datenbank Fachhochschule Köln Institut für Informatik
MehrSQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.
SQL Lehr- und Forschungseinheit Datenbanken und Informationssysteme Ziele Grundlagen von SQL Beziehung zur relationalen Algebra SELECT, FROM, WHERE Joins ORDER BY Aggregatfunktionen Lehr- und Forschungseinheit
MehrEinführung in XML. Seminarunterlage. Version 3.05 vom
Seminarunterlage Version: 3.05 Version 3.05 vom 8. März 2017 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen oder
MehrXML Datenbanken Quickstart für die Anfragesprachen XPath und XQuery
XML Datenbanken Quickstart für die Anfragesprachen XPath und XQuery Harald Lang 3. Juli 2014 XQuery (2) XPath (1) (1) Pfadausdrücke mit XPath Adressieren von Elementen innerhalb eines hierarchischen XML-Dokuments
MehrQuerysprachen für XML
Querysprachen für XML Zusätzliche Quellen: http://www.w3.org/tr/xquery/ http://www.w3schools.com/xquery/ XML-QL XML-QL ist eine Querysprache für XML mit folgenden Eigenschaften: Kombiniert die XML-Syntax
MehrProjektseminar Texttechnologische Informationsmodellierung
Projektseminar Texttechnologische Informationsmodellierung XQuery Ziele der Sitzung Nach dieser Sitzung sollten Sie: XQuery als wesentlichen Standard zur Abfrage von in XML kodierten Daten kennen Mit Hilfe
MehrTextnavigation mit XPath. Daniel Schopper
Textnavigation mit XPath Daniel Schopper daniel.schopper@oeaw.ac.at Inhalt Was ist XPath (und wofür brauche ich es?) Knotentypen in XML Achsen Funktionen Reguläre Ausdrücke https://pixabay.com/get/ea3cb10628f71c22d9584518a33219c8b66ae3d019b718429df7c370/compass-390903_1920.jpg
MehrXSLT für SAP NetWeaver Process Integration. Transformationssprache für XML Dokumente
XSLT für SAP NetWeaver Process Integration Transformationssprache für XML Dokumente Entwicklung und Laufzeit Datenebene Metadatenebene Generieren Generieren Entwicklung ORDERS02 IDocXML Schema Validieren
MehrGruppe 3 / 5 / 10. Tutorübung zu Einsatz und Realisierung von Datenbanksystemen (SS 17) Michael Schwarz
Gruppe 3 / 5 / 10 Tutorübung zu Einsatz und Realisierung von Datenbanksystemen (SS 17) Michael Schwarz Institut für Informatik Technische Universität München 19.07 / 20.07 / 21.07.2017 1/3 Allgemeines
MehrXQuery Tutorial. Student: Anke Bremer Betreuer: Dr. Sosna
XQuery Tutorial Student: Anke Bremer Betreuer: Dr. Sosna Inhalt 1 Gliederung Tutorial 2 Beispiele für Seitengestaltung - XML Namespaces - Pfadausdrücke 3 Ideen / Fragen / Vorschläge Inhalt Tutorial 1.
Mehrinsert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle
Einführung in SQL insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle Quelle Wikipedia, 3.9.2015 SQL zur Kommunikation mit dem DBMS SQL ist
MehrSummer School Digitale Edition
Summer School Digitale Edition Erschließung geisteswissenschaftlicher Quellen mit digitalen Methoden 5.-9. September 2016 Zentrum für Informationsmodellierung Austrian Centre for Digital Humanities Elisabethstraße
MehrEs geht also im die SQL Data Manipulation Language.
1 In diesem Abschnitt wollen wir uns mit den SQL Befehlen beschäftigen, mit denen wir Inhalte in Tabellen ( Zeilen) einfügen nach Tabelleninhalten suchen die Inhalte ändern und ggf. auch löschen können.
MehrAnfragen & Transformation
Anfragen & Transformation mit XQuery XML Proseminar Le Huan Stefan Tran I 21.06.2010 Reales Beispiel Alle Weltmeister und ihre Finalgegner worldchampions.xml 2006 italy
MehrISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski. www.iit.tu-cottbus.de
08 Datenbanken Übung SQL Einführung Eckbert Jankowski www.iit.tu-cottbus.de Datenmodell (Wiederholung, Zusammenfassung) Objekte und deren Eigenschaften definieren Beziehungen zwischen den Objekten erkennen/definieren
MehrDokument-Ordnung. p. 2/3
p. 1/3 XQuery XQuery ist eine funktionale Sprache; Anfragen werden nicht in Form von Anweisungen, sodern als ein Ausdruck definiert. XQuery ist eine streng-getypte Sprache. Der Wert eines Ausdrucks ist
MehrINVENTARNR NAME BENUTZNR
XML-Datenbanken 1. Traditionale Datenbanken 1.1 Heutzutage, wenn wir von Datenbanken reden, denken wir vielleicht zuerst an den traditionale Datenbaken, bzw relationale Datenbanken, die wir schon seit
MehrWege zur Anzeige. XSL die extensible Stylesheet Language. Wege zur Anzeige. Folie 1. Institut für Dokumentologie und Editorik
XSL die extensible Stylesheet Language Folie 1 Spring School 14. bis 18. März 2011 Einführung - Warum XML? Warum TEI? Trennung von Form und Inhalt Eine Quelle, viele verschiedene Ausgabeformate - Standardstylesheets
Mehr7. XML-Datenbanksysteme und SQL/XML
7. XML-Datenbanksysteme und SQL/XML Native XML-DBS vs. XML-Erweiterungen von ORDBS Speicherung von XML-Dokumenten Speicherung von XML-Dokumenten als Ganzes Generische Dekomposition von XML-Dokumenten Schemabasierte
MehrDOM Document Object Model
DOM Document Object Model J. Schneeberger Das Document Object Model (DOM) W3C Spezifikation Benutzt die Baumstruktur des (XML/HTML) Dokuments Programmierschnittstelle (API) für HTML- und XML-Dokumente
MehrWS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)
Vorlesung #3 SQL (Teil 1) Fahrplan Wiederholung/Zusammenfassung Relationales Modell Relationale Algebra Relationenkalkül Geschichte der Sprache SQL SQL DDL (CREATE TABLE...) SQL DML (INSERT, UPDATE, DELETE)
MehrXQuery. Jan Woschofius
XQuery Jan Woschofius Übersicht 1. Was ist XQuery 2. XQuery / XSLT 3. FLWOR 4. Extensions Was ist XQuery XQuery ist für XML, was SQL für Relationale Datenbanken ist. XQuery sucht und findet Elemente und
MehrDatenbanksysteme. Einführung in XML-Technologien. Teil 2: XQuery und XSLT Martin Gieseking
Datenbanksysteme Einführung in XML-Technologien Teil 2: XQuery und XSLT 31.5.2011 Martin Gieseking Struktur von XML-Dokumenten XML-Dokumente besitzen grundsätzlich eine Baumstruktur es gibt genau einen
MehrVorlesung Datenbanken II SS 2006
Vorlesung Datenbanken II SS 2006 1 Vorlesung Datenbanken II SS 2006 Sven Wachsmuth, Technische Fakultät, AG Angewandte Informatik Vorlesung Datenbanken II SS 2006 2 4.2.2 XML-Anfragesprachen Konzepte von
Mehr5. Sortierung, Nummerierung und Gruppierung
5. Sortierung, Nummerierung und Gruppierung Sortierungen Einfache Sortierung Mehrfache Sortierung Sortierung: Grundlagen Mit Hilfe einer Sortierung ist es in XSLT möglich, die Reihenfolge eines Dokuments
MehrDas XQuery-Datenmodell
Das XQuery-Datenmodell Gliederung Sequenzen Atomare Werte Knoten Knoteneigenschaften Sequenztypen und Knotenzugriffsfunktion Typabfrage Gleichheit von Sequenzen Zusammenfassung Das XQuery-Datenmodell Das
MehrDaniel Warner SQL. Das Praxisbuch. Mit 119 Abbildungen. Franzis
Daniel Warner SQL Das Praxisbuch Mit 119 Abbildungen Franzis Inhaltsverzeichnis Teil I - Einleitung 15 1 Einleitung 17 1.1 Zum Aufbau des Buchs 17 1.2 Hinweise zur Buch-CD 18 1.3 Typografische Konventionen
MehrUniversität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5
Universität Augsburg, Institut für Informatik WS 2008/2009 Prof. Dr. W. Kießling 23. Nov. 2007 Dr. A. Huhn, M. Endres, T. Preisinger Lösungsblatt 5 Aufgabe 1: SQL-Queries Datenbanksysteme I a) Geben Sie
Mehr[ SQL] Wissen, das sich auszahlt
[www.teia.de SQL] Wissen, das sich auszahlt INHALT SEITE 12 [I] 1] Einführung in SQL und relationale Datenbanken 12 14 16 18 11 1.1 1.2 Einführung Die Structured Query Language (SQL) Tabellen Mehrere Tabellen
Mehr7.3 XML-Anfragesprache XQuery
7.3 XML-Anfragesprache XQuery XQuery 1.0 hat folgende Eigenschaften: Ist die Abfragesprache für XML-Daten analog zu SQL bei relationalen DBs. XQuery- Anfragen werden unter *.xq gespeichert. XQuery ist
MehrSQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)
SQL DDL (Data Definition Language) Befehle und DML(Data Manipulation Language) DML(Data Manipulation Language) SQL Abfragen Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro
MehrSeminar: XML und intelligente Systeme
Seminar: XML und intelligente Systeme XML-Navigation: XPath, E4X Christoph Weitkamp cweitkam@techfak.uni-bielefeld.de Einleitung XPath ist eine Sprache, um Informationen in XML-Dokumenten zu finden Modellierung
MehrSELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage.
SELECT-FROM SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage. Inhaltsverzeichnis 1 Der grundlegende Aufbau 2 Doppelte
MehrXQuery S 2015/2016 Seite 1 h_da W
XQuery Seite 1 XQUERY XQuery ist eine Suchanfragen Sprache mit der Funktionalität: Selektieren von Elementen und Attributen in einem Dokument J oin von mehreren Dokumenten Ändern von Daten Berechnen neuer
MehrEinführung in XQuery
Einführung in XQuery Udo Kelter 22.06.2006 Zusammenfassung dieses Lehrmoduls XPath ist eine grundlegende Abfragesprache für XML-Datenbestände, deren Funktionsumfang beschränkt ist und die es nicht erlaubt,
MehrSQL Data Manipulation Language (DML) und Query Language (QL)
Innsbruck Information System University of Innsbruck School of Management Information Systems Universitätsstraße 15 6020 Innsbruck SQL Data Manipulation Language (DML) und Query Language (QL) Universität
MehrDiskussion: Personal (1)
Diskussion: Personal (1) ER-Diagramm: Abteilung ist beschäftigt in [0, n] [0, 1] Person Umsetzung ins Relationenmodell? Diskussion: Personal (2) Zusätzliche Regel: In jeder Abteilung (Person) muss mindestens
MehrSQL als Zugriffssprache
SQL als Zugriffssprache Der Select Befehl: Aufbau Select- und From-Klausel Where-Klausel Group-By- und Having-Klausel Union Join-Verbindung Order-By-Klausel Der Update-Befehl Der Delete-Befehl Der Insert-Befehl
MehrPRÜFUNG IN SEMI-STRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname
PRÜFUNG IN SEMI-STRUKTURIERTE DATEN 184.705 27. 06. 2017 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht gewertet.
MehrXSLT, XPath und XQuery Marco Skulschus Marcus Wiederstein Sarah Winterstone
www.comelio-medien.com XSLT, XPath und XQuery Marco Skulschus Marcus Wiederstein Sarah Winterstone XSLT, XPath und XQuery Marco Skulschus Marcus Wiederstein Sarah Winterstone XSLT, XPath und XQuery Marco
Mehrdbis Praktikum DBS I SQL Teil 2
SQL Teil 2 Übersicht Fortgeschrittene SQL-Konstrukte GROUP BY HAVING UNION / INTERSECT / EXCEPT SOME / ALL / ANY IN / EXISTS CREATE TABLE INSERT / UPDATE / DELETE 2 SELECT Syntax SELECT FROM [WHERE [GROUP
MehrStructured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken
Rückblick Structured Query Language (SQL) als standardisierte Anfragesprache für relationale Datenbanken Data Definition Language zur Schemadefinition (z.b. CREATE TABLE zum Anlegen von Tabellen) Data
MehrDokumentverarbeitung
Dokumentverarbeitung D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg Winter 2012/13, 2. November 2012, c 2010-13 D.Rösner D. Rösner
MehrFunktionen. Überblick über Stored Functions. Syntax zum Schreiben einer Funktion. Schreiben einer Funktion
Überblick über Stored Functions Funktionen Eine Funktion ist ein benannter PL/SQL- Block, der einen Wert zurückgibt. Eine Funktion kann in der Datenbank als Objekt zur wiederholbaren Ausführung gespeichert
MehrGrundlegende Datentypen
Grundlegende Datentypen Funktionale Programmierung Prof. Dr. Oliver Braun Letzte Änderung: 22.10.2018 10:53 Grundlegende Datentypen 1/21 Typen in Haskell ist alles streng typisiert Haskell verfügt über
MehrSemistrukturierte Datenmodelle. XML Datenmodelle. XML Infoset. OEM Beispielbaum. Document InfoItem. Beispiel
XML Datenmodelle Web Informationssysteme Wintersemester 2002/2003 Donald Kossmann Semistrukturierte Datenmodelle Beispiel: OEM (Objekt Exchange Model) Repräsentiere Dokument als annotierten Baum Knoten
MehrTransformation von XML-Dokumenten mit XSLT
Transformation von XML-Dokumenten mit XSLT Fabian Holzer Proseminar XML - Grundlagen, Verarbeitung und Anwendungen Institut für Programmstrukturen und Datenorganisation (IPD) Lehrstuhl für Systeme der
Mehr7. XML-Datenbanksysteme und SQL/XML
7. XML-Datenbanksysteme und SQL/XML DB-Speicherung von XML-Dokumenten Arten von XML-Dokumenten Native XML-DBS vs. XML-Erweiterungen von ORDBS Speicherungsoptionen: ganzheitliche Speicherung vs. Dekomposition
MehrGrundlagen von SQL. Informatik 2, FS18. Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich
Grundlagen von SQL Informatik 2, FS18 Dr. Hermann Lehner (Material von Dr. Markus Dahinden) Departement Informatik, ETH Zürich Markus Dahinden 13.05.18 1 Grundlagen von SQL (Structured Query Language)
Mehr5/14/18. Grundlagen von SQL. Grundlagen von SQL. Google, Facebook und Co. setzen auf SQL. Whatsapp
5/14/18 Grundlagen von SQL (Structured Query Language) Datenbanksprache Befehle Datenbanken und Tabellen erstellen/verändern Daten manipulieren (eingeben, ändern, löschen) Datenbank durchsuchen (Queries
MehrSeminar 1 SQL Abfragen DML. MatrNr Name Vorname Age Gruppe Schmidt Hans Meisel Amelie
Seminar 1 SQL Abfragen DML Studenten MatrNr Name Vorname Email Age Gruppe 1234 Schmidt Hans schmidt@cs.ro 21 331 1235 Meisel Amelie meisel@cs.ro 22 331 1236 Krause Julia krause@cs.ro 21 332 1237 Rasch
MehrInstitut für Dokumentologie und Editorik. XML-Datenbanken und XQuery
XML-Datenbanken & XQuery Folie 1 XML Digitale Edition XSL-FO XSLT XQuery XML-DB Folie 2 Programm - Ausgewählte Biere verköstigen - Brauereibesichtigung - Anwendung der Hefe erlernen - brauen Folie 3 Telota
MehrXPATH (XPATH) Lernziele
XPATH (XPATH) Lernziele Sie finden sich im XPath-Datenmodell zurecht. Sie kennen alle XPath-Achsen. Sie können Knoten und Knotenmengen mit XPath-Ausdrücken auswählen. Sie sind in der Lage, Lokalisierungspfade
MehrXSLT XSL Transformations
XML-Praxis XSLT XSL Transformations Teil 1 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Namespaces XPath einfache XSLT-Stylesheets template rules default rules XML-Praxis XSLT XSL Transformations,
MehrGrundlegende Datentypen
Grundlegende Datentypen (Funktionale Programmierung) Prof. Dr. Oliver Braun Letzte Änderung: 18.03.2018 21:08 Grundlegende Datentypen 1/16 Typen in Haskell ist alles streng typisiert Haskell verfügt über
MehrXML-QL. Querysprachen für XML. Semistrukturierte Datenmodell und XML Datenmodell. Beispiel
XML-QL Querysprachen für XML Zusätzliche Quellen: http://www.w3.org/tr/xquery/ http://www.w3schools.com/xquery/ XML-QL ist eine Querysprache für XML mit folgenden Eigenschaften: Kombiniert die XML-Syntax
MehrGruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname
Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 24. 10. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden
MehrInhalt des Moduls: Grundlagen. Vorlagen. Kontrollstrukturen. Ausgabestrukturen. Parameter und Variablen. Dateibasierte Auslagerung
XSLT Inhalt des Moduls: Grundlagen Vorlagen Kontrollstrukturen Ausgabestrukturen Parameter und Variablen Dateibasierte Auslagerung Grundlagen XSLT (extensible Stylesheet Language for Transformations) ist
MehrDatenmanipulation in SQL (1): Subselect:
Datenmanipulation in SQL (1): Unter Datenmanipulation wird sowohl der lesende Zugriff auf die Daten (Select Statement) als auch die Änderung von Daten (Insert, Delete, Update) subsummiert. Wir beginnen
MehrGrundlegende Datentypen
Funktionale Programmierung Grundlegende Datentypen Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 14.11.2017 15:37 Inhaltsverzeichnis Typen........................................
MehrFunktionale Programmierung Grundlegende Datentypen
Grundlegende Datentypen Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 06.11.2017 16:45 Inhaltsverzeichnis Typen........................................
MehrÜbersicht der wichtigsten MySQL-Befehle
Übersicht der wichtigsten MySQL-Befehle 1. Arbeiten mit Datenbanken 1.1 Datenbank anlegen Eine Datenbank kann man wie folgt erstellen. CREATE DATABASE db_namen; 1.2 Existierende Datenbanken anzeigen Mit
MehrProjektseminar "Texttechnologische Informationsmodellierung"
Projektseminar "Texttechnologische Informationsmodellierung" Formatierung und Transformation http://www.text-technology.de/projects/sekimo.html Ziel dieser Sitzung Nach dieser Sitzung sollten Sie: XPath
MehrSQL. SQL SELECT Anweisung SQL-SELECT SQL-SELECT
SQL SQL SELECT Anweisung Mit der SQL SELECT-Anweisung werden Datenwerte aus einer oder mehreren Tabellen einer Datenbank ausgewählt. Das Ergebnis der Auswahl ist erneut eine Tabelle, die sich dynamisch
MehrXSL Transformation (XSLT) Teil II
XML Vorlesung FH Aargau, SS 2006 XSL Transformation (XSLT) Teil II Erik Wilde 19.6.2006 http://dret.net/lectures/xml-fhnw-ss06/ 19.6.2006 XML Vorlesung FHA SS 2006 1 Übersicht Conflict Resolution Variablen
MehrXML Vorlesung FHA SS
XML Vorlesung FH Aargau, SS 2006 XSL Transformation (XSLT) Teil II Erik Wilde 19.6.2006 Übersicht Conflict Resolution Variablen und Parameter Sortieren Erzeugen des Ausgabebaumes XPath Erweiterungen um
MehrVorbemerkung. Allgemeines zu Shell Scripts. Aufruf. Einfaches Beispiel
Inhalt: Vorbemerkung...1 Allgemeines zu Shell Scripts...1 Aufruf...1 Einfaches Beispiel...1 Testen eines Shell-Scripts...2 Kommandozeilen-Parameter...2 Prozeßsteuerung...3 Bedingte Ausführung: if...3 Mehrfachentscheidung:
MehrXQuery h_da SS 2015 Seite 1
XQuery Seite 1 XQUERY XQuery ist eine Suchanfragen Sprache mit der Funktionalität: Selektieren von Elementen und Attributen in einem Dokument J oin von mehreren Dokumenten Ändern von Daten Berechnen neuer
MehrGruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname
Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 13. 1. 2015 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht
MehrInformatik I (D-ITET)
Informatik I (D-ITET) Übungsstunde 2, 5.10.2009 ETH Zürich? Übungsgruppenwechsel? Abgabe der Übungen... Bis Mo, 24:00 Theorie: Programme: per mail oder auf Papier.cpp Datei per mail Bin euch noch Demos
MehrAbfragen (Queries, Subqueries)
Abfragen (Queries, Subqueries) Grundstruktur einer SQL-Abfrage (reine Projektion) SELECT [DISTINCT] {* Spaltenname [[AS] Aliasname ] Ausdruck} * ; Beispiele 1. Auswahl aller Spalten SELECT * ; 2. Auswahl
MehrGruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname
Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 7. 1. 2014 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht
MehrXSLT XSL Transformations
XML-Praxis XSLT XSL Transformations Teil 1 Jörn Clausen joern@techfak.uni-bielefeld.de Übersicht Namespaces XPath einfache XSLT-Stylesheets template rules default rules XML-Praxis XSLT XSL Transformations,
MehrXML-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel 25.-29.6.2012.
XML-Verarbeitung XPath XSL die extensible Stylesheet Language Folie 1 Was ist XSL? - Mehrere Komponenten: - XSLT Transformations - XSL-FO Formatting Objects - XPath - (XML-Schema) - Ausgabeformate: - XML,
MehrIch hab da mal ne Frage...
Ich hab da mal ne Frage... Mit XQuery die richtigen Antworten finden und mit XUpdate neue Erkenntnisse verarbeiten Annette Bunz E-Mail: annette_bunz@gmx.de Fachhochschule Augsburg University of Applied
Mehr5. Programmierschnittstellen für XML
5. Programmierschnittstellen für für Medientechnologen Dr. E. Schön Wintersemester 2015/16 Seite 146 Notwendigkeit: Programmierschnittstelle Zugriff auf -Daten durch Applikationen wiederverwendbare Schnittstellen
MehrSemistrukturierte Daten
Semistrukturierte Daten Teil 7: XPath 1.0 Sommersemester 2007 7.1. Einführung 7.2. XPath Ausdrücke (expressions) 7.3. Pfadangaben (location paths) 7.4. Operatoren 7.5. Vordefinierte Funktionen 4.1. Einführung
MehrIn diesem Abschnitt wollen wir uns mit dem Thema XML Datenbank beschäftigen. Das Ziel ist, herauszufinden, was XML Datenbank überhaupt sind und was
1 In diesem Abschnitt wollen wir uns mit dem Thema XML Datenbank beschäftigen. Das Ziel ist, herauszufinden, was XML Datenbank überhaupt sind und was die wichtigsten Konzepte sind. Den Themenbereich XML
MehrGliederung. Dokumentverarbeitung. XQuery: XQuery: XQuery
Gliederung Dokumentverarbeitung D. Rösner Institut für Wissens- und Sprachverarbeitung Fakultät für Informatik Otto-von-Guericke Universität Magdeburg 1 Winter 2012/13, 9. November 2012, c 2010-13 D.Rösner
MehrSQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:
SQL Structured Query Language: strukturierte Datenbankabfragesprache eine Datenbanksprache zur Definition, Abfrage und Manipulation von Daten in relationalen Datenbanken In der SQL-Ansicht arbeiten In
MehrGruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname
Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN 184.705 13. 1. 2015 Kennnr. Matrikelnr. Familienname Vorname Arbeitszeit: 100 Minuten. Aufgaben sind auf den Angabeblättern zu lösen; Zusatzblätter werden nicht
Mehr