Note that there are some explanatory texts on larger screens.

plurals
  1. POXSLT grouping based on XML element values
    text
    copied!<p>My Input XML File looks like</p> <pre><code>&lt;test-message&gt; &lt;segment id="MSH"/&gt; &lt;segment id="SFT"/&gt; &lt;segment id="PID"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="NK1"/&gt; &lt;segment id="PV1"/&gt; &lt;segment id="ORC"/&gt; &lt;segment id="OBR"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="OBX"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="SPM"/&gt; &lt;/test-message&gt; </code></pre> <p>in My above input XML file element <strong>segment</strong> with <strong>id="ORC"</strong> is optional</p> <p>I want to group My input XML file based on element <strong>segment</strong> with <strong>id="ORC"</strong> or element <strong>segment</strong> with <strong>id="OBR"</strong></p> <p>for above Input XML file I want to have below result when element <strong>segment with id="ORC" is present</strong></p> <pre><code>&lt;message-group&gt; &lt;test-message&gt; &lt;segment id="MSH"/&gt; &lt;segment id="SFT"/&gt; &lt;segment id="PID"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="NK1"/&gt; &lt;segment id="PV1"/&gt; &lt;/test-message&gt; &lt;test-message&gt; &lt;segment id="ORC"/&gt; &lt;segment id="OBR"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="OBX"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="SPM"/&gt; &lt;/test-message&gt; &lt;/message-group&gt; </code></pre> <p>for above Input XML file I want to have below result when element <strong>segment with id="ORC" is not present</strong></p> <pre><code>&lt;message-group&gt; &lt;test-message&gt; &lt;segment id="MSH"/&gt; &lt;segment id="SFT"/&gt; &lt;segment id="PID"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="NK1"/&gt; &lt;segment id="PV1"/&gt; &lt;/test-message&gt; &lt;test-message&gt; &lt;segment id="OBR"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="OBX"/&gt; &lt;segment id="NTE"/&gt; &lt;segment id="SPM"/&gt; &lt;/test-message&gt; &lt;/message-group&gt; </code></pre> <p>Can I have the XSLT (2.0) template or function to handle the above scenario</p> <p>Note : I am making use of XSLT 2.0 and saxon parsers</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload