Hallo :-)
Kann mir jemand einen Tipp geben wonach ich suchen muss, wenn ich aus XML-Daten ein Inhaltsverzeichnis erstellen möchte?
Habe eine XML-Datei, welche mit Tags versehen ist - u.a. "" bis "", sozusagen Unterüberschriften bis zu einer Tiefe von 5.
Am Anfang der bestehenden XML-Datei soll jetzt dynamisch ein Inhaltsverzeichnis erstellt werden. Wenn ich also irgendwann mal ein weiteres Kapitel einfüge, soll das Inhaltsverzeichnis sich selbstständig erweitern.
Gibt es bei solchen Funktionen auch die Möglichkeit die Inhaltsverzeichnise verschieden anzeigen zu lassen? Z.B. einmal mit Aufzählungszeichen und dann mal wieder mit Grafiken die geladen werden (nicht gleichzeitig)..
Mir fehlt momentan noch viel Grundwissen zu XML und co., brauche das jetzt aber gerade und würde mich über Tipps/Hilfestellungen sehr freuen.
Gruß, PingOfDeath
Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge
Hallo,
Grundwissen zu XML und co gibt's in der Bibel:
http://de.selfhtml.org/navigation/suche/index.htm?Suchanfrage=xml
Im Prinzip geht das, indem du ein XLST-Stylesheet schreibst, nach welchem die XML-Datei geparst wird. Damit kann man im Prinzip aus jedem XML jedes andere beliebige Textdateiformat erstellen, Daten extrahieren, ordnen etc.. Mal ein paar Links zum Einlesen:
http://de.selfhtml.org/xml/darstellung/xslgrundlagen.htm
http://xml.klute-thiemann.de/index.html
http://www.w3.org/TR/1999/REC-xslt-19991116
http://www.xml.com/
http://www.linkwerk.com/pub/xmlidp/2000/
http://www.xml-xslt.de/index.php?id=148,0,0,1,0,0
Ist nicht ganz trivial und geht definitiv nicht ohne einlesen, aber logisch und begreifbar (für Menschen mit Programmier-Grundkenntnissen), wenn man sich die Mühe gemacht hat ...
HTH, Z.
Danke Euch beiden.
Inzwischen habe ich mein Ziel erreicht, habe aber noch eine weitere zum Thema passende Frage.
Aus einer XML-Datei ein Inhaltsverzeichnis zu erstellen klappt, aber wie müsste ich vorgehen wenn ich ein Inhaltsverzeichnis über mehrere (bekannte) XML-Dateien erstellen wollen würde?
Muss ich die XML-Dateien erst zusammenmergen oder ist das der falsche Ansatz?
Gruß, PingOfDeath
Ich würde sie mergen, dann gehts wieder via XLST/XPATH ....
HTH, Z.
Ich nochmal ;-)
Gibt es einen Befehl/Trick mit dem ich die aktuelle Tiefe der Datei herausfinden kann, komm da einfach nicht zurecht :-/
z.B.
<sektion>
...<sektion>
......<sektion>
......wo bin ich hier --> 3
......</sektion>
...</sektion>
</sektion>
erkannt werden soll das in:
<xsl:for-each select="//sektion">
...hier
</xsl:for-each>
Gruß, PingOfDeath
Habs selber herausgefunden ;-)
<xsl:variable name="sektion">
...<xsl:value-of select="count(ancestor::*)" />
</xsl:variable>