1 Seminar 2004/2005 von Auszeichnungssprache XPath Ein Referat von Wei CAI 18.11.2004.

Slides:



Advertisements
Ähnliche Präsentationen
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
Advertisements

Verarbeiten und Präsentieren von
Einführung in die Informatik: Programmierung und Software-Entwicklung
XML: Extensible Markup Language
Zusammenfassung der Vorwoche
B-Bäume.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Anmerkungen zu XML Im September 2000 Entwicklung/Anspruch von XML
Klicke Dich mit der linken Maustaste durch das Übungsprogramm! Vereinfachung von Termen Ein Übungsprogramm der IGS - Hamm/Sieg © IGS-Hamm/Sieg 2006 Dietmar.
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
DOM (Document Object Model)
XINDICE The Apache XML Project Name: Jacqueline Langhorst
XPATH XML Path Language. Xpath – XML Path Language IT Zertifikat - Daten und Metadatenstandards: XPath 2 Entwicklung des W3C Adressierungssprache für.
XML - Abfragesprache Xpath. Problemstellung Unsere XML-Datei steht und wir wollen alle 1. Titel aller vergangenen Sendungen automatisch aus den Playlists.
Das XQuery-Datenmodell. Gliederung Sequenzen Atomare Werte Knoten Knoteneigenschaften Sequenztypen und Knotenzugriffsfunktion Typabfrage Gleichheit von.
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
XML-Anfragesprachen (Schwerpunkt XQuery). © Prof. T. Kudraß, HTWK Leipzig Übersicht Anforderungen an XML-Anfragesprachen Stand der Entwicklung XPath Anfragesprache.
XML Standardisierungen und Abfragesprachen
Einführung XML XML Einführung Andreas Leicht.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Katharina Bellon Technische Universität Kaiserslautern Fachbereich Informatik Lehrgebiet Datenverwaltungssysteme Verarbeitung von XML-Strömen.
XPointer Die Xpointer beschreiben einen Ort oder Bereich innerhalb einer XML-Instanz. Die XPointer bauen auf der XML Path Language auf. Die XPointer ist.
Xlink / Xpointer - Framework
Normalformen Normalisieren Schlüssel
XQuery-Anfragen Spezifikations- und Selektionsmethoden für Daten und Dienste Markus Mauch.
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
Was versteht man unter XML Schema?
FH-Hof 1 XML-Parser Richard Göbel. FH-Hof 2 XML-Parser- DOM Object Tree Parser Objekt der Klasse 'DocumentBuilderFactory' mit 'newInstance()' erzeugen.
XML Path Language XPath
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
- XML-Path Language (xPath) ist eine Empfehlung des W3C - es wurde entwickelt, um durch ein XML- Dokument zu navigieren - und ist ein großer Teil von.
XSLT.
Xpath und XQuery.
20:00.
SK / , , in Hochkössen und der Wildschönau flow Ski- und Snowboardschule Intersport Menzel.
XML - Konzepte XHTML XML Base XPath XInclude XLink XForms XPointer
...ich seh´es kommen !.
Wir üben die Malsätzchen
Datenbanktechnologie Daniel Ebner SS Mai Ulrike Lohner.
Auslegung eines Vorschubantriebes
XPath Was ist XPath XPath ist eine Syntax für das Definieren der Teile eines XML-Dokumentes. XPath benutzt Pfade, um XML-Elemente zu definieren. XPath.
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
1 DMS EXPO 2009 Keynote Angst und Gier Dr. Ulrich Kampffmeyer PROJECT CONSULT Unternehmensberatung Dr. Ulrich Kampffmeyer GmbH Breitenfelder Straße 17.
© Bibliothek und Archiv der Österreichischen Akademie der Wissenschaften Katalogisierung in RAK / MAB2 Beispiele 1. Teil Lösungen Verbund für Bildung und.
HORIZONT 1 XINFO ® Das IT - Informationssystem HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 /
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Verarbeiten von XML-Daten
Wohlgeformtheit und Gültigkeit Grundlagen der Datenmodellierung Anke Jackschina.
SK / – in Hochkössen, St. Johann i.Tirol und Hochfügen flow Ski- und Snowboardschule Intersport Menzel.
XSLT Voraussetzungen, trivial
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Analyseprodukte numerischer Modelle
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Möbelhaus Mustermann Möbelhaus Mustermann Revision 0 Seite Nr
Der Erotik Kalender 2005.
© 2001 Sven Dammann1 Aufbau Integrierter Informationssysteme XML Bearbeitung und relationale Abbildung Sven Dammann Martin-Luther-Universität Halle-Wittenberg.
Exploiting Web Applications
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Monatsbericht Ausgleichsenergiemarkt Gas – November
XPath Datenmodell und Sequenzen Universität zu Köln – Historisch-Kulturwissenschaftliche Informationsverarbeitung Datenbanktechnologie – Daniel Ebner –
XPath und XQuery Marko Harasic Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme
Einführung in XML 1-Tages-Kurs.
 Präsentation transkript:

