[GastForen

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Forenindex -- Lesezeichen

2 Lesezeichen für xslt

Nur bestimmte Daten aus XML importieren
Hallo,

normalerweise gilt bei mir "learning by doing" und ich tüftel rum bis ich etwas raus habe... mit einem 3 Monate alten Baby ist die zweihändige Zeit am Rechner allerdings begrenzt :)

Ich hab hier eine XML-Datei mit vielen verschiedenen, von mir zum Großteil nicht benötigten Tags. Wie bekomme ich es möglichst schnell und einfach hin nur ausgewählte Tags zu importieren? "Mit der Hand am Arm" würde bei der umfangreichen XML ewig dauern....

Danke schon mal für die Tipps!...
k-i-w-i
10. Mai 2012, 10:14
XML Elementreihenfolge mit XSLT tauschen
Probier mal folgendes Stylesheet:
Code
<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
exclude-result-prefixes="#all"
version="2.0">

<!-- ========================================================================================================================= -->
<!-- @@@___ output settings ___@@@ -->
<!-- ========================================================================================================================= -->
<xsl:output encoding="UTF-8" method="xml" indent="yes"/>
<xsl:strip-space elements="*"/>

<!-- ========================================================================================================================= -->
<!-- @@@___default templates ___@@@ -->
<!-- ========================================================================================================================= -->
<xsl:template match="element()" mode="#all">
<xsl:copy copy-namespaces="no">
<xsl:apply-templates select="@* | node()" mode="#current"/>
</xsl:copy>
</xsl:template>

<xsl:template match="comment() | processing-instruction()" mode="#all"/>

<xsl:template match="attribute() | text() | comment() | processing-instruction()" mode="#all">
<xsl:copy copy-namespaces="no"/>
</xsl:template>

<!-- ========================================================================================================================= -->
<!-- @@@___ Umsortierung ___@@@ -->
<!-- ========================================================================================================================= -->
<xsl:template match="veranstaltung">
<xsl:copy-of select="@*"/>
<xsl:apply-templates select="datum"/>
<xsl:apply-templates select="titel"/>
<xsl:apply-templates select="zeit"/>
<xsl:apply-templates select="text"/>
<xsl:apply-templates select="ort"/>
<xsl:apply-templates select="veranstalter"/>
</xsl:template>

</xsl:stylesheet>

...
Dude
11. Apr 2011, 18:00