title: XSLT 1.0: Passing _all_ parameters in 'pass-through' template (ie tunneling)
body: <p><del>Please forgive the poor nomenclature in this, probably why I'm struggling to google an answer.</del></p>
  
  <p>Basically I am asking if parameter tunneling from xslt 2.0 has any analogue in 1.0, or if there is a clever way to get 'some way there'.  I'm using msxsl</p>
  
  <p>Suppose I have a template like so:</p>
  
  <pre><code>&lt;xsl:template name="outer"&gt;
     &lt;xsl:apply-templates&gt;
         &lt;xsl:with-param name="x" select="y"/&gt;
     &lt;/xsl:apply-templates&gt;
  &lt;/xsl:template&gt;
  </code></pre>
  
  <p>If the apply-templates call gets picked up directly by a template that knows about the parameter then all is good, but suppose we have some general templates to ignore certain elements and process their children:</p>
  
  <pre><code>&lt;xsl:template match="tag_to_ignore"&gt;
     &lt;xsl:apply-templates/&gt;
  &lt;/xsl:template&gt;
  </code></pre>
  
  <p>if these are 'hit' OR when the tag_to_ignore is not explicitly matched and XSLT does its default apply templates to children behaviour</p>
  
  <p>the parameters are 'lost'</p>
  
  <p>is there anyway to tell a template to 'accept' all parameters it was passed and pass them down?</p>
  
  <p>(ie the real code there are many, many, params that could come in and potentially need to be passed out, trying to avoid a maintenance issue of having to accept every possible para and explicitly pass it on)</p>