IP Library Granted Patent US 8,577,904
Granted Patent B2
US 8,577,904 · App. 12/632,052 · Granted Nov 5, 2013

Composite copy and paste for composite user interfaces

Inventor: Cayce B. Marston (Bedford, NH)
Assignee: International Business Machines Corporation
View Patent ↗
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 8,577,904
App. No.
12/632,052
Granted
Nov 5, 2013
Kind
B2
Abstract

A selection of a composite copy command is detected via a computing device executing an application framework. The composite copy command is propagated to each active application associated with the application framework. A composite data element is received from each active application. The composite data element received from each active application is stored into a copy buffer.

Claims (59)

1. A method, comprising:

detecting, via a computing device executing an application framework, a selection of a composite copy command, where the application framework comprises one of a mashup application, a composite web application framework, a portlet application, a personal computer application framework, and an embedded computing application framework;

propagating the composite copy command to each active executing application associated with the application framework;

receiving a composite data element from each active executing application;

determining that two of the composite data elements received from two of the active executing applications each comprise an identical data element identifier;

selecting one of the two composite data elements based upon metadata associated with each of the two composite data elements; and

storing the composite data element received from each active executing application into a copy buffer, comprising:

encapsulating the composite data element received from each active executing application into a compound composite data element;

storing the compound composite data element into the copy buffer; and

storing the selected composite data element with the compound composite data element into the copy buffer.

2. The method of claim 1 , where receiving the composite data element from each active executing application comprises receiving one of an extensible markup language (XML) data instance and an XML data model from each active executing application.

3. The method of claim 1 , where the composite data element received from each active executing application comprises one of a data instance and a data model and encapsulating the composite data element received from each active executing application comprises one of:

selecting individual data elements from one of the data instance and the data model received from each active executing application and forming the individual data elements into the compound composite data element; and

concatenating one of the data instance and the data model received from each active executing application into the compound composite data element.

4. The method of claim 1 , further comprising:

detecting a selection of a composite paste command;

retrieving the stored composite data element from the copy buffer; and

providing the composite data element to at least one active executing application associated with the composite paste command.

5. A system, comprising:

a memory; and

a processor programmed to:

execute an application framework, where the application framework comprises one of a mashup application, a composite web application framework, a portlet application, a personal computer application framework, and an embedded computing application framework;

detect a selection of a composite copy command;

propagate the composite copy command to each active executing application associated with the application framework;

receive a composite data element from each active executing application;

determine that two of the composite data elements received from two of the active executing applications each comprise an identical data element identifier;

select one of the two composite data elements based upon metadata associated with each of the two composite data elements; and

store the composite data element received from each active executing application into the memory, the processor being programmed to:

encapsulate the composite data element received from each active executing application into a compound composite data element;

store the compound composite data element into the memory; and

store the selected composite data element with the compound composite data element into the memory.

6. The system of claim 5 , where, in being programmed to receive the composite data element from each active executing application, the processor is programmed to receive one of an extensible markup language (XML) data instance and an XML data model from each active executing application.

7. The system of claim 5 , where the composite data element received from each active executing application comprises one of a data instance and a data model and in being programmed to encapsulate the composite data element received from each active executing application, the processor is programmed to one of:

select individual data elements from one of the data instance and the data model received from each active executing application and form the individual data elements into the compound composite data element; and

concatenate one of the data instance and the data model received from each active executing application into the compound composite data element.

8. The system of claim 5 , where the processor is further programmed to:

detect a selection of a composite paste command;

retrieve the stored composite data element from the memory; and

provide the composite data element to at least one active executing application associated with the composite paste command.

9. A computer program product, comprising:

a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:

computer readable program code configured to execute an application framework, where the application framework comprises one of a mashup application, a composite web application framework, a portlet application, a personal computer application framework, and an embedded computing application framework;

computer readable program code configured to detect a selection of a composite copy command;

computer readable program code configured to propagate the composite copy command to each active executing application associated with the application framework;

computer readable program code configured to receive a composite data element from each active executing application;

computer readable program code configured to determine that two of the composite data elements received from two of the active executing applications each comprise an identical data element identifier;

computer readable program code configured to select one of the two composite data elements based upon metadata associated with each of the two composite data elements; and

computer readable program code configured to store the composite data element received from each active executing application into a copy buffer, comprising:

computer readable program code configured to encapsulate the composite data element received from each active executing application into a compound composite data element;

computer readable program code configured to store the compound composite data element into the copy buffer; and

computer readable program code configured to store the selected composite data element with the compound composite data element into the copy buffer.

10. The computer program product of claim 9 , where the computer readable program code configured to receive the composite data element from each active executing application comprises computer readable program code configured to receive one of an extensible markup language (XML) data instance and an XML data model from each active executing application.

11. The computer program product of claim 9 , where the composite data element received from each active executing application comprises one of a data instance and a data model and the computer readable program code configured to encapsulate the composite data element received from each active executing application comprises one of:

computer readable program code configured to select individual data elements from one of the data instance and the data model received from each active executing application and form the individual data elements into the compound composite data element; and

computer readable program code configured to concatenate one of the data instance and the data model received from each active executing application into the compound composite data element.

12. The computer program product of claim 9 , further comprising:

computer readable program code configured to detect a selection of a composite paste command;

computer readable program code configured to retrieve the stored composite data element from the copy buffer; and

computer readable program code configured to provide the composite data element to at least one active executing application associated with the composite paste command.

Assignments (2)
CONVEYOR IS ASSIGNING UNDIVIDED 50% INTEREST Recorded Jan 11, 2018
From: INTERNATIONAL BUSINESS MACHINES
To: SERVICENOW, INC.; INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 045047/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 7, 2009
From: MARSTON, CAYCE B.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 023612/0287 →
Continuity (1)
Related Publication 20110138283A1 · Jun 9, 2011