Dr. Web Logo. Untertext: Seit 1997.
  • Beste Agenturen
  • Agentur-Standorte von A bis Z 🌇
  • Magazin
  • Newsletter 📩
  • Login
  • Agentur bewerben ✅
  • Kontakt
  • Werben 🎉
  • Sponsored Post
  • Jobs
Menü
  • Beste Agenturen
  • Agentur-Standorte von A bis Z 🌇
  • Magazin
  • Newsletter 📩
  • Login
  • Agentur bewerben ✅
  • Kontakt
  • Werben 🎉
  • Sponsored Post
  • Jobs
  • Werben
  • Gastbeitrag
  • Sponsored Post
  • Kontakt
  • Login
  • Newsletter
Suche
  • Beste Agenturen
  • Agentur-Standorte
      Beste Agenturen Augsburg Altstadt von oben.

      Augsburg

      Blick auf die Mittlere Brücke in Basel bei Sonnenaufgang.

      Basel

      Berlin bei Nacht, Blick von oben Richtung Fernsehturm.

      Berlin

      Das Ruhrstadion in Bochum von oben, bei Sonnenuntergang.

      Bochum

      Bonn von oben, mit Blick auf den Rhein.

      Bonn

      Dortmund von oben Panoramafoto.

      Dortmund

      Blick auf die Elbufer-Promenade Dresdens sowie Frauenkirche und Zwinger.

      Dresden

      Duisburg Innenhafen bei Sonnenuntergang.

      Duisburg

      Düsseldorf von oben mit Blick auf den Fernsehturm.

      Düsseldorf

      Die Skyline von Essen von oben.

      Essen

      Blick von oben auf das Bankenviertel in Frankfurt am Main.

      Frankfurt am Main

      Freiburg Innenstadt vom Münster aus fotografiert mit Blick Richtung Schlossberg und Sonnenuntergang..

      Freiburg im Breisgau

      Hamburg bei Nacht, Blick auf die Speicherstadt.

      Hamburg

      Blick auf das Neue Rathaus, Hannover.

      Hannover

      Agenturen in Innsbruck von oben mit Blick auf die Alpen.

      Innsbruck

      Karlsruhe von oben

      Karlsruhe

      Sonnenuntergang in Köln mit Blick auf den Dom. Im Vordergrund die Hohenzollernbrücke.

      Köln

      Leipzig Innenstadt bei Sonnenuntergang und von oben.

      Leipzig

      München bei Fön mit Blick in die bayerischen Alpen.

      München

      Nürnberg Altstadt Stadtmauer von oben

      Nürnberg

      Blick auf das Flussufer der Innenstadt von Regensburg bei Nacht.

      Regensburg

      Agenturen Salzburg: Blick auf die Altstadt und die Hohensalzburg.

      Salzburg

      Stuttgart von oben.

      Stuttgart

      Wien von oben. Blick auf den Stephansdom.

      Wien

      Zürich von oben.

      Zürich

  • Magazin
    • Content Marketing
    • CSS
    • E-Commerce
    • E-Mail-Marketing
    • Freelancer
    • Fotografie
    • HTML
    • Online-Marketing
    • Responsive Design
    • SEO
    • UX Design
    • Webdesign
    • Website erstellen
    • WordPress
    • Dr. Web Autoren
  • Jobs
Menü
  • Magazin
    • Content Marketing
    • CSS
    • E-Commerce
    • E-Mail-Marketing
    • Freelancer
    • Fotografie
    • HTML
    • Online-Marketing
    • Responsive Design
    • SEO
    • UX Design
    • Webdesign
    • Website erstellen
    • WordPress
    • Dr. Web Autoren
  • Jobs
