XSLT

Sancheck

Legendäres Mitglied
Hallo,
ich habe eine XML Datei so aufgebaut:
CODE
<? xml version = "1.0" encoding = "UTF-8"?>
<Fachhochschulen>
<Fachhochschule>
<name>FH Salzburg</name>
<standort>Puch Urstein</standort>
<englisch>University of Applied Sciences Salzburg</englisch>
</Fachhochschule>
<Fachhochschule>
<name>FH Wels</name>
<standort>Wels</standort>
<englisch>University of Applied Sciences Wels</englisch>
</Fachhochschule>
<Fachhochschule>
<name>FH Haagenberg</name>
<standort>Haagenberg</standort>
<englisch>University of Applied Sciences Haagenberg</englisch>
</Fachhochschule>
</ Fachhochschulen>



Nun moechte ich gerne eine Tabelle ausgeben mittels XSL...
Das heisst:
1. Spalte Name, 2. Spalte Standort,...
usw.

Wie geht das?
 
Bei kleinen Xml-Dokumenten ist es das einfachste, das Xml-Dokument zu laden (in ein XmlDocument) und dann die vordefinierten SelectSingleNode bzw. SelectNodes - Methode zu nutzen.


Etwas wie

QUOTE Dim _xNode As XmlNode, _
_xDoc As New XmlDocument()

_xDoc.loadXml("Xml-Eingabezeichenfolge")

For Each _xNode In _xDoc.DocumentElement.SelectNodes("/Fachhochschulen/Fachhochschule")

... etwas mit diesem Element machen

Next _xNode


Bei komplexeren Strukturen schreibt man sich eine große Xslt-Datei, lädt und cacht diese und transferiert ein XPath-Document mit diversen Parametern in einen Stream. Für so einen Nur-Lese-Zugriff ist das XPathDocument besser geeignet, da es nicht so viele Ressourcen belegt wie ein Xml-Dokument. Diese Logik nutze ich innerhalb von Server-Daten, da ist die Xslt-Datei inzwischen über 500 KB groß, ferner werden ständig verschiedenste Seiten quasi gleichzeitig ausgegeben. Das XslCompiled-Objekt ist threadsicher, kann von verschiedenen Threads gemeinsam für Transformationen genutzt werden.

Aber bei so kleinen Dokumenten lohnt dieser Overhead nicht.
 
Oopss nein nicht excel sondern da gibz es so formatierungsfiles die xml formatieren koennen...
 
Zurück
Oben