1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

XSLt Probleme mit apply-templates

Dieses Thema im Forum "XML Technologien" wurde erstellt von c0s4n0str4, 11. Dezember 2012.

  1. c0s4n0str4

    c0s4n0str4 Grünschnabel

    Hallo zusammen... Ich habe ein Problem, was ich irgendwie nicht lösen kann :(

    ich habe also eine XML erstellt und eine XSLT mit der ich mithilfe von XPAth navigiere und somit die Sachen filetere etc...

    Desweiteren wollte ich ein Template erstelle, also für verschiedene Schriftarten und etc...

    Also die XML sieht so aus, ist simple gehalten:

    Code (Text):
    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <?xml-stylesheet type="text/xsl" href="meineXSL.xslt"?>
    3. <Bilder>
    4.     <Bild idref="Sammlung_id_1">
    5.         <Beschreibung>
    6.             <bildname>MyImage</bildname>
    7.             <bildformat>jpg</bildformat>
    8.         </Beschreibung>
    9.         <Beschreibung>
    10.             <bildname>MyImage2</bildname>
    11.             <bildformat>gif</bildformat>
    12.         </Beschreibung>
    13.     </Bild>
    14.     <Bild idref="Sammlung_id_2">
    15.         <Beschreibung>
    16.             <bildname>Testbild</bildname>
    17.             <bildformat>gif</bildformat>
    18.                 </Beschreibung>
    19.     </Bild>
    20.     <Bildersammlung BildersammlungID="Sammlung_id_1">
    21.         <Titel>Alles mögliche</Titel>
    22.     </Bildersammlung>
    23.     <Bildersammlung BildersammlungID="Sammlung_id_2">
    24.         <Titel>Sportbilder</Titel>
    25.     </Bildersammlung>
    26. </Bilder>
    Es ist eine Sammlung an Bildern.

    Die XSLT sieht so aus:

    Code (Text):
    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    3.  
    4. <xsl:template match="Bilder">
    5.  <p style="font-family:Tahoma; font-size:15px; color:red">
    6.  <xsl:apply-templates />
    7.  </p>
    8. </xsl:template>
    9.  
    10.  
    11. <xsl:template match="Bild">
    12.         Anzahls Bilder: <xsl:value-of select="count(.)"/><br/>
    13.     </xsl:template>
    14. </xsl:stylesheet>
    Sobald ich XSLT auf meine XML anwende, klappt es mit der roten überschrift, mit der Schriftart etc...
    Das Problem ist, dass auch der Tag aus <Bildersammlung> mit ausgegeben wird. Verstehe nicht warum... Ich habe doch explizit <xsl:template match="Bild"> angegeben... Kann mit einer helfen? Warum wir auch <Bildersammlung> mit ausgegeben********

    Als Ausgabe bekomme ich das hier:

    Anzahls Bilder: 1
    Anzahls Bilder: 1
    Alles möglicheSportbilder
     
    Zuletzt bearbeitet: 11. Dezember 2012
  2. abuzze

    abuzze Erfahrenes Mitglied

    Du hast kein Template für <Bildersammlung>, also wird das einfach so ausgegeben.

    Erstelle halt ein Template dafür, wenn du die Daten darin nicht brauchst lasse es halt leer.
     
Die Seite wird geladen...