Agentur eintragen →
Dr. Web Logo. Untertext: Seit 1997.
  • Beste Agenturen
  • Agentur-Standorte
      Beste Agenturen Augsburg Altstadt von oben.

      Augsburg

      Blick auf die Mittlere Brücke in Basel bei Sonnenaufgang.

      Basel

      Berlin bei Nacht, Blick von oben Richtung Fernsehturm.

      Berlin

      Das Ruhrstadion in Bochum von oben, bei Sonnenuntergang.

      Bochum

      Bonn von oben, mit Blick auf den Rhein.

      Bonn

      Dortmund von oben Panoramafoto.

      Dortmund

      Blick auf die Elbufer-Promenade Dresdens sowie Frauenkirche und Zwinger.

      Dresden

      Duisburg Innenhafen bei Sonnenuntergang.

      Duisburg

      Düsseldorf von oben mit Blick auf den Fernsehturm.

      Düsseldorf

      Die Skyline von Essen von oben.

      Essen

      Blick von oben auf das Bankenviertel in Frankfurt am Main.

      Frankfurt am Main

      Freiburg Innenstadt vom Münster aus fotografiert mit Blick Richtung Schlossberg und Sonnenuntergang..

      Freiburg im Breisgau

      Hamburg bei Nacht, Blick auf die Speicherstadt.

      Hamburg

      Blick auf das Neue Rathaus, Hannover.

      Hannover

      Agenturen in Innsbruck von oben mit Blick auf die Alpen.

      Innsbruck

      Karlsruhe von oben

      Karlsruhe

      Sonnenuntergang in Köln mit Blick auf den Dom. Im Vordergrund die Hohenzollernbrücke.

      Köln

      Leipzig Innenstadt bei Sonnenuntergang und von oben.

      Leipzig

      München bei Fön mit Blick in die bayerischen Alpen.

      München

      Nürnberg Altstadt Stadtmauer von oben

      Nürnberg

      Blick auf das Flussufer der Innenstadt von Regensburg bei Nacht.

      Regensburg

      Agenturen Salzburg: Blick auf die Altstadt und die Hohensalzburg.

      Salzburg

      Stuttgart von oben.

      Stuttgart

      Wien von oben. Blick auf den Stephansdom.

      Wien

      Zürich von oben.

      Zürich

Agentur eintragen →
Dr. Web » Webdesign » Auf dem richtigen Pfad: XPath für XSLT

Auf dem richtigen Pfad: XPath für XSLT

XPath als W3C Standard ist ein Teil der XML-Zukunft. Mit XPath können alle Elemente eines XML Dokumentes adressiert werden und auf diese Weise über ein XSL-Stylesheet bestimmte Teile eines XML-Dokumentes ausgegeben werden. XSL ist der Überbegriff für ein komplexes,...

Sozial sein
Share on facebook
Share on twitter
Share on linkedin
Share on xing
Share on whatsapp
Share on email
  • Keine Kommentare
Lesedauer: 3 Minuten
  • von Thiemo Fetzer
  • 26. Juli 2004
Bookmarke mich
Share on pocket

Wee Media | Webdesign Agentur

minddraft AG

Trendmarke GmbH

wolli ruf - mediendesign

Der Informations­designer

YOYABA

XPath als W3C Standard ist ein Teil der XML-Zukunft. Mit XPath können alle Elemente eines XML Dokumentes adressiert werden und auf diese Weise über ein XSL-Stylesheet bestimmte Teile eines XML-Dokumentes ausgegeben werden.

XSL ist der Überbegriff für ein komplexes, von XML abgeleitetes System. Es besteht im wesentlichen aus drei Teilen:

  1. XSLT für die Transformation von XML Dokumenten
  2. XPath für die Definition von Teilen eines XML Dokuments
  3. XSLT-FO für das formatieren von XML Dokumenten

In diesem Bereich wollen wir uns insbesondere mit XPath und seiner Funktionalität beschäftigen. Als W3C Standard ist XPath eines der wichtigsten Elemente von XSLT; anders wie XSL ist es nicht in XML geschrieben. XPath verfügt über eine Bibliothek an Funktionen, über die die einzelnen Bereiche eines XML Dokumentes definiert werden.
XPath verwendet für die Definition einzelner Knoten (Elemente) eines Dokumentes Pfadausdrücke, wie wir sie aus dem Dateisystem erkennen. Das folgende Beispiel soll dies verdeutlichen:
artikel.xml

<?xml version="1.0" encoding="ISO-8859-1" ?>
<artikel>
<titel>Der Titel</titel>
<teaser>Der Teaser, eine kurze Beschreibung</teaser>
<inhalt>Der Artikelinhalt an sich</inhalt>
<preis>20</preis>
</artikel>

