Mega Code Archive

 
Categories / XML Tutorial / XSLT StyleSheet
 

Select=document(@location)

File: Data.xml <?xml version="1.0" encoding="UTF-8"?> <volume name="Old Testament">   <book name="Java">     <chapter location="Java1.xml" />     <chapter location="Java2.xml" />     <chapter location="Java3.xml" />     <chapter location="Java4.xml" />   </book> </volume> File: Transform.xslt <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0"   xmlns:xsl="http://www.w3.org/1999/XSL/Transform">   <xsl:output method="xml" indent="yes" />   <xsl:template match="volume">     <xsl:copy>       <xsl:attribute name="name"><xsl:value-of select="@name" />       </xsl:attribute>       <xsl:apply-templates select="book" />     </xsl:copy>   </xsl:template>   <xsl:template match="book">     <xsl:copy>       <xsl:attribute name="name"><xsl:value-of select="@name" />       </xsl:attribute>       <xsl:apply-templates select="chapter" />     </xsl:copy>   </xsl:template>   <xsl:template match="chapter">     <xsl:copy-of select="document(@location)" />   </xsl:template> </xsl:stylesheet> Output: <?xml version="1.0" encoding="UTF-8"?> <volume name="Old Testament">    <book name="Java"/> </volume>