![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: Mathias, 28. 02. 2007, 17:11
Hallo,
wenn ich ein xml mit folgendem Schema transformieren möchte:
<?xml version="1.0" encoding="UTF-8" ?>
<GAEB>
....
<txt>hallo</tx>
<version>999</version>
</GAEB>
Folgende XSL-Datei:
<xsl:template match="GAEB">
....
</xsl:template>
funktioniert es wei gewünscht.
Hat meine XML-datei aber nun foglenden Aufbau, tut es nicht mehr:
<?xml version="1.0" encoding="UTF-8" ?>
<GAEB xmlns="http://www.gaeb.de/GAEB_DA_XML/200407">
...
</GAEB>
Als Ergebnis bekomme ich nun:
hallo999 anstatt meiner Aufbereitung des XSL.
Kann man das für den zweiten Fall auch irgendwie hinbekommen?
Mathias.
Die folgende Nachricht zum Thema stammt von: Mindgap, 28. 02. 2007, 17:24
Hi, ja,
»» Folgende XSL-Datei:
»» <xsl:template match="GAEB">
»» ....
»» </xsl:template>
ich würde das <template match> auch um das Attribut erweitern. Also das du dem Parser sagst: Hol mit das Element "GAEB" mit dem Attribut "xyz".
Gruß,
Michael
Die folgende Nachricht zum Thema stammt von: Mathias, 28. 02. 2007, 17:30
Hi Michael,
d.h. doch aber dann, ich muss das Attribut kennen?
das Problem ist, meine einzulesenden XML's kommen con verschiedenen Personen bzw. Firmen und der eine macht's eben rein, der andere nicht....
Grüße und vielen Dank für die schnelle Antwort.
Mathias
Die folgende Nachricht zum Thema stammt von: Mindgap, 28. 02. 2007, 17:57
Hi,
»»
»» d.h. doch aber dann, ich muss das Attribut kennen?
»» das Problem ist, meine einzulesenden XML's kommen con verschiedenen Personen bzw. Firmen und der eine macht's eben rein, der andere nicht....
»»
»» Grüße und vielen Dank für die schnelle Antwort.
»» Mathias
versteh aber nicht ganz, warum das Attribut dann sinnvoll ist, wenn es der eine Reinhaut und der andere nicht??? Ist es den notwendig?
Gruß
Die folgende Nachricht zum Thema stammt von: Mathias, 28. 02. 2007, 18:36
»» Hi,
»» »»
»» »» d.h. doch aber dann, ich muss das Attribut kennen?
»» »» das Problem ist, meine einzulesenden XML's kommen con verschiedenen Personen bzw. Firmen und der eine macht's eben rein, der andere nicht....
»» »»
»» »» Grüße und vielen Dank für die schnelle Antwort.
»» »» Mathias
»» versteh aber nicht ganz, warum das Attribut dann sinnvoll ist, wenn es der eine Reinhaut und der andere nicht??? Ist es den notwendig?
»»
»» Gruß
Ne - es ist überhaupt nicht notwendig. Das Problem ist eben nur, das ich keinen Einfluss auf die Personen bzw. die Software habe, die ein entsprechendes XML erzeugen können. Und die können es angeben oder auch lassen.... Ich muss es aber einlesen können.
Grüße
Mathias
Die folgende Nachricht zum Thema stammt von: Frederik, 28. 02. 2007, 17:40
»» Folgende XSL-Datei:
»» <xsl:template match="GAEB">
»» ....
»» </xsl:template>
»»
»» funktioniert es wei gewünscht.
»»
»» Hat meine XML-datei aber nun foglenden Aufbau, tut es nicht mehr:
»» <?xml version="1.0" encoding="UTF-8" ?>
»» <GAEB xmlns="http://www.gaeb.de/GAEB_DA_XML/200407">
»» ...
»» </GAEB>
Kannst Du den root-Knoten nicht einfach als / adressieren?
<xsl:template match="/">
....
</xsl:template>
Liebe Grüße
Frederik
Die folgende Nachricht zum Thema stammt von: Mathias, 28. 02. 2007, 17:48
»» Kannst Du den root-Knoten nicht einfach als / adressieren?
»»
»» <xsl:template match="/">
»» ....
»» </xsl:template>
»»
»» Liebe Grüße
»» Frederik
Ne, wenn ich den root-Knoten so adressiere wird überhaupt nichts gefunden.
Die folgende Nachricht zum Thema stammt von: Mathias, 28. 02. 2007, 17:54
bin natürlich total auf dem Schlauch gestanden.....
geht natürlich......
Vielen Dank
Mathias
Die folgende Nachricht zum Thema stammt von: Thomas J.S., 28. 02. 2007, 20:18
Hallo,
»» wenn ich ein xml mit folgendem Schema transformieren möchte:
»»
»» <?xml version="1.0" encoding="UTF-8" ?>
»» <GAEB>
»» ....
»» <txt>hallo</tx>
»» <version>999</version>
»» </GAEB>
»»
»» Folgende XSL-Datei:
»» <xsl:template match="GAEB">
»» ....
»» </xsl:template>
»»
»» funktioniert es wei gewünscht.
»»
»» Hat meine XML-datei aber nun foglenden Aufbau, tut es nicht mehr:
»» <?xml version="1.0" encoding="UTF-8" ?>
»» <GAEB xmlns="http://www.gaeb.de/GAEB_DA_XML/200407">
»» ...
»» </GAEB>
»»
»» Als Ergebnis bekomme ich nun:
»» hallo999 anstatt meiner Aufbereitung des XSL.
»»
»» Kann man das für den zweiten Fall auch irgendwie hinbekommen?
Das Problem ist der default Namensraum im XML.
Lösung:
<xsl:stylesheet .... xmlns:dummyNamensraum="http://www.gaeb.de/GAEB_DA_XML/200407">
<xsl:template match="dummyNamensraum:GAEB">
Lese auch http://forum.de.selfhtml.org/archiv/2006/6/t130649/#m844862 durch.
Grüße
Thomas
© 1998-2006
Impressum, Software: Classic Forum