<?xml version="1.0"?>
<xsl:stylesheet version="1.0" 
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:exslt="http://exslt.org/common"
  xmlns:xhtml="http://www.w3.org/1999/xhtml"
  exclude-result-prefixes="exslt">
  
  <!-- GENERATES HTML -->

  <xsl:template match="/">
    <xsl:apply-templates select="$source/page"/>
  </xsl:template>
  
  <!-- LOADS PAGE TEMPLATE -->
  
  <xsl:template match="page">
    <xsl:variable name="template" select="document(@template)"/>
    <xsl:apply-templates select="$template/xhtml:html"/>
  </xsl:template>
  
  <!-- DISPLAYS THE XHTML -->
  
  <xsl:template match="@*|xhtml:*">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>
  
</xsl:stylesheet>
