title: XSL: Split text attribute based on delimiter
body: <p>I have the following code. </p>
  
  <pre><code>&lt;xsl:template match="Rel/SPFMarkupFile"&gt;
  &lt;xsl:for-each select="./SPFReportItem"&gt;
      &lt;tr&gt;
          &lt;td&gt;X&lt;/td&gt;
          &lt;td&gt;&lt;xsl:value-of select='../../../SPFReportItem/ReportAttribute[@AttrName="Name"]/@AttrValue' /&gt;&lt;/td&gt;
          &lt;td colspan="4" indent="yes"&gt;
              &lt;xsl:value-of select='ReportAttribute[@AttrName="SPFMarkupText"]/@AttrValue' /&gt;
          &lt;/td&gt;   
          &lt;td&gt;&lt;xsl:value-of select='ReportAttribute[@AttrName="CreationUser"]/@AttrValue' /&gt;&lt;/td&gt;
          &lt;td colspan="2"&gt;N/A&lt;/td&gt;
          &lt;td&gt;&lt;xsl:value-of select='ReportAttribute[@AttrName="SPFMarkupType"]/@AttrValue' /&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/xsl:for-each&gt;
  </code></pre>
  
  <p></p>
  
  <p>For <code>&lt;xsl:value-of select='ReportAttribute[@AttrName="SPFMarkupText"]/@AttrValue' /&gt;
  </code></p>
  
  <p>The value for example could be test123~test2~test4~test1
  The delimiter is ~</p>
  
  <p>I want to split that value and put it into different rows. So I want it to be like</p>
  
  <p>test123</p>
  
  <p>test2</p>
  
  <p>test4 </p>
  
  <p>test1</p>
  
  <p>For the other columns, it will be the same values.</p>
  
  <p>How can I achieve this? </p>