XSD 元素组
通过在架构中使用某些结构,可以在 BizTalk 映射器生成的可扩展样式表语言转换 (XSLT) 中创建变体。
当映射中包括定义序列、所选项或所有元素组的架构时,可能会出现上述情况。 例如,如果使用包含 “选择组” 节点的架构,则可以创建一个映射,该映射要求 “选择组” 节点的两个或更多个子级显示在输出实例消息中。 在这种情况下,BizTalk 映射器将在编译映射时显示警告。 警告将提示您,所映射的必填字段中只有一个字段能在运行时通过父循环的同一个迭代填充。 BizTalk 映射器将不显示表明映射逻辑不正确的错误消息。
另一种可以在 XSLT 中生成变体情况需要满足以下条件:
记录 A 有一个子 Field 元素 B。
记录 A 和子 字段元素 B 出现一次。
记录 A 是重复 的选择组 的一部分。
在这种情况下,BizTalk 映射器将生成包含迭代逻辑的 XSLT,以处理可能会有许多源记录变体的情形。
备注
对于涉及组的映射,必须明确地加以指定。 例如,如果目标架构包含具有子节点 A 和 B 的选择组 节点,则同时在其父组的同一迭代上让 A 和 B 无效。 BizTalk 映射器不会阻止您创建无效的映射。 因此,必须使用判断 functoid 设置映射,以便 A 和 B 永远不会同时出现。