Wie erstelle ich XML aus XML mit XSL?

8

Wie erstelle ich XML aus XML mit XSL?

Ich versuche es so ... aber ich bekomme kein Ergebnis

Test.xml

%Vor%

Test.xsl

%Vor%

Ich muss so rauskommen

%Vor%

Ich versuche, in meiner Asp-Seite (test.asp) zu konvertieren

%Vor%

Plz helfen mir, dieses Problem zu lösen

    
Alex 10.08.2009, 14:53
quelle

3 Antworten

14

Sie können auch eine Ausgabeanweisung in Ihrem Stylesheet hinzufügen:

%Vor%

Dies bewirkt, dass die Ausgabe eine führende XML-Deklaration enthält:

%Vor%     
mkoeller 10.08.2009, 15:15
quelle
15

Das Problem ist, dass "/" der Stamm ist, nicht das Stammelement (oder "Dokumentelement").
Hierarchisch ist "/" eine Ebene über das Dokumentelement ( <Address> , in Ihrem Fall). Also das:

%Vor%

würde tatsächlich funktionieren. Merken Sie den winzigen kleinen Unterschied? Schöner wäre das:

%Vor%     
Tomalak 10.08.2009 15:08
quelle
3

Nur um etwas zu erweitern und zu verdeutlichen, was Tomalak geschrieben hat: Der Stamm eines XML-Dokuments befindet sich in der DOM-Hierarchie oberhalb des obersten Elements . Es ist ungewöhnlich, die beiden verwirrt zu sehen. Betrachten Sie dieses XML-Dokument:

%Vor%

Der Stamm dieses Dokuments hat drei untergeordnete Knoten: einen Kommentarknoten, einen Elementknoten und einen weiteren Kommentarknoten. Das Element auf oberster Ebene heißt root , weil jeder, der XML-Instanzdokumente erstellt, dies tut, um die Verwechslung zwischen dem Dokumentenstamm und dem Element der obersten Ebene aufrechtzuerhalten. (Vor allem, wenn sie immer noch an dem Punkt in ihrer XML-Ausbildung sind, wo sie "Knoten" verwenden, wenn sie "Element" bedeuten.)

Dies bringt uns zu einem der Gründe, dass die Vorlage, die Tomalak als "netter" beschreibt, schöner ist. Wenn Sie die Identitätstransformation erweitern, ändert XSLT in Ihrem Dokument nur die Elemente, für die Sie Vorlagen erstellt haben. Jeder andere Knoten im Dokument wird unverändert kopiert. Wenn also Ihr Eingabedokument wie im obigen Beispiel Kommentare um das Element der obersten Ebene enthält, werden sie nicht aus der Ausgabe entfernt, wie wenn Sie einfach eine Vorlage implementiert hätten, die dem Element Address entspricht.

Natürlich, wenn Sie wollen Ihre Ausgabe, um Kommentare auszuschließen, das ist auch leicht zu erreichen; Implementiere die Identitätstransformation einfach nicht.

    
Robert Rossney 10.08.2009 18:43
quelle

Tags und Links