<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>XSLT on Living Systems_</title>
    <link>https://livesys.se/tags/xslt/</link>
    <description>Recent content in XSLT on Living Systems_</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Thu, 21 Jul 2011 01:33:00 +0200</lastBuildDate>
    <atom:link href="https://livesys.se/tags/xslt/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Partial Galaxy ToolConfig to DocBook CmdSynopsis conversion with XSLT RegEx</title>
      <link>https://livesys.se/posts/galaxy-toolconfig-to-docbook-cmdsynopsis/</link>
      <pubDate>Thu, 21 Jul 2011 01:33:00 +0200</pubDate>
      <guid>https://livesys.se/posts/galaxy-toolconfig-to-docbook-cmdsynopsis/</guid>
      <description>&lt;!-- raw HTML omitted --&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#fff;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-xml&#34; data-lang=&#34;xml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;tool&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;id=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;sam_to_bam&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;SAM-to-BAM&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;version=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;1.1.1&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;description&amp;gt;&lt;/span&gt;converts SAM format to BAM format&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/description&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;requirements&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;requirement&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;type=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;package&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;samtools&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/requirement&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/requirements&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;command&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;interpreter=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;python&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    sam_to_bam.py&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      --input1=$source.input1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      --dbkey=${input1.metadata.dbkey}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      #if $source.index_source == &amp;#34;history&amp;#34;:&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        --ref_file=$source.ref_file&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      #else&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        --ref_file=&amp;#34;None&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      #end if&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      --output1=$output1&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      --index_dir=${GALAXY_DATA_INDEX_DIR}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/command&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;inputs&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;conditional&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;source&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;param&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;index_source&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;type=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;select&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;label=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Choose the source for the reference list&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;option&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;value=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;cached&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;Locally cached&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/option&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;option&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;value=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;history&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;History&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/option&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;when&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;value=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;cached&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;param&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;input1&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;type=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;data&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;format=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;sam&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;label=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;SAM File to Convert&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;           &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;validator&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;type=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;unspecified_build&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;           &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;validator&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;type=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;dataset_metadata_in_file&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;filename=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;sam_fa_indices.loc&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;metadata_name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;dbkey&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;metadata_column=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;1&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;message=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Sequences are not currently available for the specified build.&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;line_startswith=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;index&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/when&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;when&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;value=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;history&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;param&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;input1&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;type=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;data&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;format=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;sam&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;label=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Convert SAM file&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;param&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;ref_file&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;type=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;data&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;format=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;fasta&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;label=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;Using reference file&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;      &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/when&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/conditional&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/inputs&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;outputs&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;data&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;format=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;bam&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;name=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;output1&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#836c28&#34;&gt;label=&lt;/span&gt;&lt;span style=&#34;color:#c41a16&#34;&gt;&amp;#34;${tool.name} on ${on_string}: converted BAM&amp;#34;&lt;/span&gt; &lt;span style=&#34;color:#000&#34;&gt;/&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;  &lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/outputs&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000&#34;&gt;&amp;lt;/xml&amp;gt;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&amp;hellip; you see that in the &lt;strong&gt;command&lt;/strong&gt; tag, the actual syntax of the&#xA;command is specified in a kind of &amp;ldquo;free text&amp;rdquo; format &amp;hellip; This might&#xA;not be exactly what one might think to use XSLT transformations for, but&#xA;together with the regex functionality in XSLT 2.0 you definitely has&#xA;this option too. Helped by &lt;a href=&#34;http://www.xml.com/pub/a/2003/06/04/tr.html&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;this&#xA;article&lt;/a&gt;&#xA; on xml.com, I put&#xA;together this little XSLT stylesheet for parsing up the free text&#xA;content of that command tag (haven&amp;rsquo;t got to the more detailed config&#xA;inside the inputs-tag in the galaxy format, but might not need either,&#xA;if staying with the galaxy format anyway):&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
