# US 10,374,905 B2 · System and method for intelligently mapping a source element to a target element in an integration cloud service design time

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,374,905 B2
- Document ID: US10374905B2
- Status: Granted
- Kind: B2
- Application number: 15/171,894
- Filed: 2016-06-02
- Published: 2016-12-08
- Granted: 2019-08-06
- Earliest claimed: 2015-06-05
- Assignees: Oracle International Corporation
- Applicants: Oracle International Corporation
- Inventors: Jorge Herreria; Thomas Hora
- Web page: https://patentgrep.com/patent/US10374905B2

## CPC

- G06F 16/254: {Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses}
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- G06F 3/04847: Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
- G06F 3/0486: Drag-and-drop
- G06F 8/34: Graphical or visual programming
- G06F 16/2428: {Query predicate definition using graphical user interfaces, including menus and forms (G06F16/2423 takes precedence)}
- G06F 16/258: {Data format conversion from or to a database}
- G06F 40/154: Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/51: Discovery or management thereof, e.g. service location protocol [SLP] or web services
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In accordance with an embodiment, described herein is a system and method for creating advanced mappings between a source application and a target application in a design time of a cloud-based integration service. The web interface application in the design time can display a source data object including one or more source elements, a target data object including one or more target elements, and a plurality of mapping components. A mapping area for a particular target element can include a mapping expression between a source element and the particular target element. When a mapping component is dragged and dropped onto the mapping area, an application programming interface defining one or more actions in accordance with a plurality of rules can be triggered, to generate one or more mapping statements to modify the mapping expression to create an advanced mapping between the source element and the target element.

## Claims

### Claim 1

A system for modifying a mapping expression in a cloud-based integration service to create an advanced mapping in the cloud-based integration service, the system comprising:
a computer comprising one or more microprocessors;
a cloud service, executing on the computer, wherein the cloud service comprises a web interface application for creating an integration flow between a source application and a target application, and a runtime for executing the integration flow;
a mapping area displayed in the web interface application for a target element of the target application, wherein the mapping area comprises a plurality of target items, the plurality of target items comprising a mapping expression that defines a mapping between a source element of the source application and the target element of the target application;
a plurality of mapping components displayed in the web interface application, wherein each mapping component is configured to be dragged and dropped onto one or more of the plurality of target items, wherein a first mapping component represents one or more of a condition for modifying the mapping expression and/or a function for modifying the mapping expression; and
an application programming interface that defines a plurality of rules, wherein each rule specifies one or more actions for a combination of a dragged and dropped mapping component and a catching target item catching the dragged and dropped mapping component,
wherein the first mapping component is dragged and dropped onto the mapping expression in the mapping area to trigger the application programming interface to apply one or more of the plurality of rules to automatically generate one or more mapping statements, the one or more mapping statements modifying the mapping expression by one or more of: wrapping a function around the mapping expression and/or adding a reference lookup to the mapping expression to create an advanced mapping between the source element and the target element,
wherein the advanced mapping is deployed and executed by the cloud service as the integration flow between the source application and the target application on the runtime.

### Claim 2 (depends on 1)

The system of claim 1, wherein the one or more mapping statements modify the mapping expression by one or more of: adding a conditional statement to the mapping expression, and/or modifying the mapping expression by one or more functions, operators, or statements, to include constraints, value calculations, or other operations.

### Claim 3 (depends on 1)

The system of claim 1, wherein the plurality of mapping components comprise one or more of extensible stylesheet language (XSL) constructs, XPath functions, operations, and variables.

### Claim 4 (depends on 1)

The system of claim 1, wherein the application programming interface is configured to have the first mapping component and the mapping expression as the catching target item passed as parameters to an object in the application programming interface.

### Claim 5 (depends on 1)

The system of claim 1, wherein the mapping area is selectively displayed when the target element is clicked on.

### Claim 6 (depends on 1)

The system of claim 1, wherein the plurality of mapping components are loaded into an object in the application programming interface, and wherein the plurality of mapping components are hierarchically classified in the application programming interface.

### Claim 7 (depends on 1)

The system of claim 1, wherein the plurality of mapping components displayed in the web interface application comprise a source item, wherein the first source item is dragged and dropped onto the mapping expression in the mapping area to trigger the application programming interface to apply a rule to generate a user prompt to prompt an associated user of the system to browse for a lookup comprising a reusable mapping for different codes and terms used by used by the source application for a specific field and by the target application for the same field thereby providing a capability to map values across vocabularies or systems.

### Claim 8

A method for modifying a mapping expression in a cloud-based integration service to create an advanced mapping in the cloud-based integration service, the method comprising:
providing a cloud service, executing on a computer comprising a microprocessor, wherein the cloud service comprises a web interface application for creating an integration flow between a source application and a target application, and a runtime for executing the integration flow;
displaying, in the web interface application, a mapping area for a target element of the target application, wherein the mapping area comprises a plurality of target items, the plurality of target items comprising a mapping expression that defines a mapping between a source element of the source application and the target element of the target application;
displaying, in the web interface application, a plurality of mapping components, wherein each mapping component is configured to be dragged and dropped onto one or more the plurality of target items, wherein a first mapping component represents one or more of a condition for modifying the mapping expression and/or a function for modifying the mapping expression;
providing an application programming interface that defines a plurality of rules, wherein each rule specifies one or more actions for a combination of a dragged and dropped mapping component and a catching target item catching the dragged and dropped mapping component;
receiving, in the mapping area, the first mapping component dragged and dropped onto the mapping expression; and
triggering the application programming interface to apply one or more rules of the plurality of rules to automatically generate one or more mapping statements, the one or more mapping statements modifying the mapping expression by one or more of: wrapping a function around the mapping expression and/or adding a reference lookup to the mapping expression to create an advanced mapping between the source element and the target element,
wherein the advanced mapping is deployed and executed by the cloud service as the integration flow between the source application and the target application on the runtime.

### Claim 9 (depends on 8)

The method of claim 8, wherein the one or more mapping statements modify the mapping expression by one or more of: adding a conditional statement to the mapping expression, and/or modifying the mapping expression by one or more functions, operators, or statements, to include constraints, value calculations, or other operations.

### Claim 10 (depends on 8)

The method of claim 8, wherein the plurality of mapping components comprise one or more of extensible stylesheet language (XSL) constructs, XPath functions, operations, and variables.

### Claim 11 (depends on 8)

The method of claim 8, wherein the application programming interface is configured to have the first mapping component and the mapping expression as the catching target item passed as parameters to an object in the application programming interface.

### Claim 12 (depends on 8)

The method of claim 8, wherein the mapping area is selectively displayed when the target element is clicked on.

### Claim 13 (depends on 8)

The method of claim 8, wherein the plurality of mapping components are loaded into an object in the application programming interface, and wherein the plurality of mapping components are hierarchically classified in the application programming interface.

### Claim 14 (depends on 8)

The method of claim 8, wherein the plurality of mapping components displayed in the web interface application comprise a source item, wherein the first source item is dragged and dropped onto the mapping expression in the mapping area to trigger the application programming interface to apply a rule to generate a user prompt to prompt an associated user of the system to browse for a lookup comprising a reusable mapping for different codes and terms used by used by the source application for a specific field and by the target application for the same field thereby providing a capability to map values across vocabularies or systems.

### Claim 15

A non-transitory computer-readable storage medium storing a set of instructions for modifying a mapping expression in a cloud-based integration service to create an advanced mapping in the cloud-based integration service design time, said instructions, when executed by one or more processors, causing the one or more processors to perform steps comprising:
providing a cloud service, executing on a computer comprising a microprocessor, wherein the cloud service comprises a web interface application for creating an integration flow between a source application and a target application, and a runtime for executing the integration flow;
displaying, in the web interface application, a mapping area for a target element of the target application, wherein the mapping area comprises a plurality of target items, the plurality of target items comprising a mapping expression that defines a mapping between a source element of the source application and the target element of the target application;
displaying, in the web interface application, a plurality of mapping components, wherein each mapping component is configured to be dragged and dropped onto one or more the plurality of target items, wherein a first mapping component represents one or more of a condition for modifying the mapping expression and/or a function for modifying the mapping expression;
providing an application programming interface that defines a plurality of rules, wherein each rule specifies one or more actions for a combination of a dragged and dropped mapping component and a catching target item catching the dragged and dropped mapping component;
receiving, in the mapping area, the first mapping component dragged and dropped onto the mapping expression; and
triggering the application programming interface to apply one or more rules of the plurality of rules to automatically generate one or more mapping statements, the one or more mapping statements modifying the mapping expression by one or more of: wrapping a function around the mapping expression and/or adding a reference lookup to the mapping expression to create an advanced mapping between the source element and the target element,
wherein the advanced mapping is deployed and executed by the cloud service as the integration flow between the source application and the target application on the runtime.

### Claim 16 (depends on 15)

The non-transitory computer-readable storage medium storing of claim 15, wherein the one or more mapping statements modify the mapping by one or more of: adding a conditional statement to the mapping expression, and/or modifying the mapping expression by one or more functions, operators, or statements, to include constraints, value calculations, or other operations.

### Claim 17 (depends on 15)

The non-transitory computer-readable storage medium storing of claim 15, wherein the plurality of mapping components comprise one or more of extensible stylesheet language (XSL) constructs, XPath functions, operations, and variables.

### Claim 18 (depends on 15)

The non-transitory computer-readable storage medium storing of claim 15 wherein the application programming interface is configured to have the first mapping component and the mapping expression as the catching target item passed as parameters to an object in the application programming interface.

### Claim 19 (depends on 15)

The non-transitory computer-readable storage medium storing of claim 15, wherein the mapping area is selectively displayed when the target element is clicked on.

### Claim 20 (depends on 15)

The non-transitory computer-readable storage medium storing of claim 15, wherein the plurality of mapping components are loaded into an object in the application programming interface, and wherein the plurality of mapping components are hierarchically classified in the application programming interface.