Mit folgenden XPath Ausdruck wird auf das Wurzelelement, den Wurzelknoten <artikel> zugegriffen.
/artikel
Wohingegen der folgende Ausdruck auf das <titel> Element zugreift.
/artikel/titel
In einem XSL Stylesheet möchte man nur den Inhalt des Titel-Elementes ausgeben. Das hierzu notwendige Stylesheet sieht dann so aus:
artikel.xsl

<?xml
version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/artikel">
<b><xsl:value-of select="artikel/titel"/></b>
</xsl:template>
</xsl:stylesheet>

In das XML-Dokument muss nur noch das Stylesheet eingebunden werden. Dies geschieht über die XSL Anweisung:

<?xml-stylesheet
type="text/xsl" href="artikel.xsl"?>

Das Ergebnis im Browser sieht so aus, dass nur das Titel-Element fett ausgegeben wird.
Das XSL Stylesheet kann man bei der Pfadanweisung noch vereinfachen, indem bei dem

      <xsl:value-of select="artikel/titel"/> 

Element einfach nur

  <xsl:value-of select="/titel"/> 

geschrieben wird. Dies ist möglich, da auf den Wurzelknoten “artikel” ja bereits über

  <xsl:template match="/artikel">

zugegriffen wurde.
XPath ist ein relativ mächtiges Sprachkonstrukt für XSL, da es über eine eingebaute Funktionsbibliothek verfügt. Erweitert man das obere XML-Dokument und macht daraus eine Datenbank mit Attributen kann man XPath und seine Funktionen einsetzen.
artikel.xml

<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<content>
<artikel>
<titel autor="sl">>Der Titel</titel>
<teaserDer Teaser, eine kurze Beschreibung</teaser>
<inhalt>Der Artikelinhalt an sich</inhalt>
<preis>20</preis>
</artikel>
<artikel id="2">
<titel autor="tf"> Der 2. Titel</titel>
<teaser> Der 2. Teaser, eine kurze Beschreibung</teaser>
<inhalt>Der 2. Artikelinhalt an sich</inhalt>
<preis>15</preis>
</artikel>
</content>

Möchte man über XSL lediglich das letzte Element des XML Dokumentes auslesen, so ist auch das möglich:

/content/artikel[last()]

Die Funktion last() ist eine in der XPath Programmbibliothek mitgelieferte Funktion. Das XSL-Stylesheet würde dann so aussehen:
artikel.xsl

<?xml
version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/content/artikel[last()]">
<b><xsl:value-of select="titel"/></b>
</xsl:template>
</xsl:stylesheet>

Hierbei wird nur der Titel des letzten Artikel Elementes im XML Dokument fett ausgegeben. Die Liste aller in XPath integrierten Funktionen sind beim W3C einsehbar. Es gibt noch viel mehr Funktionen, mit denen insbesondere logische Operationen durchgeführt werden können. Um XPath effektiv einsetzen zu können, muss man XSL beherrschen.
Möchte man nur auf das erste Element vom Typ <artikel> zugreifen, ist das auf diese Weise machbar:

/content/artikel[1]

Anhand des Indexes kann auf alle Elemente einzeln zugegriffen werden.
Man kann die Pfade auch mit // starten lassen. Hierbei werden auf alle Elemente des XML-Dokumentes, welche das Kriterium erfüllen, zugegriffen – selbst wenn sie sich in unterschiedlichen Elementverschachtlungen befinden.
Über

/content/artikel[preis]

wird nur auf die <artikel> Elemente zugegriffen, die ein Preis-Element als Kind haben. Da dies in unserem Beispiel bei beiden der Fall ist, wird auch auf beide zugegriffen. Das Ergebnis könnte über ein xsl-for each Konstrukt ausgegeben werden.
Es können auch logische Operationen durchgeführt werden.

Operator Beschreibung
= Gleich
!= Ungleich
< Kleiner
<= Kleiner gleich
> Größer
>= Größer gleich
Boolsche Operatoren
or Oder
and Und

So könnte man mit folgendem Pfad auf alle Artikel mit einem Preis kleiner als 20 zugreifen.

      /content/artikel[preis<20]

