Use character-map : character map « XSLT stylesheet « XML

XML
1. CSS Style
2. SVG
3. XML Schema
4. XQuery
5. XSLT stylesheet
Java
XML Tutorial
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
C# / C Sharp
C# / CSharp Tutorial
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
XML » XSLT stylesheet » character map 
Use character-map


File: Data.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<artist>
  <filename>aidan_oliver</filename>

    <p delete="yes">
      <work>Innocence</work>
    </p>

    <p delete="yes">
      E
    </p>

</artist>


File: Transform.xslt

<?xml version="1.0"?>
<!DOCTYPE xsl:stylesheet [
  <!ENTITY start-comment "&#xE501;">
  <!ENTITY end-comment "&#xE502;">
]>

<xsl:stylesheet version="2.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:output use-character-maps="comment-delimiters" />

  <xsl:character-map name="comment-delimiters">
    <xsl:output-character character="&start-comment;"
      string="&lt;!--" />
    <xsl:output-character character="&end-comment;" string="--&gt;" />
  </xsl:character-map>

  <xsl:template match="*">
    <xsl:copy>
      <xsl:copy-of select="@*" />
      <xsl:apply-templates />
    </xsl:copy>
  </xsl:template>

  <xsl:template match="*[@delete='yes']">
    <xsl:text>&start-comment;
    </xsl:text>
    <xsl:copy-of select="." />
    <xsl:text>&end-comment;
    </xsl:text>
  </xsl:template>

</xsl:stylesheet>

Output:

<?xml version="1.0" encoding="UTF-8"?><artist>
  <filename>aidan_oliver</filename>

    <!--
    <p delete="yes">
      <work>Innocence</work>
    </p>-->
    

    <!--
    <p delete="yes">
      E
    </p>-->
    

</artist>

 
Related examples in the same category
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.