MoeZarella
Grünschnabel
Hallo zusammen,
meine Aufgabe ist es aus einer XML-Datei eine HTML-Tabelle zu erzeugen. Die XML- Datei hat folgende Struktur:
In dem Header werden die Spaltenüberschriften definiert. Anschließend gibt es für jede Zeile ein <row> Element. Das <row> Element enthält aber nur die gefüllten Zellen! Die Anzahl der gefüllten Zellen ist variabel. Und genau hier liegt mein Problem. Zwar weiß ich wie man generell mit XSLT aus XML-Daten eine Tabelle baut, allerdings nur unter der Bedingung, dass immer alle Zellen in der XML-Datei aufgeführt werden. Hier ist dies eben nicht der Fall. D.h. wenn es ein <entry> Element soll
geschrieben werden, sonst
Ein möglicher Ansatz wäre es in jedem <row> Element eine doppelte for-each Schleife laufen zu lassen. Die äußere iteriert über alle vorhandenen Spalten, die innere prüft ob es einen Eintrag in der aktuellen Spalte gibt. Nur leider weiß ich nicht wie ich das realisieren soll
Daher hoffe ich auch eure Hilfe!
Gruß
Moe
meine Aufgabe ist es aus einer XML-Datei eine HTML-Tabelle zu erzeugen. Die XML- Datei hat folgende Struktur:
Code:
<table>
<header>
<column columnnumber="1">Überschrift</column>
<column columnnumber="2">Überschrift</column>
...
</header>
<rows>
<row>
<entry columnnumber="2">Inhalt der Zelle</entry>
<entry columnnumber="17">Inhalt der Zelle</entry>
...
</row>
...
</rows>
</table>
In dem Header werden die Spaltenüberschriften definiert. Anschließend gibt es für jede Zeile ein <row> Element. Das <row> Element enthält aber nur die gefüllten Zellen! Die Anzahl der gefüllten Zellen ist variabel. Und genau hier liegt mein Problem. Zwar weiß ich wie man generell mit XSLT aus XML-Daten eine Tabelle baut, allerdings nur unter der Bedingung, dass immer alle Zellen in der XML-Datei aufgeführt werden. Hier ist dies eben nicht der Fall. D.h. wenn es ein <entry> Element soll
Code:
<td>Inhalt der Zelle</td>
Code:
<td></td>
Ein möglicher Ansatz wäre es in jedem <row> Element eine doppelte for-each Schleife laufen zu lassen. Die äußere iteriert über alle vorhandenen Spalten, die innere prüft ob es einen Eintrag in der aktuellen Spalte gibt. Nur leider weiß ich nicht wie ich das realisieren soll

Gruß
Moe