Wie in einem Dateisystem können über XPath auch unbekannte XML Elemente gesucht werden. Dies erfolgt über sogenannte Wildcards. Folgende Pfadanweisung greift auf alle <artikel> Elemente zu:

      /content/artikel/*

Anders sieht es bei diesem Konstrukt aus:

      /*/*/preis

Hierbei werden auf alle Preis-Elemente in der dritten Ebene zugegriffen. Das heißt, dass in unserem Dokument <artikel.xml> auf alle Preiselemente zugegriffen wird.
Über //* wird auf alle Elemente des XML Dokuments zugegriffen.
Es können natürlich auch auf einzelne Attribute zugegriffen werden; alle Attribute werden in XPath über @ angesprochen. Der folgende Pfad greift nur auf die <artikel> Elemente zu, die sowohl ein <preis> Element haben, also auch ein id-Attribut.

      /content/artikel[preis and @id] 

In diesem Fall ist das der zweite Artikel; der erste verfügt über kein id-Attribut. Auch hierbei könne Wildcards verwendet werden. So ergibt der Pfad in unserem Beispiel das gleiche Ergebnis, jedoch wird hierbei auf alle <artikel> Elemente zugegriffen, die über irgendein Attribut verfügen:

      /content/artikel[preis
and @*]

Möchte man nur auf die Artikel, bei denen der Autor „sl“ (Attribut des titel-Elementes) ist, so sieht das XSL Stylesheet dann so aus:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/content/artikel/titel[@autor='sl']">
<b><xsl:value-of select="//titel"/></b><br/>
<b><xsl:value-of select="//teaser"/></b><br/>
</xsl:template>
</xsl:stylesheet>

Wichtig ist, dass bei der Ausgabe über das XSL Konstrukts

<xsl:value-of select="//titel"/>

der Pfad des auszugebenden Elementes mit // angegeben wird. Dadurch werden alle Elemente, die das im Pfad definierte Kriterium erfüllen ausgeben. Es ist also kein absoluter Pfad.
XPath liefert noch viele weitere interessante Funktionen und Anwendungsmöglichkeiten, die XSL noch deutlich dynamischer lassen werden.

Wie hilfreich war dieser Beitrag?

Klicke auf die Sterne um zu bewerten!

Durchschnittliche Bewertung 0 / 5. Anzahl Bewertungen: 0

Thiemo Fetzer

Thiemo Fetzer

Agenturpartner

Optimerch GmbH

Dortmund

BIZ Digital Marketing

Nürtingen

PRIMA LINE

Berlin

Webagentur klickbeben

Innsbruck

Critch GmbH – Immobilienkanzlei FREITAG®

München

Alle Agenturpartner

Jobs

Business Development Manager

München

Copywriter – Vollzeit

Remote

Web Development & Project Management

Remote

Texter / Junior Content Marketing Manager

Innsbruck

Senior SEO Manager

München

Zum richtigen Job

Newsletter

Tipps, Tricks, Ratgeber. Unser Newsletter: Jeden Dienstag frisch gedruckt in Deinem Mail-Postfach.

Lust auf mehr? Wir empfehlen folgende Artikel:

Webdesign Trends 2022: Das erwartet uns

Animation, Interaktion und Immersion: Das neue Jahr bringt zahlreiche Trends im Webdesign mit sich und entwickelt einzelne Bereiche weiter. Bereits jetzt ist klar – in Sachen Webdesign-Trends hat das Jahr 2022 einiges zu bieten.

 →   

Google Fonts sind nicht mehr datenschutzkonform. Was nun?

Mit dem Urteil des Landgerichts München vom 20.01.2022 ist nun auch die Verwendung von Google Fonts über die Fonts API nicht mehr datenschutzkonform. Zeit sich nach einer Lösung umzusehen, wie Du dennoch Google Fonts weiterhin einsetzen kannst.

 →   

Dunkel Design – herzlich willkommen auf Dr. Web

Wir freuen uns, dass Moritz Dunkel mit seiner Agentur DNKL.DSGN aus Köln an Bord ist. Moritz Dunkel von Dunkel Design verstärkt unser Agentur-Netzwerk. Inhaltsstarke Seiten

 →   

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Dr. Web Logo weiss.

