title: how to split element value and assign those value with new element tag name in xslt
body: <p>my input xml:</p>
  
  <pre><code>&lt;body xmlns:ce="test.com" xmlns:mml="any.com"&gt;
  &lt;ce:para&gt;         
      The existence of a globally hyperbolic Lorentzian metric on a 
      &lt;mml:math&gt;(3 + 1)&lt;/mml:math&gt;
      -spacetime with closed Cauchy surface excludes all but one differentiable structure on the underlying manifold, as observed by ChernovNemirovski 
      &lt;citegroup&gt;
          [
          &lt;cite&gt;
              &lt;no&gt;
                  CN13
              &lt;/no&gt;
              &lt;id&gt;
                  CN
              &lt;/id&gt;
          &lt;/cite&gt;
          ]
      &lt;/citegroup&gt;
      We point out in this note that the diffeomorphism type of a globally hyperbolic 
      &lt;mml:math&gt;(n+ 1)&lt;/mml:math&gt;
      -spacetime is determined by the h-cobordism class of its closed Cauchy surface. The precise statement is as follows. 
  &lt;/ce:para&gt;
  </code></pre>
  
  <p></p>
  
  <p>my xslt is;</p>
  
  <pre><code>&lt;body&gt;       
        &lt;xsl:apply-templates select="body/ce:para"/&gt;    
  &lt;/body&gt;
  
  &lt;xsl:template match="body/ce:para"&gt;    
       &lt;xsl:value-of select="ce:para/text[1]"/&gt;    
       &lt;mml:mo stretchy="false"&gt;(&lt;/mml:mo&gt;    
        &lt;mml:mn&gt;    
       &lt;xsl:value-of select="translate(substring-after(substring-before(mml:math,'+'),'('),' ','')"/&gt;    
      &lt;/mml:mn&gt;    
      &lt;mml:mo&gt;    
      &lt;xsl:text&gt;+&lt;/xsl:text&gt;    
      &lt;/mml:mo&gt;    
      &lt;mml:mn&gt;    
      &lt;xsl:value-of select="translate(substring-before(substring-after(mml:math,'+'),')'),' 
  ','')"/&gt;    
      &lt;/mml:mn&gt;    
      &lt;mml:mo stretchy="false"&gt;)&lt;/mml:mo&gt;    
     &lt;xsl:value-of select="ce:para/text[2]"/&gt;    
      &lt;mml:mo stretchy="false"&gt;(&lt;/mml:mo&gt;    
     &lt;mml:mi&gt;    
     &lt;xsl:value-of select="translate(substring-after(substring-before(mml:math,'+'),'('),' ','')"/&gt;    
     &lt;/mml:mi&gt;    
     &lt;mml:mo&gt;    
     &lt;xsl:text&gt;+&lt;/xsl:text&gt;    
     &lt;/mml:mo&gt;    
     &lt;mml:mn&gt;    
     &lt;xsl:value-of select="translate(substring-before(substring-after(mml:math,'+'),')'),' ','')"/&gt;    
     &lt;/mml:mn&gt;    
     &lt;mml:mo stretchy="false"&gt;)&lt;/mml:mo&gt;    
    &lt;xsl:value-of select="ce:para/text[3]"/&gt;    
  &lt;/xsl:template&gt;
  </code></pre>
  
  <p>my expected output xml:</p>
  
  <pre><code>&lt;body&gt;     
   &lt;ce:para id="p0005"&gt;    
     The existence of a globally hyperbolic Lorentzian metric on a 
  
     &lt;mml:mo stretchy="false"&gt;(&lt;/mml:mo&gt;    
    &lt;mml:mn&gt;3&lt;/mml:mn&gt;    
     &lt;mml:mo&gt;+&lt;/mml:mo&gt;    
    &lt;mml:mn&gt;1&lt;/mml:mn&gt;    
     &lt;mml:mo stretchy="false"&gt;)&lt;/mml:mo&gt;    
      &lt;/mml:math&gt;    
      -spacetime with closed Cauchy surface excludes all but one differentiable structure on the underlying manifold, as observed by Chernov–Nemirovski 
  
     &lt;ce:cross-ref&gt;[CN13]&lt;/ce:cross-ref&gt;. 
  
  We point out in this note that the diffeomorphism type of a globally hyperbolic 
  
     &lt;mml:mo stretchy="false"&gt;(&lt;/mml:mo&gt;    
     &lt;mml:mi&gt;n&lt;/mml:mi&gt;    
     &lt;mml:mo&gt;+&lt;/mml:mo&gt;    
     &lt;mml:mn&gt;1&lt;/mml:mn&gt;    
     &lt;mml:mo stretchy="false"&gt;)&lt;/mml:mo&gt;    
     &lt;/mml:math&gt;    
    -spacetime is determined by the &lt;ce:italic&gt;h&lt;/ce:italic&gt;-cobordism class of its closed Cauchy surface. The precise statement is as follows.
  
   &lt;/ce:para&gt;    
  &lt;/body&gt;
  </code></pre>