Browse Prior Art Database

Automatic generation of mappings between data structures with repeating fields of differing numbers of dimensions

IP.com Disclosure Number: IPCOM000016600D
Original Publication Date: 2003-Jul-02
Included in the Prior Art Database: 2003-Jul-02
Document File: 4 page(s) / 72K

Publishing Venue

IBM

Abstract

Disclosed is a way of automatically generating mappings between data structures with repeating fields of differing numbers of dimensions.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 46% of the total text.

Page 1 of 4

  Automatic generation of mappings between data structures with repeating fields of differing numbers of dimensions

Introduction

A common task in application integration scenarios is the definition of mappings that describe the assignment of values from data documents or messages of one interchange format to another - for example, from an EDI (Electronic Data Interchange) format to an application-specific format. A mapping is simply a rule that describes an association between a source data structure and a target data structure, which, when executed, results in the target data being populated from corresponding source data. In many application data formats, data structures can be nested and repeating- in other words, they can be thought of as multidimensional arrays. For instance, a purchase order document might contain one or more data structures representing order items, and each order item might contain one or more fields representing part codes. Different interchange formats are likely to represent this information using different structural organizations of the data.

  Software applications with knowledge of the logical structure of source and target data documents can facilitate the end user's task of defining mapping rules for execution in a data processing system. Such applications commonly provide a graphical representation of the source and target document structures and allowing the user to connect particular data elements in the source and target. Here we describe an approach for automatically generating executable code from a mapping association between structures that differ in the number of levels (dimensions) in the source and target hierarchies. The use of this technique in software can simplify the user's task by reducing the number of gestures required to define mappings between complex structures. Representation of mappings

  For the purpose of describing mappings, here we use field references - hierarchical paths - to identify the data elements involved. For path elements that are repeating, a subscript specifies the particular field occurrence. For example, we can identify a particular occurrence of a partCode field within an orderItem in a message using a field reference of the form:
orderItem[i1].partCode[i2]
where i1 and i2 are indices that identify the occurrence of orderItem and partCode respectively.

  Mappings are meta-information that describe the assignments of data values between source and data structures, and can be represented in a general way in the form
source --> target
where source and target are field references. For repeating fields, it is easy to envisage mapping specific field occurrences using literal indices, e.g. orderItems[1].partCodes[6] --> orderRecords[1].productIDs[6] but it is more useful to be able to define mappings between repeating fields in a general way that will apply to all occurrences: source.orderItems[].partCodes[] --> target.orderRecords[].productIDs[] A mapping of this sort imp...