Willi Wutz: XPath greift nicht in HTML-Dokument

N'Abend,

ich möchte aus HTML-Code Elemente herausfiltern, bekomme es aber nicht einmal gebacken, auf mir nachvollziehbare Art und Weise das oberste Element, also <html> anzusprechen, geschweige denn beispielsweise alle <h1>-Elemente auszufiltern.

HTML-Code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de" lang="de">  
<head>  
</head>  
<body>  
<h1>Erste</h1>  
<h1>Zweite</h1>  
<p>Will ich nicht sehen</p>  
</body>  
</html>

XSLT-Kram dazu:

<?xml version="1.0" encoding="iso-8859-1"?>  
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  
<xsl:output method="xml" encoding="UTF-8"/>  
  
<xsl:template match="[siehe unten]">  
bla <xsl:value-of select="." /> fasel  
</xsl:template>  
  
</xsl:transform>

Folgende Ergebnisse bekomme ich:

<xsl:template match="/">        bla     Erste Zweite Will ich nicht sehen  fasel
<xsl:template match="html">     ErsteZweiteWill ich nicht sehen
<xsl:template match="/html">    ErsteZweiteWill ich nicht sehen
<xsl:template match="//h1">     ErsteZweiteWill ich nicht sehen
<xsl:template match="h1">       ErsteZweiteWill ich nicht sehen

Mir ist alleine schon schleierhaft, warum ich zwar mit "/" auf <html> zugreifen kann, aber nicht mit "html", vom Rest mal ganz zu schweigen.
Ich weiß auch nicht, warum alle Elementinhalte ausgegeben werden. Ich hatte bei den SELFHTML-Beispielen im XML-Teil ein weiteres, im XSLT-Teil nicht angesprochenes Element eingefügt, das wurde nicht ausgegeben.

Vielleicht kann mir das jemand verständlich erklären. Danke.

  1. Hi,

    Ich weiß auch nicht, warum alle Elementinhalte ausgegeben werden.

    Weil Du das Default-Template nicht überschrieben hast.

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Ich weiß auch nicht, warum alle Elementinhalte ausgegeben werden.

      Weil Du das Default-Template nicht überschrieben hast.

      Und das bedeutet bitte? Den Begriff Default-Template kann ich auf den SELFHTML-Seiten nicht finden.