Pionier für Digitale Transformation. Seit 1997. ✅  Wissen, Tipps, Ratgeber, Dienstleister: Wir bringen wir die digitale Transformation von Unternehmen praxisnah voran.

Share on facebook
Share on twitter
Share on linkedin
Share on xing
Share on whatsapp
Share on email

Wissen finden

  • Dr. Web Autoren
  • Amazon SEO
  • Content Marketing
  • CMS
  • CSS
  • Digitalisierung
  • E-Commerce
  • Freelancer
  • Jobs & Karriere
  • Online-Marketing
  • SEO
  • UX Design
  • Webdesign
  • Website erstellen
  • WordPress
  • WooCommerce
Menü
  • Dr. Web Autoren
  • Amazon SEO
  • Content Marketing
  • CMS
  • CSS
  • Digitalisierung
  • E-Commerce
  • Freelancer
  • Jobs & Karriere
  • Online-Marketing
  • SEO
  • UX Design
  • Webdesign
  • Website erstellen
  • WordPress
  • WooCommerce

Rechtliches

  • Datenschutzerklärung
  • Geschäftsbedingungen (AGB)
  • Impressum
  • Kontakt
  • Nach oben ↑
Menü
  • Datenschutzerklärung
  • Geschäftsbedingungen (AGB)
  • Impressum
  • Kontakt
  • Nach oben ↑

Für Agenturen & Unternehmer

  • Als Agentur eintragen
  • Beste Agenturen finden
  • Städte: von A bis Z.
  • Agenturen in Augsburg
  • Agenturen in Basel
  • Agenturen in Berlin
  • Agenturen in Bochum
  • Agenturen in Bonn
  • Agenturen in Bremen
  • Agenturen in Dortmund
  • Agenturen in Dresden
  • Agenturen in Duisburg
  • Agenturen in Düsseldorf
  • Agenturen in Essen
  • Agenturen in Frankfurt am Main
  • Agenturen in Freiburg
  • Agenturen in Hamburg
  • Agenturen in Hannover
  • Agenturen in Innsbruck
  • Agenturen in Karlsruhe
  • Agenturen in Köln
  • Agenturen in Leipzig
  • Agenturen in München
  • Agenturen in Münster
  • Agenturen in Nürnberg
  • Agenturen in Offenbach am Main
  • Agenturen in Regensburg
  • Agenturen in Salzburg
  • Agenturen in Stuttgart
  • Agenturen in Wien
  • Agenturen in Zürich
  • Digitalagentur finden
  • Webdesign-Agentur finden
  • Werbeagentur finden
Menü
  • Als Agentur eintragen
  • Beste Agenturen finden
  • Städte: von A bis Z.
  • Agenturen in Augsburg
  • Agenturen in Basel
  • Agenturen in Berlin
  • Agenturen in Bochum
  • Agenturen in Bonn
  • Agenturen in Bremen
  • Agenturen in Dortmund
  • Agenturen in Dresden
  • Agenturen in Duisburg
  • Agenturen in Düsseldorf
  • Agenturen in Essen
  • Agenturen in Frankfurt am Main
  • Agenturen in Freiburg
  • Agenturen in Hamburg
  • Agenturen in Hannover
  • Agenturen in Innsbruck
  • Agenturen in Karlsruhe
  • Agenturen in Köln
  • Agenturen in Leipzig
  • Agenturen in München
  • Agenturen in Münster
  • Agenturen in Nürnberg
  • Agenturen in Offenbach am Main
  • Agenturen in Regensburg
  • Agenturen in Salzburg
  • Agenturen in Stuttgart
  • Agenturen in Wien
  • Agenturen in Zürich
  • Digitalagentur finden
  • Webdesign-Agentur finden
  • Werbeagentur finden
Das große Dr. Web Icon-Set: 970+ Icons, im SVG-Format​

Lade Dir jetzt das Icon-Set
kostenlos herunter ↓

Über 970 Dr. Web-Icons, kostenlos.
Danke nein, ist nichts für mich.
Invalid email address
Vielen Dank! Bitte schau noch in Dein Postfach und bestätige die Anmeldung.