1 Seminar 2004/2005 von Auszeichnungssprache XPath Ein Referat von Wei CAI

2 Informationsquellen Harald Schöning : XML und Datenbanken Richard Anderson : XML professionell

3 Inhalt des Referats 1. Einleitung 2. Datenmodell 3. Lokalisierungspfade 4. Abgek ü rzte Syntax 5. Ausdrücke 6. Funktionen

4 Beispiel Hotel Hotelnamesternstufe klasse Addressee Plz ort straße hausnummer Telefonräume zimmer zimmertyp einzelzimmerndoppelzimmer preise zimmernrwohlzustand

5 Beispiel DTD vom Beispiel (Hotel) <!DOCTYPE hotel [ <!ATTLIST zimmer zimmernr CDATA #FIXED wohnzustand ( ja | nein) nein ]>

6 Beispiel Kunden Kunde* Name Vorname Nachname Kontakt Telefon > #PCDATA Kundennrzimmernr

7 Beispiel DTD vom Beispiel (Kunden) <!DOCTYPE Kunden [ <!ATTLIST Kunde Kundennr CDATA #FIXED Zimmernr CDATA #REQUIRED> ]> XML Beispielsdokument Wei CAI Thomas Kaiser ……….

8 XML-Datenbank

9 Einleitung XSLT zum Entwurf von Präsentationsformen von XML-Dokumenten erfordert Zugriff auf Elemente von XML-Dateien XML Datenbanken brauchen eine Anfragesprache Xpath bietet Zugriff auf XML-Strukturen

10 Einleitung Anforderungen an XML Datenabank Anfragesprachen: -muss deklarativ sein -verfügt mehr als eine Syntax-Repräsentation und davon für Benutzer leicht les- und schreibbar -muss eine integrierte Fehlerbehandlung vorsehen -kann auf allen endlichen XML-Dokument operieren -mit Namensräumen umgehen -protokoll-unabhängig

11 Datenmodell XML Dokumente können mit XPath als Baum aus verschiedenartigen Knoten representiert werden jetzt machen wir ü ber Datenmodell von XPath

12 Datenmodell 1. Wurzelknoten 2. Elementenknoten 3. Attributknoten 4. Namensraumknoten 5. Verarbeitungsanweisungsknoten 6. Kommentarknoten 7. Textknoten

13 Wurzelknoten Wurzelknoten und Elementenknoten Elementknoten, Verarbeitungsanweisungsknoten, Kommentarknoten, Textknoten sind ihre Kinder. - Der Wert des Wurzelknotens und Elementenknotens ist die Konkatenation aller auf irgendeiner Stufe nachfolgenden Textknoten.

14 Attributknoten - Keine Kinder - Attribute als den Wert Achtung: Attribute, die der Namensraumdelaration dienen(xmlns),werden nicht als Attributknoten abgebildet.

15 Namensraumknoten - Keine Kinder - Die URI des Namensraumes als den Wert

16 Verarbeitungsanweisung Verarbeitungsanweisungsknoten - Keine Kinder - Der auf den Namen folgende Teil der Verarbeitungsanweisung als den Wert

17 Kommentarknoten -Keine Kinder -Inhalt des Kommentar als den Wert

18 Textknoten - Nie einen anderen Textknoten als Geschwisterknoten - Keine Kinder - Mindestens ein Zeichen enthalten - Ihr Wert besteht aus den Daten

19 Datenmodell Datenmodell vom Beispiel (Kunden) w.knote Kürzel: würzelknote:=w.knote elementknote:=e.knote e.knote Kunden attributknote:=a.knote textknote:=t.knote a.knote kundennr=1 Kunde e.knote e.knote name kontakt e.knote e.knote e.knote e.knote e.knote e.knote vorname nachname telefon Handy(#PCDATA) Wei CAI leerzeichen t.knote t.knote t.knote t.knote t.knote

20 Lokalisierungspfade Der Lokalisierungspfad besteht aus einer Folge von Lokalisierungsschritt,die in von links nach rechts nacheinander angewendet werden.

21 Lokalisierungspfade Ein Lokalisierungspfad kann absolute oder relativ sein. LocationPath ::=RelativeLocationPathRelativeLocationPath IAbsoluteLocationPathAbsoluteLocationPath

22 Lokalisierungspfade Ein absoluter Lokalisierungspfad: / step / step /….. AbsoluteLocationPath ::= '/' RelativeLocationPath?RelativeLocationPath |AbbreviatedAbsoluteLocationPathAbbreviatedAbsoluteLocationPath Ein relativer Lokalisierungspfad: step / step/….. RelativeLocationPath ::= Step| RelativeLocationPath '/'StepRelativeLocationPath Step| AbbreviatedRelativeLocationPathStepAbbreviatedRelativeLocationPath

23 Lokalisierungspfade Lokalisierungsschritt besteht aus : Achse Node Tests Prädikate so Aussicht: Axisname::nodetest[predicate]

24 Lokalisierungspfade Achse eine Achse gibt die Beziehung im Dokumentbaum zwischen Kontextknoten und den selektierten Knoten an.

25 Lokalisierungspfade Die Achsen orientieren sich an der Baumstruktur des Dokumentes im XPath-Datenmodell und navigieren vom Kontextknoten in einer Richtung.

26 Lokalisierungspfade ancestor preceding following parent preceding-sibling following-sibling self child descendant Ashsen in XPath

27 Lokalisierungspfade Node Tests - ein Node Test identifiziert eine Knotenmenge auf die bestimmte Knotentypen und Namen in einer Achse. NodeTest ::= NameTest|NameTest NodeType '(' ')'|NodeType 'processing-instruction' '(' Literal ')Literal z.B. (von Kunden) //text( )selektiert alle Textknoten von Kunden

28 Lokalisierungspfade Prädikate ein Prädikat wird auf jedem Knoten der Knotenmenge ausgewertet,wobei dieser Knoten für die Prädikatauswertung zum Kontextknoten wird. z.B. child::cd [position()=1] seine Funktion wie ein Filter

29 Abgek ü rztes Syntax Lokalisierende Konten Besonderheit: XPath verwendet Eine FORM, um Knoten in einem XML-Dokument zu identifizieren, die Ausdrücke wie herkömmliche Pfad-Angaben aussehen: Beispiel: ]

30 Abgek ü rztes Syntax Unbekannte Elemente selektieren Durch das Ersatzzeichen * kann man unbekannte XML-Elemente selektieren. z.B. /Kunden/* oder gleichgültig /*/Kunde

31 Abgek ü rztes Syntax AbbrMeaningExample nonechild::cd is short for child::cd is short for child::cd[attribute::type="classic"].self::node().//cd is short for self::node()/descendant-or- self::node()/child::cd..parent::node()../cd is short for parent::node()/child::cd ///descendant- or- self::node()/ //cd is short for /descendant-or- self::node()/child::cd

32 Ausdrücke Mehrere Pfade Selektieren Um mehrere Pfade zu selektieren, benutzt XPath mit I Operator. z.B. //title I //price

33 Ausdrücke Numerische Ausdrücke OperatorDescriptionExampleResult +Addition Subtraction *Multiplication6 * 424 divDivision8 div 42 modModulus (division remainder) 5 mod 21

34 Ausdrücke Gleichheitsausdrücke Operat or DescriptionExampleResult =Like (equal)price=9.80true (if price is 9.80) !=Not like (not equal) price!=9.80false

35 Ausdrücke Relationale Ausdrücke Oper ator DescriptionExampleResult <Less thanprice<9.80false (if price is 9.80) <=Less or equalprice<=9.80true >Greater thanprice>9.80false >=Greater or equal price>=9.80true

36 Ausdrücke Boolean Ausdrücke Oper ator DescriptionExampleResult or price=9.80 or price=9.70 true (if price is 9.80) and price<=9.80 and price=9.70 false

37 Funktionen XPath enthält eine Basisfunktionsbibliothek, die die Knotenmengenlieferung unterstützt muss. Node-set Funktions String Funktions Nummer Funktions Boolean funktions

38 Funktionen Node-set Funktions NameDescriptionSyntax count()Returns the number of nodes in a node-set number=count(node- set) id()Selects elements by their unique ID node-set=id(value) name()Returns the name of a node string=name(node) namespace-uri()Returns the namespace URI of a specified node uri=namespace- uri(node)

39 Funktionen String Funktions NameDescriptionSyntax & Example concat()Returns the concatenation of all its arguments string=concat(val1, val2,..) Example: concat('The',' ','XML') Result: 'The XML' contains()Returns true if the second string is contained within the first string, otherwise it returns false bool=contains(val,subs tr) Example: contains('XML','X') Result: true

40 Funktionen Nummer Funktions NameDescriptionSyntax & Example ceiling()Returns the smallest integer that is not less than the number argument number=ceiling(number) Example: ceiling(3.14) Result: 4 floor()Returns the largest integer that is not greater than the number argument number=floor(number) Example: floor(3.14) Result: 3 sum()Returns the total value of a set of numeric values in a node-set number=sum(nodeset) Example: sum(/cd/price)

41 Funktionen Boolean funktions NameDescriptionSyntax & Example boolean()Converts the value argument to Boolean and returns true or false bool=boolean(value) false()Returns falsefalse() Example: number(false()) Result: 0 not()Returns true if the condition argument is false, and false if the condition argument is true bool=not(condition) Example: not(false())

42 End Zusammenfassung XPath bietet die Möglichkeit,navigierend Teile von Dokument zu adressieren. XPath ist mächtig!