Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>It looks like you don't need the Properties file as you are only getting rid of namespaces which can be done much simpler:</p> <pre><code>&lt;xsl:template match="*"&gt; &lt;xsl:element name="{local-name()}"&gt; &lt;xsl:apply-templates select="node() | @*"/&gt; &lt;/xsl:element&gt; &lt;/xsl:template&gt; &lt;xsl:template match="@*"&gt; &lt;xsl:copy/&gt; &lt;/xsl:template&gt; </code></pre> <p>The rest of what you want to achieve is probably plain xslt stuff.</p> <p><strong>EDIT</strong></p> <p>Update including stuff that will get you much closer to your goal</p> <pre><code>&lt;xsl:template match="/"&gt; &lt;Content&gt; &lt;xsl:apply-templates/&gt; &lt;/Content&gt; &lt;/xsl:template&gt; &lt;xsl:template match="@*"&gt; &lt;xsl:copy/&gt; &lt;/xsl:template&gt; &lt;xsl:template match="* [local-name() != 'com' and local-name() != 'content' and local-name() != 'wire' and local-name() != 'sI']"&gt; &lt;xsl:element name="{local-name()}"&gt; &lt;xsl:apply-templates select="node() | @*"/&gt; &lt;/xsl:element&gt; &lt;/xsl:template&gt; &lt;xsl:template match="* [local-name() = 'dynamic']"&gt; &lt;xsl:element name="{local-name()}"&gt; &lt;xsl:apply-templates select="node() | @*"/&gt; &lt;xsl:value-of select="@name"/&gt; &lt;/xsl:element&gt; &lt;/xsl:template&gt; &lt;xsl:template match="* [local-name() = 'contact' or local-name()='dynamicName']"&gt; &lt;xsl:element name="{local-name()}"&gt; &lt;xsl:value-of select="@value"/&gt; &lt;/xsl:element&gt; &lt;/xsl:template&gt; </code></pre> <p>The result is</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;Content&gt; &lt;aH&gt; &lt;text&gt;Ccc &lt;dynamic name="C_R_N"&gt;C_R_N&lt;/dynamic&gt;: More&lt;/text&gt; &lt;contact&gt;false&lt;/contact&gt; &lt;/aH&gt; &lt;page&gt; &lt;nL&gt;Please call us&lt;/nL&gt; &lt;/page&gt; &lt;body&gt; &lt;text&gt; C R N: &lt;strong&gt; &lt;dynamic name="C_R_N"&gt;C_R_N&lt;/dynamic&gt; &lt;/strong&gt;&lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; RE: &lt;dynamic name="D_C_P"&gt;D_C_P&lt;/dynamic&gt;&lt;dynamic name="M_C_O"&gt;M_C_O&lt;/dynamic&gt;&lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; In order &lt;strong&gt; &lt;dynamic name="M_D_D"&gt;M_D_D&lt;/dynamic&gt; &lt;/strong&gt;, we need some information. &lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt;&lt;strong&gt; Please call us &lt;dynamic name="C_P_D_N"&gt;C_P_D_N&lt;/dynamic&gt;. &lt;/strong&gt; Our hours &lt;ul class="nested"&gt; &lt;li&gt; Monday - Friday, &lt;dynamic name="DST_M_F_S_Hour"&gt;DST_M_F_S_Hour&lt;/dynamic&gt; am - &lt;dynamic name="DST_M_F_E_Hour"&gt;DST_M_F_E_Hour&lt;/dynamic&gt; pm; Saturday, &lt;dynamic name="DST_M_F_S_Hour"&gt;DST_M_F_S_Hour&lt;/dynamic&gt; am - &lt;dynamic name="DST_M_F_E_Hour"&gt;DST_M_F_E_Hour&lt;/dynamic&gt; pm. &lt;/li&gt; &lt;/ul&gt;&lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; Thank you for your action. . &lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; &lt;dynamic name="C_D_N"&gt;C_D_N&lt;/dynamic&gt; &lt;/text&gt; &lt;/body&gt; &lt;TextAndImage&gt; &lt;text&gt; &lt;dynamic name="C_S_N_D"&gt;C_S_N_D&lt;/dynamic&gt; &lt;/text&gt; &lt;/TextAndImage&gt; &lt;dynamicNames&gt; &lt;dynamicName&gt;LOW&lt;/dynamicName&gt; &lt;dynamicName&gt;Env&lt;/dynamicName&gt; &lt;/dynamicNames&gt; &lt;/Content&gt; </code></pre> <p>If, instead, you wish to move all attribute values for attributes dynamic/@name and otherElement/@value to the element body, then the following will do:</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt; &lt;xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/&gt; &lt;xsl:template match="/"&gt; &lt;Content&gt; &lt;xsl:apply-templates/&gt; &lt;/Content&gt; &lt;/xsl:template&gt; &lt;xsl:template match="@*"&gt; &lt;xsl:copy/&gt; &lt;/xsl:template&gt; &lt;xsl:template match="* [local-name() != 'com' and local-name() != 'content' and local-name() != 'wire' and local-name() != 'sI']"&gt; &lt;xsl:element name="{local-name()}"&gt; &lt;xsl:apply-templates select="node() | @*"/&gt; &lt;/xsl:element&gt; &lt;/xsl:template&gt; &lt;xsl:template match="* [local-name() = 'dynamic']"&gt; &lt;xsl:element name="{local-name()}"&gt; &lt;xsl:apply-templates select="node() | @*[local-name !='name']"/&gt; &lt;xsl:value-of select="@name"/&gt; &lt;/xsl:element&gt; &lt;/xsl:template&gt; &lt;xsl:template match="* [local-name() != 'dynamic' and @value]"&gt; &lt;xsl:element name="{local-name()}"&gt; &lt;xsl:apply-templates select="node() | @*[local-name !='value']"/&gt; &lt;xsl:value-of select="@value"/&gt; &lt;/xsl:element&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt; </code></pre> <p>with result</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;Content&gt; &lt;aH&gt; &lt;text&gt;Ccc &lt;dynamic&gt;C_R_N&lt;/dynamic&gt;: More&lt;/text&gt; &lt;contact&gt;false&lt;/contact&gt; &lt;/aH&gt; &lt;page&gt; &lt;nL&gt;Please call us&lt;/nL&gt; &lt;/page&gt; &lt;body&gt; &lt;text&gt; C R N: &lt;strong&gt; &lt;dynamic&gt;C_R_N&lt;/dynamic&gt; &lt;/strong&gt;&lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; RE: &lt;dynamic&gt;D_C_P&lt;/dynamic&gt;&lt;dynamic&gt;M_C_O&lt;/dynamic&gt;&lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; In order &lt;strong&gt; &lt;dynamic&gt;M_D_D&lt;/dynamic&gt; &lt;/strong&gt;, we need some information. &lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt;&lt;strong&gt; Please call us &lt;dynamic&gt;C_P_D_N&lt;/dynamic&gt;. &lt;/strong&gt; Our hours &lt;ul class="nested"&gt; &lt;li&gt; Monday - Friday, &lt;dynamic&gt;DST_M_F_S_Hour&lt;/dynamic&gt; am - &lt;dynamic&gt;DST_M_F_E_Hour&lt;/dynamic&gt; pm; Saturday, &lt;dynamic&gt;DST_M_F_S_Hour&lt;/dynamic&gt; am - &lt;dynamic&gt;DST_M_F_E_Hour&lt;/dynamic&gt; pm. &lt;/li&gt; &lt;/ul&gt;&lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; Thank you for your action. . &lt;/text&gt; &lt;/body&gt; &lt;body&gt; &lt;text&gt; &lt;dynamic&gt;C_D_N&lt;/dynamic&gt; &lt;/text&gt; &lt;/body&gt; &lt;TextAndImage&gt; &lt;text&gt; &lt;dynamic&gt;C_S_N_D&lt;/dynamic&gt; &lt;/text&gt; &lt;/TextAndImage&gt; &lt;dynamicNames&gt; &lt;dynamicName&gt;LOW&lt;/dynamicName&gt; &lt;dynamicName&gt;Env&lt;/dynamicName&gt; &lt;/dynamicNames&gt; &lt;/Content&gt; </code></pre>
 

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