copy-of

XSLT Elemente

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

 

 

xsl:copy-of

Die Instruktion xsl:copy kopiert in das Ergebnisdokument einen Knoten mit dessen sämtlichen Nachfahren sowie den jeweiligen Attributs- und Namensraumknoten. Damit enthält der kopierte Knoten alle Element-, Attribut-, Kommentar-, PI- und Textknoten die der Originalknoten enthält. Der zu kopierende Knoten kann im select-Attribut angegeben werden.

Eine select-Angabe, die zu einem Attributknoten führt, bewirkt, dass das benannte Attribut dem, die xsl:copy-of-Instruktion umschließenden Element (in den meisten Fällen ein Literal Result Element) hinzugefügt wird. Attributname, -wert und -namensraum bleiben dabei die gleichen, wie im Quelldokument.

Mittels dem Attribut copy-namespace kann mit dem Wert "no" die Übernahme der Namensraumknoten deaktiviert werden.

Attribute

select, copy-namespaces, type, validation

Beispiel 1

<?xml version="1.0"encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
    <xsl:template match="/">
        <root>
            <xsl:for-each select="/root/*">
                <xsl:copy-of select="."></xsl:copy-of>
            </xsl:for-each>
        </root>
    </xsl:template>
</xsl:stylesheet>
<?xml version="1.0"encoding="UTF-8"?>
<root>
    <section>
        <para style="bold">Paragraph 1</para>
    </section>
    <section>
        <para style="italic">Paragraph 2</para>
    </section>
    <section>
        <para>Paragraph 3</para>
    </section>
</root>

Beispiel 2

<?xml version="1.0"encoding="UTF-8"?>
<root>
    <section>
  <para style="bold">
  Als Gregor Samsa eines Morgens aus unruhigen Träumen erwachte, 
  fand er sich in seinem Bett zu einem ungeheueren Ungeziefer 
  verwandelt. 
  </para>
    </section>
    <section>
  <para style="italic">
  Er lag auf seinem panzerartig harten Rücken und sah, wenn er den 
  Kopf ein wenig hob, seinen gewölbten, braunen, von bogenförmigen 
  Versteifungen geteilten Bauch, auf dessen Höhe sich die Bettdecke, 
  zum gänzlichen Niedergleiten bereit, kaum noch erhalten konnte.
  </para>
    </section>
    <section>
  <para>
  Seine vielen, im Vergleich zu seinem sonstigen Umfang kläglich 
  dünnen Beine flimmerten ihm hilflos vor den Augen.
  </para>
    </section>
</root>
<?xml version="1.0"encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
    <xsl:template match="root">
        <xsl:copy-of select="."></xsl:copy-of>
    </xsl:template>
</xsl:stylesheet>
<?xml version="1.0"encoding="UTF-8"?>
<root>
    <section>
  <para style="bold">
  Als Gregor Samsa eines Morgens aus unruhigen Träumen erwachte, 
  fand er sich in seinem Bett zu einem ungeheueren Ungeziefer 
  verwandelt.
  </para>
    </section>
    <section>
  <para style="italic">
  Er lag auf seinem panzerartig harten Rücken und sah, wenn er 
  den Kopf ein wenig hob, seinen gewölbten, braunen, von bogenförmigen 
  Versteifungen geteilten Bauch, auf dessen Höhe sich die Bettdecke, 
  zum gänzlichen Niedergleiten bereit, kaum noch erhalten konnte.
  </para>
    </section>
    <section>
  <para>
  Seine vielen, im Vergleich zu seinem sonstigen Umfang kläglich 
  dünnen Beine flimmerten ihm hilflos vor den Augen.
  </para>
    </section>
</root>

Beispiel 3

<?xml version="1.0"encoding="UTF-8"?>
<root>
  <section>
    <para style="bold">
    Als Gregor Samsa eines Morgens aus unruhigen Träumen erwachte, 
    fand er sich in seinem Bett zu einem ungeheueren Ungeziefer 
    verwandelt.
    </para>
  </section>
  <section>
    <para style="italic">
    Er lag auf seinem panzerartig harten Rücken und sah, wenn er den 
    Kopf ein wenig hob, seinen gewölbten, braunen, von bogenförmigen 
    Versteifungen geteilten Bauch, auf dessen Höhe sich die Bettdecke, 
    zum gänzlichen Niedergleiten bereit, kaum noch erhalten konnte.
    </para>
  </section>
  <section>
    <para>
    Seine vielen, im Vergleich zu seinem sonstigen Umfang kläglich 
    dünnen Beine flimmerten ihm hilflos vor den Augen.
    </para>
  </section>
</root>
<?xml version="1.0"encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
    <xsl:template match="para">
        <root>
            <xsl:copy-of select="@style"></xsl:copy-of>
        </root>
    </xsl:template>
</xsl:stylesheet>
<?xml version="1.0"encoding="UTF-8"?>
<html>
    <body>    
        <root style="bold"></root>
        <root style="italic"></root>
        <root></root>
    </body>  
</html>

 

 


> nach oben
> zurück zur alphabetischen Liste der XSLT Elemente