IP Library Patent Application 11107915
Patent Application
App. No. 11/107,915

System and method for developing arbitrary and efficient mappings between complex message structures

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/107,915
Abstract

A system and method are provided for generating a mapping model to transform message communications between a first message format and a second message format. The first message format is configured for use by a client and the second message format is configured for use by a data source. The data source is configured for network communication with the client through implementation of the mapping model. The system and method comprises: an application module for providing a description of the first message format, the first message format including at least one client message data element for arranging in a first data structure; a data source module for providing a description of the second message format, the second message format including a plurality of data source message data elements for arranging in a second multiple layer data structure, the multiple layers of the second data structure for representing relationships between the data source message elements; a mapping module for generating at least one mapping descriptor of the mapping model by comparing the first data structure and the second data structure, the mapping descriptors for linking the at least one client message data element of the first data structure to at least one of the data source message data elements of the second data structure, such that a number of layers in the first data structure is not greater than the number of layers in the second data structure; wherein the mapping model including the mapping descriptors is used for monitoring message communication between the client and the data source.

Claims (34)

1 . A system for generating a mapping model to transform message communications between a first message format and a second message format, the first message format configured for use by a client and the second message format for use by a data source, the data source configured for network communication with the client through implementation of the mapping model, the system comprising:

an application module for providing a description of the first message format, the first message format including at least one client message element for arranging in a first data structure;

a data source module for providing a description of the second message format, the second message format including a plurality of data source message elements for arranging in a second multiple layer data structure, the multiple layers of the second data structure for representing relationships between the data source message elements;

a mapping module for generating at least one mapping descriptor of the mapping model by comparing the first data structure and the second data structure, the mapping descriptors for linking the at least one client message element of the first data structure to at least one of the data source message elements of the second data structure, such that a number of layers in the first data structure is not greater than the number of layers in the second data structure;

wherein the mapping model including the mapping descriptors is used for monitoring message communication between the client and the data source.

2 . The system of claim 1 , wherein the second data structure is selected from the group comprising: an array structure; a stack structure; a linked list structure; a tree structure; and a class structure.

3 . The system of claim 2 , wherein the mapping model descriptors map the message elements of web service messages to the message elements of client device messages, the client device in communication with the web service, the web service is the data source using the second message format and the client device uses the first message format.

4 . The system of claim 3 , wherein the application module obtains the description of the first message format from message components of an application expressed in a structured definition language, the application configurable for execution on the client device.

5 . The system of claim 3 , wherein the data source module obtains the description of the second message format from message components of an web service interface expressed in a structured definition language.

6 . The system of claim 5 further comprising a connector module for accessing the description of the web service interface over the network.

7 . The system of claim 6 further comprising a plurality of the mapping models configured for message communication of the client device with multiple respective web services.

8 . The system of claim 2 , wherein the mapping model is configured to map message elements of the first and second message formats selected from the group comprising: linking data fields subject to acceptable type conversions; link entire complex data structures based on common definitions between the first and second data structures; and enforce predefined data requirements for satisfying messaging demands of related messaging structures.

9 . The system of claim 2 further comprising a mapping schema expressed in a structured definition language to guide generation of the mapping model by the mapping module.

10 . The system of claim 2 further comprising a set of validation rules used by the mapping module selected from the group comprising: an already mapped message element cannot be mapped again; mapping descriptors representing mapping between 2 complex data structures can only be generated if these complex data structures match in terms of cardinality and of type compatibility; the mapping descriptors are generated for two compatible data structures for data fields up to the respective elementary fields; the mapping descriptors are not complete unless all of the elementary fields of the data structures are mapped; and an eventual previous mapping descriptor between the first data structure and the second data structure is displayed on a graphical interface.

11 . A method for generating a mapping model to transform message communications between a first message format and a second message format, the first message format configured for use by a client and the second message format for use by a data source, the data source configured for network communication with the client through implementation of the mapping model, the method comprising the steps of:

obtaining a description of the first message format, the first message format including at least one client message element for arranging in a first data structure;

obtaining a description of the second message format, the second message format including a plurality of data source message elements for arranging in a second multiple layer data structure, the multiple layers of the second data structure for representing relationships between the data source message elements;

generating at least one mapping descriptor of the mapping model by comparing the first data structure and the second data structure, the mapping descriptors for linking the at least one client message element of the first data structure to at least one of the data source message elements of the second data structure, such that a number of layers in the first data structure is not greater than the number of layers in the second data structure;

wherein the mapping model including the mapping descriptors is used for monitoring message communication between the client and the data source.

12 . The method of claim 11 , wherein the second data structure is selected from the group comprising: an array structure; a stack structure; a linked list structure; a tree structure; and a class structure.

13 . The method of claim 12 , wherein the mapping model descriptors map the message elements of web service messages to the message elements of client device messages, the client device in communication with the web service, the web service is the data source using the second message format and the client device uses the first message format.

14 . The method of claim 13 , wherein the description of the first message format is obtained from message components of an application expressed in a structured definition language, the application configurable for execution on the client device.

15 . The method of claim 13 , wherein the description of the second message format is obtained from message components of a web service interface expressed in a structured definition language.

16 . The method of claim 15 further comprising the step of accessing the description of the web service interface over the network.

17 . The method of claim 16 further comprising the step of generating a plurality of the mapping models configured for message communication of the client device with multiple respective web services.

18 . The method of claim 12 , wherein the mapping model is configured to map message elements of the first and second message formats selected from the group comprising: linking data fields subject to acceptable type conversions; link entire complex data structures based on common definitions between the first and second data structures; and enforce predefined data requirements for satisfying messaging demands of related messaging structures.

19 . The method of claim 12 further comprising the step of applying a mapping schema expressed in a structured definition language to guide generation of the mapping model.

20 . The method of claim 12 further comprising the step of applying a set of validation rules used in generating the model descriptors, the validation rules selected from the group comprising: an already mapped message element cannot be mapped again; mapping descriptors representing mapping between 2 complex data structures can only be generated if these complex data structures match in terms of cardinality and of type compatibility; the mapping descriptors are generated for two compatible data structures for data fields up to the respective elementary fields; the mapping descriptors are not complete unless all of the elementary fields of the data structures are mapped; and an eventual previous mapping descriptor between the first data structure and the second data structure is displayed on a graphical interface.

21 . A computer program product for generating a mapping model to transform message communications between a first message format and a second message format, the first message format configured for use by a client and the second message format for use by a data source, the data source configured for network communication with the client through implementation of the mapping model, the computer program product comprising:

a computer readable medium;

an application module for obtaining a description of the first message format, the first message format including at least one client message element for arranging in a first data structure;

a data source module for obtaining a description of the second message format, the second message format including a plurality of data source message elements for arranging in a second multiple layer data structure, the multiple layers of the second data structure for representing relationships between the data source message elements;

a mapping module for generating at least one mapping descriptor of the mapping model by comparing the first data structure and the second data structure, the mapping descriptors for linking the at least one client message element of the first data structure to at least one of the data source message elements of the second data structure, such that a number of layers in the first data structure is not greater than the number of layers in the second data structure;

wherein the mapping model including the mapping descriptors is used for monitoring message communication between the client and the data source.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Nov 4, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 034161/0093 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2005
From: MATEESCU, DANIEL; CACENCO, MICHAEL V.; GORING, BRYAN R.; BIBR, VIERA; SHENFIELD, MICHAEL
To: RESEARCH IN MOTION LIMITED
Reel/Frame 016291/0572 →