Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <blockquote> <p>So, something is wrong with splitting in the way I'm doing and then including it. How can I solve it?</p> </blockquote> <p>Yes, something is wrong. You want to split a <em>brick</em> template...</p> <p>First, you need to have something to split, so this stylesheet:</p> <pre><code>&lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dummy="dummy" exclude-result-prefixes="dummy"&gt; &lt;xsl:param name="menu" select="document('menu.xml')"/&gt; &lt;xsl:param name="sidebar" select="document('sidebar.xml')"/&gt; &lt;xsl:param name="footer" select="document('footer.xml')"/&gt; &lt;dummy:attSet&gt; &lt;footer class="footer"/&gt; &lt;menu class="menu" id="tabs"/&gt; &lt;sidebar class="body_dcha"/&gt; &lt;/dummy:attSet&gt; &lt;xsl:template match="/page"&gt; &lt;html lang="es"&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/&gt; &lt;title&gt; &lt;xsl:value-of select="title" /&gt; &lt;/title&gt; &lt;link rel="stylesheet" type="text/css" href="css/main.css" /&gt; &lt;script type="text/javascript" src="js/custom.js"&gt;&lt;/script&gt; &lt;/head&gt; &lt;body&gt; &lt;div class="content"&gt; &lt;div class="header"&gt; &lt;xsl:apply-templates select="$menu"/&gt; &lt;/div&gt; &lt;div class="body"&gt; &lt;xsl:apply-templates select="news/contents"/&gt; &lt;xsl:apply-templates select="$sidebar"/&gt; &lt;div class="clear"&gt;&lt;/div&gt; &lt;/div&gt; &lt;xsl:apply-templates select="$footer"/&gt; &lt;/div&gt; &lt;/body&gt; &lt;/html&gt; &lt;/xsl:template&gt; &lt;xsl:template match="page/news/contents"&gt; &lt;div class="body_izqda"&gt; &lt;xsl:apply-templates/&gt; &lt;/div&gt; &lt;/xsl:template&gt; &lt;xsl:template match="contents/entry/title"&gt; &lt;h2&gt; &lt;xsl:value-of select="."/&gt; &lt;/h2&gt; &lt;/xsl:template&gt; &lt;xsl:template match="contents/entry/text"&gt; &lt;p&gt; &lt;xsl:value-of select="."/&gt; &lt;/p&gt; &lt;/xsl:template&gt; &lt;xsl:template match="menu/category|sidebar/results/category|footer/entry"&gt; &lt;li&gt; &lt;a href="{link}"&gt; &lt;xsl:value-of select="name"/&gt; &lt;/a&gt; &lt;/li&gt; &lt;/xsl:template&gt; &lt;xsl:template match="/footer|/menu|/sidebar"&gt; &lt;div&gt; &lt;xsl:copy-of select="document('')/*/dummy:*/*[name()=name(current())]/@*"/&gt; &lt;ul&gt; &lt;xsl:apply-templates/&gt; &lt;/ul&gt; &lt;/div&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt; </code></pre> <p>With this input:</p> <pre><code>&lt;page&gt; &lt;title&gt;Some Page&lt;/title&gt; &lt;news&gt; &lt;contents&gt; &lt;entry&gt; &lt;title&gt;Title1&lt;/title&gt; &lt;text&gt;Text1&lt;/text&gt; &lt;/entry&gt; &lt;entry&gt; &lt;title&gt;Title2&lt;/title&gt; &lt;text&gt;Text2&lt;/text&gt; &lt;/entry&gt; &lt;entry&gt; &lt;title&gt;Title3&lt;/title&gt; &lt;text&gt;Text3&lt;/text&gt; &lt;/entry&gt; &lt;entry&gt; &lt;title&gt;Title4&lt;/title&gt; &lt;text&gt;Text4&lt;/text&gt; &lt;/entry&gt; &lt;/contents&gt; &lt;/news&gt; &lt;/page&gt; </code></pre> <p>And this documents:</p> <p><strong>menu.xml</strong></p> <pre><code>&lt;menu&gt; &lt;category&gt; &lt;link&gt;http://www.example.com/link1&lt;/link&gt; &lt;name&gt;Link1&lt;/name&gt; &lt;/category&gt; &lt;category&gt; &lt;link&gt;http://www.example.com/link2&lt;/link&gt; &lt;name&gt;Link2&lt;/name&gt; &lt;/category&gt; &lt;category&gt; &lt;link&gt;http://www.example.com/link3&lt;/link&gt; &lt;name&gt;Link3&lt;/name&gt; &lt;/category&gt; &lt;/menu&gt; </code></pre> <p><strong>sidebar.xml</strong></p> <pre><code>&lt;sidebar&gt; &lt;results&gt; &lt;category&gt; &lt;link&gt;http://www.example.com/link4&lt;/link&gt; &lt;name&gt;Link4&lt;/name&gt; &lt;/category&gt; &lt;category&gt; &lt;link&gt;http://www.example.com/link5&lt;/link&gt; &lt;name&gt;Link5&lt;/name&gt; &lt;/category&gt; &lt;category&gt; &lt;link&gt;http://www.example.com/link6&lt;/link&gt; &lt;name&gt;Link6&lt;/name&gt; &lt;/category&gt; &lt;/results&gt; &lt;/sidebar&gt; </code></pre> <p>and <strong>footer.xml</strong></p> <pre><code>&lt;footer&gt; &lt;entry&gt; &lt;link&gt;http://www.example.com/link7&lt;/link&gt; &lt;name&gt;Link7&lt;/name&gt; &lt;/entry&gt; &lt;entry&gt; &lt;link&gt;http://www.example.com/link8&lt;/link&gt; &lt;name&gt;Link8&lt;/name&gt; &lt;/entry&gt; &lt;entry&gt; &lt;link&gt;http://www.example.com/link9&lt;/link&gt; &lt;name&gt;Link9&lt;/name&gt; &lt;/entry&gt; &lt;/footer&gt; </code></pre> <p>Output the same result that provided stylesheet.</p> <p>So, now you can split the stylesheet in several modules.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload