我是BizTalk映射的新手,现在我的问题是:
假设我需要接收UBL文档,将其转换为我的Biztalk Core并发送相同的UBL。当然,我可以在没有核心格式的情况下执行1:1的UBL->UBL,但如果我需要发送其他东西(EDIFACT, oixml等),我可能需要这个核心,所以我相信使用核心是一个很好的实践。它看起来像UBL ->传入地图->核心→外出地图->UBL .
所以问题是:创建核心格式模式的最佳实践是什么?我的传入文件必须满足所有的iibl标准,所以我必须使用预定义为XSD模式的东西(例如:http://www.oioubl.info/Classes/en/Order.html)。输出文件也一样。
但是另一方面,我知道在我的例子中,这个标准包含了很多多余的字段。我永远不会使用其中的一些字段或参数;其他一些是常量,没有必要存储它-我们可以在outgoing map中定义默认值…等等。
所以我的问题是:什么是构建核心文件的最佳实践?是使用符合所有标准的完整UBL xsd更好,即使它是冗余的(在这种情况下,它将简化传入和输出映射-我可以只使用1:1的大量副本),还是更好地使用KISS并简化核心,因为它可能只使用我真正需要的字段,并在我需要其他东西时逐一添加一些东西?
这个问题不是关于代码的,而是关于什么是最佳实践的。
谢谢。如有任何建议,我将不胜感激。
最佳实践是内部核心或规范模式通常匹配入站外部模式(除了目标名称空间),这样您就不会丢失第一次映射中的任何数据,因为当您发现确实需要将其发送到另一个系统并需要另一个出站映射时,您需要的字段可能包含原始系统中没有的字段。当然,任何规则都有例外,至于什么时候不适合这样做,这是一个判断问题。