This Source Code Form is subject to the terms of the Mozilla Public License, v 2.0.
If a copy of the M·P·L was not distributed with this file, You can obtain one at <https://mozilla.org/MPL/2.0/>.
-->
This Source Code Form is subject to the terms of the Mozilla Public License, v 2.0.
If a copy of the M·P·L was not distributed with this file, You can obtain one at <https://mozilla.org/MPL/2.0/>.
-->
<transform
xmlns="http://www.w3.org/1999/XSL/Transform"
xmlns:exsl="http://exslt.org/common"
xmlns:exslstr="http://exslt.org/strings"
<transform
xmlns="http://www.w3.org/1999/XSL/Transform"
xmlns:exsl="http://exslt.org/common"
xmlns:exslstr="http://exslt.org/strings"
<for-each select="$lines[starts-with(., '#') and following-sibling::*[generate-id(.)=generate-id($head)]]">
<comment>
<value-of select="substring-after(., '#')"/>
</comment>
</for-each>
<for-each select="$lines[starts-with(., '#') and following-sibling::*[generate-id(.)=generate-id($head)]]">
<comment>
<value-of select="substring-after(., '#')"/>
</comment>
</for-each>
<for-each select="$head/following-sibling::*[normalize-space(.)!='']">
<choose>
<when test="starts-with(., '#')">
<for-each select="$head/following-sibling::*[normalize-space(.)!='']">
<choose>
<when test="starts-with(., '#')">
<attribute name="data-tsv-header">
<value-of select="exsl:node-set($headcols)/*[count(current()/preceding-sibling::*)+1]"/>
</attribute>
<attribute name="data-tsv-header">
<value-of select="exsl:node-set($headcols)/*[count(current()/preceding-sibling::*)+1]"/>
</attribute>