【发布时间】:2018-10-04 21:47:38
【问题描述】:
我有一个要求,我必须将命名空间和 xsi 添加到 来自没有命名空间的源 xml 的元素。 在源 XML 我只是得到节点并且没有命名空间 另一个程序需要 BizTalk 将 Namespace 和 XSI 添加到 XML 以进行处理。
我试过了:
- 使用了添加命名空间管道组件。 (它刚刚添加 命名空间而不是 xsi 位)
- 使用地图建立所需的格式,是的,没有运气 只是命名空间。
需要您的帮助。
我的源 XML 是这样的
<?xml version="1.0" encoding="UTF-16"?>
<Document>
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId></MsgId>
<CreDtTm></CreDtTm>
<InitgPty>
<Id>
<OrgId>
<BICOrBEI></BICOrBEI>
</OrgId>
</Id>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId></OrgnlMsgId>
<OrgnlMsgNmId></OrgnlMsgNmId>
<OrgnlNbOfTxs></OrgnlNbOfTxs>
<OrgnlCtrlSum></OrgnlCtrlSum>
<GrpSts>ACCP</GrpSts>
</OrgnlGrpInfAndSts>
</CstmrPmtStsRpt>
</Document>
我需要的格式如下:
<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="MyNamespace">
<CstmrPmtStsRpt>
<GrpHdr>
<MsgId></MsgId>
<CreDtTm></CreDtTm>
<InitgPty>
<Id>
<OrgId>
<BICOrBEI></BICOrBEI>
</OrgId>
</Id>
</InitgPty>
</GrpHdr>
<OrgnlGrpInfAndSts>
<OrgnlMsgId></OrgnlMsgId>
<OrgnlMsgNmId></OrgnlMsgNmId>
<OrgnlNbOfTxs></OrgnlNbOfTxs>
<OrgnlCtrlSum></OrgnlCtrlSum>
<GrpSts>ACCP</GrpSts>
</OrgnlGrpInfAndSts>
</CstmrPmtStsRpt>
</Document>
【问题讨论】:
-
非常重要的问题,为什么?这是一个非常奇怪的场景,一个系统在 Empty Namespace 中生成内容,但另一个系统需要 Namespace 中完全相同的结构。这似乎是他们之间的沟通问题,而不是真正需要解决的问题。
-
请注意“MyNamespace”不是有效的 URI,不能使用。
标签: xslt biztalk biztalk-mapper