XML Transaction Maps Overview

Before you can begin using Business Connect XML to do business with your trading partners using XML, you need to determine what XML standard each trading partner is going to use. All XML standards have associated document type definition (DTD) files that explain the data elements in the XML documents they send you. DTD files determine what data elements your trading partners can receive from you.

What is an XML Transaction?

An XML transaction can consist of the following components:

A transaction can be an inbound-only transaction (such as an invoice you receive from a vendor) with no outbound reply document, or an outbound-only transaction (such as an invoice you send to your customer) with no inbound received document.

What is a Transaction Map?

A transaction map creates an XQuery, which the system uses to translate data from an XML document to a format Eclipse can understand, or to translate Eclipse data to XML. A valid transaction map includes a received document, sent document, or both, and mapping selection criteria.

The elements defined in the DTD files from your trading partners might contain elements that are not named the same as Eclipse elements. Therefore, when you receive XML data from a trading partner or send data from Eclipse to a trading partner the system needs to know which elements to associate with elements in Eclipse. A transaction map associates the elements from a trading partner's XML document to the elements in Eclipse.

For example, your trading partner sends the purchase order number information in an order request in an element called PONum. Eclipse stores PO number or order number address information in the CustomerPONumber element in the database. Therefore, you need to associate the element from the DTD file to the corresponding element in Eclipse. Using the Business Connect XML mapping utility, you can make that association by drawing a line between the two elements, as shown in the following illustration:

Define a transaction map for each transaction type for each trading partner with which you do business using XML. For instructions to create a complete transaction map, see Creating XML Transaction Maps.

What if the Data Sent and Received is in Different Formats?

At times, your trading partners might define data in a different format than how Eclipse can store it. For example, you have a trading partner that defines dates in the mm/dd/yy format, where Eclipse stores dates in the mm/dd/yyyy format. Or, you have a trading partner that defines the unit of measure of each as "each" where Eclipse stores the same unit of measure as "ea."

To process XML transactions successfully, you might need to manipulate incoming or outgoing data to match the intended format. The system translates the data to the new format before saving it or sending it. You can modify each element in the Target XML column of a transaction for both the received document map and the sent document map using operations such as concatenation, adding, subtracting, and defining table-based conversions. For additional information about how to manipulate the XML data for translation, see Modifying Incoming and Outgoing XML Data.

How Does the System Know to Use the Map I Defined?

You might have trading relationships with many customers and vendors, therefore receiving and sending multiple XML documents to and from different trading partners in one day. As the system receives and sends XML transactions, it scans the XML documents for an element or a value that you define per transaction for each trading partner. This element or value tells the system which trading partner is sending or receiving the XML document and which transaction map to use to translate the XML.

For example, trading partner ABC Company sends you order requests with the following data elements within the XML:

HeaderBlock

From

To

CustomerIdentifiers

CompanyName

CustomerNum

Email

ItemList

.

.

If ABC Company is the only trading partner you have that sends you an XML document with the CustomerNum element, you can tag that element in the transaction map as the indicator. When the system receives the XML, it scans the content of the request and knows it is from ABC Company when it reaches the CustomerNum element and also knows to use the map you have defined for an order request transaction from ABC Company. However, if ABC Company sends you multiple XML documents that contain the CustomerNum element, defining the element itself does not provide the system enough information to distinguish the map. In this case, or if you have another trading partner that uses the same element, define a value sent in the element as the map indicator.

For each transaction map that you create, define an element tag as the indicator or a value as the indicator.

See Also:

Valid XML Mappings and Precautions

Creating XML Transaction Maps