Integration Advisor – Support of xCBL Messages

Estimated read time 8 min read

We are pleased to announce that the B2B Library of xCBL Messages is now available as part of our predefined Type System content in Integration Advisor of SAP Integration Suite. Additionally, we have also added support for default namespace handling in Integration Advisor. In this blog post I would like to give you a short overview of these related topics.


The picture above depicts the overall building blocks of Integration Advisor. This blog post mainly relates to the Type Systems (B2B Library) area.

xCBL Messages

The xCBL.org organization had defined a collection of XML Message Types for B2B transactions back in the 2000s. For more background on xCBL you can refer to the xCBL.org homepage (Link). Although these message types are not extended anymore by xCBL.org, many customers still use them and wished to have them included in Integration Advisor.

Integration Advisor now provides 3 versions of xCBL, from 3.0 up to 4.0:

 
This offering contains 50 distinct business message types such as Order, Invoice or AdvanceShipmentNotice:

 
Please note that in xCBL each version comes with a different namespace. In the XML world, name + namespace form together a unique identifier for each object. As a result, each Business Message Type (such as Order or Invoice) is listed multiple times, once for each namespace. In the screenshot above, you can see the Order message type listed three times, corresponding to three different namespaces (= one for each version).   

A few technical notes for xCBL

The xCBL library defines proprietary codelists CountryCode, RegionCode, CurrencyCode and LanguageCode. Although very similar these codelists differ from the corresponding ISO standard codelists ISO_3166-1, ISO_3166-2, ISO_4217 and ISO_639-1. The codes in these xCBL codelists are typically from the end of the 1990s and thus not up to date. Moreover, xCBL offers the additional code Other to support the usage of any non-ISO code.

In Integration Advisor we have chosen the following design: All according nodes refer to the xCBL codelists by default because this is in accordance to the xCBL standard definition. In addition, we have added the corresponding ISO standard codelists as secondary codelists. This way, you can easily switch to the ISO codelists with a few clicks in your Message Implementation Guideline (MIG). 

The xCBL library uses an xCBL-specific format (called xcblDatetime) for date and time information (e.g. 20241215T11:00:00+01:00). It is very similar to the standard ISO-8601 format (e.g. 2024-12-15T11:00:00+01:00) but does not use the hyphens.

In Integration Advisor, we have added an additional date time format for xcblDatetime – this allows you to use our Date Time Conversion for such date/time values as well. The xCBL library also uses an xCBL-specific format (called xcblDate) for date information (e.g. 20241215) – in difference to ISO-8601 format (e.g. 2024-12-15) again without hyphens. However, the CCYYMMDD date time format has already been part of Integration Advisor since it is frequently used in other Type Systems such as UN/EDIFACT, ASC X12 or SAP IDoc.

Using the Default Namespace in xCBL Payloads

The XML standard allows XML elements (or attributes) to be part of a namespace, requiring a namespace declaration. xCBL messages use this option with the special case of default namespace. To illustrate this, let us look at an XML payload example of the xCBL Order message:

The root node of this message contains the namespace declaration xmlns=”rrn:org.xcbl:schemas/xcbl/v3_5/xcbl35.xsd”. No namespace prefix is used for this namespace and therefore it is called a default namespace. All payload elements (such as Order, OrderHeader or OrderIssueDate) don’t carry a namespace prefix but are implicitly part of this declared default namespace.

In Integration Advisor, under the tab Namespaces, this namespace is set as the default namespace:

Moreover, in the Structure tab (for either Message or MIG), selecting a node allows you to view its properties. In the Details tab, under the Identifier section, you will find the following technical details:

Namespace Prefix: shown as <default>XML Node Name: does not show a namespace prefix, consistent with how it is used in a message payload.

Refer below screenshot for an example.

 

Conclusion

With this content and feature update you can now build your Message Implementation Guidelines (MIGs) and Mapping Guidelines (MAGs) based on the xCBL Message Standard. You get an end-to-end solution where you can view and customize xCBL messages in Integration Advisor and process such messages in Cloud Integration.

Further reading

https://blogs.sap.com/2021/09/28/integration-advisor-overview-of-components-for-building-b2b-integra…

https://blogs.sap.com/2018/07/13/integration-content-advisor-create-a-customized-interface-using-mig…

 

