我在 BizTalk 2009 中有一张地图,它将一些数据转换为 XML 文档以发送到另一个系统。目标模式包括一些具有xml:lang
属性的元素。BizTalk 将这些生成为ns1:lang
. 目标系统要求使用前缀xml
。
下面是一个简化的示例来展示 BizTalk 正在做什么:
sample.xsd
<xs:schema targetNamespace="http://example.com/"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import schemaLocation="common.xsd"
namespace="http://www.w3.org/XML/1998/namespace" />
<xs:element name="example">
<xs:complexType>
<xs:attribute ref="xml:lang" />
</xs:complexType>
</xs:element>
</xs:schema>
common.xsd
<xs:schema xmlns:xml="http://www.w3.org/XML/1998/namespace"
targetNamespace="http://www.w3.org/XML/1998/namespace"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:attribute name="lang" type="xs:language" />
</xs:schema>
地图输出示例
<ns0:example xmlns:ns0="http://example.com/"
xmlns:ns1="http://www.w3.org/XML/1998/namespace"
ns1:lang="en-US" />
有没有办法说服 BizTalk 使用xml
前缀?