title: handling the data in the nested tags and grouping them in xslt
body: <p>I need some clarification on XSLT how to do the following in XSLT.</p>
  
  <p>I have the source file as this.</p>
  
  <pre><code>&lt;Data&gt;
      &lt;additem&gt;                   
                  &lt;choice&gt;desc&lt;/choice&gt;
                  &lt;sectiontext&gt;
                      &lt;a title="google" href="http://google.com" xmlns="http://www.w3.org/1999/xhtml"&gt;
                          &lt;strong&gt;Sample Text&lt;/strong&gt;
                          &lt;ul&gt;
                              &lt;li&gt;&lt;em&gt;aa&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;bb&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;cc&lt;/em&gt;&lt;/li&gt;
                          &lt;/ul&gt;
                      &lt;/a&gt;                        
                  &lt;/sectiontext&gt;
  
      &lt;/additem&gt;
      &lt;additem&gt;   
                  &lt;choice&gt;image&lt;/choice&gt;
                  &lt;files&gt;
                      &lt;a xmlns="http://www.w3.org/1999/xhtml" title="image location" href="xyz:12-2022"&gt;
                          &lt;img  alt="No Image" title="No Image" xlink:href="some image path" xmlns:xlink="http://www.w3.org/1999/xlink"&gt;&lt;/img&gt;
                      &lt;/a&gt;
                  &lt;/files&gt;
      &lt;/additem&gt;
              &lt;additem&gt;                   
                  &lt;choice&gt;Paragraph&lt;/choice&gt;
                  &lt;sectiontext&gt;
                      &lt;a title="google" href="http://google.com" xmlns="http://www.w3.org/1999/xhtml"&gt;
                          &lt;strong&gt;Sample Text&lt;/strong&gt;
                          &lt;ul&gt;
                              &lt;li&gt;&lt;em&gt;aa&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;bb&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;cc&lt;/em&gt;&lt;/li&gt;
                          &lt;/ul&gt;
                      &lt;/a&gt;
                      hello alll
  
                  &lt;/sectiontext&gt;
  
      &lt;/additem&gt;
  &lt;/Data&gt;
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>&lt;Information&gt;
  
          &lt;Section&gt;
              &lt;text&gt;
                  &lt;strong&gt;Sample Text&lt;/strong&gt;
                          &lt;ul&gt;
                              &lt;li&gt;&lt;em&gt;aa&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;bb&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;cc&lt;/em&gt;&lt;/li&gt;
                          &lt;/ul&gt;
              &lt;/text&gt;
              &lt;link external="http://google.com" title="google"&gt;&lt;/link&gt;
          &lt;/Section&gt;
          &lt;picture&gt;
              &lt;image src="some image path" altText="No Image"&gt;
                  &lt;link local="xyz:12-2022" title="image location"&gt;&lt;/link&gt;
              &lt;/image&gt;
          &lt;/picture&gt;
          &lt;Body&gt;
              &lt;text&gt;
                  &lt;hyperlink&gt;
                      &lt;text&gt;
                          &lt;strong&gt;Sample Text&lt;/strong&gt;
                                  &lt;ul&gt;
                                      &lt;li&gt;&lt;em&gt;aa&lt;/em&gt;&lt;/li&gt;
                                      &lt;li&gt;&lt;em&gt;bb&lt;/em&gt;&lt;/li&gt;
                                      &lt;li&gt;&lt;em&gt;cc&lt;/em&gt;&lt;/li&gt;
                                  &lt;/ul&gt;
                      &lt;/text&gt; 
                      &lt;link external="http://google.com" title="google"&gt;&lt;/link&gt;
                  &lt;/hyperlink&gt;
                  hello alll
              &lt;/text&gt;
          &lt;/Body&gt;
  &lt;/Information&gt;
  </code></pre>
  
  <p>Rules:</p>
  
  <p>1.Depending on the choice in addItem/choice, we need to create the tag.</p>
  
  <pre><code>    choice    --    Desc
      desc    --      Section
      image   --      picture
      Paragraph----Body
  </code></pre>
  
  <p>2.Handling  tag
          Currently  tag is wrapping for some other tag.</p>
  
  <pre><code>    A.If any element has only &lt;a&gt; in it. For example in the source,
  
              Code in the source:
              &lt;sectiontext&gt;
                      &lt;a title="google" href="http://google.com" xmlns="http://www.w3.org/1999/xhtml"&gt;
                          &lt;strong&gt;Sample Text&lt;/strong&gt;
                          &lt;ul&gt;
                              &lt;li&gt;&lt;em&gt;aa&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;bb&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;cc&lt;/em&gt;&lt;/li&gt;
                          &lt;/ul&gt;
                      &lt;/a&gt;                        
              &lt;/sectiontext&gt;
  </code></pre>
  
  <p>Need to seperate that tag and create a tag </p>
  
  <pre><code>i. if the "href" in attribute in &lt;a&gt; tag starts with "xyz:" need to add it as "local" attribute in &lt;link&gt; element
  ii. If the "href" in the attribute &lt;a&gt; tag starts with "http" need to add it as "external" attribute in &lt;link&gt; element.
  ii. "title" attribute in &lt;a&gt; tag remains same in &lt;link&gt;
  
      B.if any element has any other element other than &lt;a&gt; tag.
  
          Code in the source:
  
          &lt;sectiontext&gt;
                      &lt;a title="google" href="http://google.com" xmlns="http://www.w3.org/1999/xhtml"&gt;
                          &lt;strong&gt;Sample Text&lt;/strong&gt;
                          &lt;ul&gt;
                              &lt;li&gt;&lt;em&gt;aa&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;bb&lt;/em&gt;&lt;/li&gt;
                              &lt;li&gt;&lt;em&gt;cc&lt;/em&gt;&lt;/li&gt;
                          &lt;/ul&gt;
                      &lt;/a&gt;
                      hello alll
  
          &lt;/sectiontext&gt;
  </code></pre>
  
  <p>I need to get the out put as</p>
  
  <pre><code>        &lt;text&gt;
                  &lt;hyperlink&gt;
                      &lt;text&gt;
                          &lt;strong&gt;Sample Text&lt;/strong&gt;
                                  &lt;ul&gt;
                                      &lt;li&gt;&lt;em&gt;aa&lt;/em&gt;&lt;/li&gt;
                                      &lt;li&gt;&lt;em&gt;bb&lt;/em&gt;&lt;/li&gt;
                                      &lt;li&gt;&lt;em&gt;cc&lt;/em&gt;&lt;/li&gt;
                                  &lt;/ul&gt;
                      &lt;/text&gt; 
                      &lt;link external="http://google.com" title="google"&gt;&lt;/link&gt;
                  &lt;/hyperlink&gt;
                  hello alll
          &lt;/text&gt;
  </code></pre>
  
  <p>Rules:</p>
  
  <pre><code>  i. In the all the text inside the &lt;a&gt; tag have to come under the &lt;inlinelink&gt; tag as shown above.
  </code></pre>
  
  <p>Can any one help how it can be done.</p>
  
  <p>Thank you.      </p>