You have copied the <front> and <body> elements from the source document, where
they are in no namespace, so the serializer has to add the xmlns="" attribute
to prevent the elements inheriting the namespace of their new parent.
It seems you actually want the <front> and <body> elements to be in namespace
"http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd"
<http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd%22>,
so you must generate them in that namespace. That means you can't simply copy
them from the input. So the template rule that copies these elements shouldn't
use <xsl:copy>, it should use <xsl:element name="{local-name()}"
namespace="http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd
<http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd%22>">.
I see that you've experimented with the copy-namespaces and inherit-namespaces
attributes of xsl:copy. I would suggest you avoid using these specialist
attributes until you have a much better understanding of how namespace nodes
and in-scope namespaces are handled by the XDM data model.
Michael Kay
Saxonica
On 4 Sep 2019, at 07:03, Joga Singh Rawat jrawat(_at_)aptaracorp(_dot_)com
<xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:
Dear Expert,
I am getting <front xmlns=""> and <body xmlns=""> as output from below
combination of input xml and xslt. Please let us know how to remove xmlns=””.
INPUT
<article xmlns:mml="http://www.w3.org/1998/Math/MathML"
<http://www.w3.org/1998/Math/MathML%22>
xmlns:xlink="http://www.w3.org/1999/xlink"
<http://www.w3.org/1999/xlink%22>xmlns:oasis="http://www.niso.org/standards/z39-96/ns/oasis-exchange/table"
<http://www.niso.org/standards/z39-96/ns/oasis-exchange/table%22>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<http://www.w3.org/2001/XMLSchema-instance%22>xmlns:ali="http://www.niso.org/schemas/ali/1.0/"
<http://www.niso.org/schemas/ali/1.0/%22> article-type="research-article"
dtd-version="1.1" xml:lang="en">
<front>
...
</front>
<body>
...</body>
</article>
XSLT
<xsl:template match="article">
<article
xmlns="http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd"
<http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd%22>>
<xsl:if test="@article-type">
<xsl:attribute name="article-type" select="@article-type"/>
</xsl:if>
<xsl:if test="@xml:lang">
<xsl:attribute name="xml:lang" select="@xml:lang"/>
</xsl:if>
<xsl:attribute
name="xsi:schemaLocation">http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd
<http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd>http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd
<http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd></xsl:attribute>
<xsl:apply-templates/>
</article>
</xsl:template>
<xsl:template match="node() | @*">
<xsl:copy copy-namespaces="no" inherit-namespaces="no">
<xsl:apply-templates select="node() | @*[not(name()='xmlns')]"/>
</xsl:copy>
</xsl:template>
OUTPUT
<article
xmlns="http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd"
<http://specifications.silverchair.com/xsd/1/18/SCJATS-journalpublishing.xsd%22>
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<http://www.w3.org/2001/XMLSchema-instance%22>
xmlns:mml="http://www.w3.org/1998/Math/MathML"
<http://www.w3.org/1998/Math/MathML%22>
article-type="research-article"
xml:lang="en"
xsi:schemaLocation="http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd
<http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd>http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd"
<http://specifications.silverchair.com/xsd/1/19/SCJATS-journalpublishing.xsd%22>>
<front xmlns="">
...
</front>
<body xmlns="">
...
</body>
</article>
thanks in advance
...JSR
XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list>
EasyUnsubscribe <http://lists.mulberrytech.com/unsub/xsl-list/293509> (by
email <>)
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--