​ We are pleased to announce that the B2B Library of xCBL Messages is now available as part of our predefined Type System content in Integration Advisor of SAP Integration Suite. Additionally, we have also added support for default namespace handling in Integration Advisor. In this blog post I would like to give you a short overview of these related topics.The picture above depicts the overall building blocks of Integration Advisor. This blog post mainly relates to the Type Systems (B2B Library) area.xCBL MessagesThe xCBL.org organization had defined a collection of XML Message Types for B2B transactions back in the 2000s. For more background on xCBL you can refer to the xCBL.org homepage (Link). Although these message types are not extended anymore by xCBL.org, many customers still use them and wished to have them included in Integration Advisor.Integration Advisor now provides 3 versions of xCBL, from 3.0 up to 4.0: This offering contains 50 distinct business message types such as Order, Invoice or AdvanceShipmentNotice: Please note that in xCBL each version comes with a different namespace. In the XML world, name + namespace form together a unique identifier for each object. As a result, each Business Message Type (such as Order or Invoice) is listed multiple times, once for each namespace. In the screenshot above, you can see the Order message type listed three times, corresponding to three different namespaces (= one for each version).   A few technical notes for xCBLThe xCBL library defines proprietary codelists CountryCode, RegionCode, CurrencyCode and LanguageCode. Although very similar these codelists differ from the corresponding ISO standard codelists ISO_3166-1, ISO_3166-2, ISO_4217 and ISO_639-1. The codes in these xCBL codelists are typically from the end of the 1990s and thus not up to date. Moreover, xCBL offers the additional code Other to support the usage of any non-ISO code.In Integration Advisor we have chosen the following design: All according nodes refer to the xCBL codelists by default because this is in accordance to the xCBL standard definition. In addition, we have added the corresponding ISO standard codelists as secondary codelists. This way, you can easily switch to the ISO codelists with a few clicks in your Message Implementation Guideline (MIG). The xCBL library uses an xCBL-specific format (called xcblDatetime) for date and time information (e.g. 20241215T11:00:00+01:00). It is very similar to the standard ISO-8601 format (e.g. 2024-12-15T11:00:00+01:00) but does not use the hyphens. In Integration Advisor, we have added an additional date time format for xcblDatetime – this allows you to use our Date Time Conversion for such date/time values as well. The xCBL library also uses an xCBL-specific format (called xcblDate) for date information (e.g. 20241215) – in difference to ISO-8601 format (e.g. 2024-12-15) again without hyphens. However, the CCYYMMDD date time format has already been part of Integration Advisor since it is frequently used in other Type Systems such as UN/EDIFACT, ASC X12 or SAP IDoc.Using the Default Namespace in xCBL PayloadsThe XML standard allows XML elements (or attributes) to be part of a namespace, requiring a namespace declaration. xCBL messages use this option with the special case of default namespace. To illustrate this, let us look at an XML payload example of the xCBL Order message:The root node of this message contains the namespace declaration xmlns=”rrn:org.xcbl:schemas/xcbl/v3_5/xcbl35.xsd”. No namespace prefix is used for this namespace and therefore it is called a default namespace. All payload elements (such as Order, OrderHeader or OrderIssueDate) don’t carry a namespace prefix but are implicitly part of this declared default namespace.In Integration Advisor, under the tab Namespaces, this namespace is set as the default namespace:Moreover, in the Structure tab (for either Message or MIG), selecting a node allows you to view its properties. In the Details tab, under the Identifier section, you will find the following technical details:Namespace Prefix: shown as <default>XML Node Name: does not show a namespace prefix, consistent with how it is used in a message payload.Refer below screenshot for an example. ConclusionWith this content and feature update you can now build your Message Implementation Guidelines (MIGs) and Mapping Guidelines (MAGs) based on the xCBL Message Standard. You get an end-to-end solution where you can view and customize xCBL messages in Integration Advisor and process such messages in Cloud Integration.Further readinghttps://blogs.sap.com/2021/09/28/integration-advisor-overview-of-components-for-building-b2b-integra…https://blogs.sap.com/2018/07/13/integration-content-advisor-create-a-customized-interface-using-mig…   Read More Technology Blogs by SAP articles 

#SAP

#SAPTechnologyblog

You May Also Like

More From Author