FU Berlin

<xmlcity:berlin>

Bundesministerium für Bildung und Forschung

Wachstumskerne

   
   
 

> Über das XML Clearinghouse
> Ansprechpartner
 

XML in Berlin und Brandenburg
> Firmen
> Forschungsvorhaben
> Lehrveranstaltungen
> Stellenangebote
 

Veranstaltungen des XML Clearinghouses
> XML Kolloquium
> Workshops
> Konferenzen
> Infotage
 

XML im deutsch-sprachigen Raum
> XML Veranstaltungen
> Standards und Entwicklungen
> Fördermöglichkeiten
> XML Reports
 

XML News
> Deutschsprachig
> Englischsprachig
> Semantic Web
> E-Business
> News einstellen
 

Online-Zertifikate
> XML-Grundlagen
> Electronic Business
> Semantic Web
 

Testlabor
> Ontology Reviewing System
 
 
 

XML Path Language (XPath)

Status: W3C Recommendation vom 16.11.1999
Version: 1.0
Homepage: http://www.w3.org/TR/xpath
Verfasser: W3C

Die Hauptaufgabe von XPath ist es, eine einheitliche Syntax und Semantik zur Adressierung von Inhalten von XML-Dokumenten und zum Anfragen an XML-Dokumente zur Verfügung zu stellen, welche dann von XSLT, XPointer und XLink benutzt werden kann.

Jedes XML-Dokument ist aus Sicht von XPath baumartig aufgebaut, wobei jedem XML-Objekt ein Knoten enspricht. Jeder Knoten ist von einem bestimmten Typ, der die entsprechende Funktion des Knotens im XML-Dokument wiedergibt. Mögliche Knotentypen sind: Wurzelknoten, Elementeknoten, Attributknoten, Namespaceknoten, Processing-Instruction-Knoten, Kommentarknoten und Textknoten.

Um nun innerhalb des Baumes zu navigieren, gibt es in XPath Lokalisierungspfade, welchen XPath auch seinen Namen verdankt. Lokalisierungspfade können entweder absolut, d.h. von der Wurzel des Baumes ausgehend, oder relativ zu einem bestimmten Knoten (Kontextknoten) des Baumes sein und bestehen aus einzelnen Schritten. Jeder Schritt wiederum ist folgendermaßen aufgebaut: achse::knotentest[prädikat1][prädikat2]...

  • Mit Hilfe von Achsen wählt man bestimmte Knoten nach deren logischer Beziehung zum Kontextknoten aus. Es existieren beispielsweise Achsen, die die Kinder oder Eltern eines Kontextknotens auswählen (child, parent).
  • Knotentests schränken eine Knotenmenge in Bezug auf den Knotentyp und den Knotennamen ein.
  • Mit Prädikaten kann man eine Knotenmenge noch weiter einschränken. Dazu bietet XPath verschiedene Operatoren und Funktionen an.
Dem interessierten Leser sei zur Veranschaulichung der Lokalisierungspfade das XPath-Tutorial von Zvon.org empfohlen.

Beispiel eines XML-Dokuments mit der zugehörigen (vereinfachten) Baumdarstellung
         
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE angebote SYSTEM "beispiel.dtd">
<?xml-stylesheet type="text/xsl" href="tree-view.xsl"?>
<angebote>
    <produkt>
        <name herkunft="Südafrika">Äpfel</name>
        <preis>1,99</preis>
    </produkt>
    <produkt>
        <name herkunft="Spanien">Orangen</name>
        <preis>2,49</preis>
    </produkt>
</angebote>
root
  |
  |___processing instruction target=xml-stylesheet instruction=type="text/xsl" href="tree-view.xsl"
  |
  |___element angebote
        |
        |___element produkt
        |     |
        |     |___element name
        |     |     |  \___attribute herkunft = Südafrika
        |     |     |
        |     |     |___text Äpfel
        |     |
        |     |___element preis
        |           |
        |           |___text 1,99
        |
        |___element produkt
              |
              |___element name
              |     |  \___attribute herkunft = Spanien
              |     |
              |     |___text Orangen
              |
              |___element preis
                    |
                    |___text 2,49 
         Die Baumdarstellung wurde mit dem "Pretty XML Tree Viewer" erzeugt.     


 
         
       
 
  Seite zuletzt geändert am: 11-Apr-2006 11:11:43
Webadmin: wwwadmin@xml-Clearinghouse.de
© XML Clearinghouse   Impressum
Haftungsausschluss