首先,当前的输出根本不是你说的那样。
接下来,当你这么说时:
在 CDSwaps 下移动 CMBX 元素时,添加了额外的属性 xmlns="",我不需要此属性。
您完全误判了问题。这里真正发生的是,
SubmitImportJobRequest
元素及其所有后代都位于/cp/bdtbeans
命名空间中,并且在复制时它们仍保留在该命名空间中。
但是,当您创建一个 new 元素
CDS
作为从 CMBX
元素移动的节点的包装器时,您正在无命名空间中创建一个元素 - 并且处理器必须将其标记为此类。
为了在与其祖先(和潜在后代)元素相同的命名空间中创建包装器,请更改此:
<xsl:element name="CDS">
至:
<xsl:element name="CDS" namespace="/cp/bdtbeans">