<xslt:template match="text()" mode="书社:footer"/>
                        <xslt:template match="text()" mode="书社:metadata"/>
                        <xslt:template match="/" mode="书社:wrap">
+                               <xslt:variable name="modalinput">
+                                       <xslt:copy-of select="node()"/>
+                                       <xslt:copy-of select="document('')/xslt:transform/xslt:include"/>
+                               </xslt:variable>
                                <xslt:variable name="metadata">
                                        <xslt:copy-of select="html:html/html:head/node()|html:head/node()"/>
-                                       <xslt:apply-templates select="." mode="书社:metadata"/>
-                                       <xslt:apply-templates select="document('')/xslt:transform/xslt:include" mode="书社:metadata"/>
+                                       <xslt:apply-templates select="exsl:node-set($modalinput)" mode="书社:metadata"/>
                                </xslt:variable>
                                <html:html>
                                        <xslt:if test="$VERSION">
                                        </html:head>
                                        <html:body>
                                                <xslt:copy-of select="html:html/html:body/@*|html:body/@*"/>
-                                               <xslt:apply-templates select="document('')/xslt:transform/xslt:include" mode="书社:header"/>
-                                               <xslt:apply-templates select="." mode="书社:header"/>
+                                               <xslt:apply-templates select="exsl:node-set($modalinput)" mode="书社:header"/>
                                                <xslt:copy-of select="node()[not(self::html:html or self::html:head or self::html:body)]|html:html/node()[not(self::html:head or self::html:body)]|html:html/html:body/node()|html:body/node()"/>
-                                               <xslt:apply-templates select="." mode="书社:footer"/>
-                                               <xslt:apply-templates select="document('')/xslt:transform/xslt:include" mode="书社:footer"/>
+                                               <xslt:apply-templates select="exsl:node-set($modalinput)" mode="书社:footer"/>
                                        </html:body>
                                </html:html>
                        </xslt:template>