IP Library Granted Patent US 6,925,593
Granted Patent B1
US 6,925,593 · App. 09/658,840 · Granted Aug 2, 2005

Method and apparatus for transferring data during automated data processing

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 6,925,593
App. No.
09/658,840
Granted
Aug 2, 2005
Kind
B1
Abstract

A number of items of data from a data source ( 12 ) can be processed, and then supplied to a data destination ( 16-17 ). The data can include image data, text data, numeric data or some other type of data, or a combination of these types of data. The processing of the data is controlled by a project definition ( 14, 71, 101 ), which includes a plurality of modules selected from a variety of available modules. The modules have input and output ports, and the project definition includes binding information which relates input ports to output ports. The binding information can include a conditional binding ( 128 ), which supplies data to an input port from a selected one of two or more output ports, in dependence on a condition. A separate feature is that, if data obtained in a given format from an output port is being supplied to an input port which expects data in a different format, the data is automatically converted to the format expected by the input port.

Claims (62)

1. A method, comprising the steps of:

providing a set of predetermined function definitions which are different, at least one of said predetermined function definitions defining a function for manipulating image data; and

preparing a project definition that is operable when executed to process said image data, said project definition including:

a plurality of function portions which each correspond to one of said function definitions in said set, and which each define at least one input port of said function portion and at least one output port of said function portion that are functionally related according to the corresponding function definition;

a further portion which includes a source portion identifying a data source and defining an output port of said source portion through which said image data from the data source can be produced, and which includes a destination portion identifying a data destination and defining an input port of said destination portion through which said image data can be supplied to the data destination; and

binding information which includes binding portions that each associate a respective one of said input ports with one of said output ports, at least one of said binding portions being a conditional binding which is responsive to a specified condition for associating a respective one of said input ports with one of a plurality of different said output ports that form a set;

wherein preparing said project definition comprises:

displaying a project window that includes a graphical representation of said project definition; and

allowing a user to modify said project definition by interacting with said graphical representation using a pointing tool; and

wherein execution of said project definition operates at least in part to manipulate a graphical aspect of said image data.

2. A method according to claim 1 , including the step of formulating said condition to be a function of data which is available to said conditional binding from at least one of said output ports in said set.

3. A method according to claim 1 , wherein said step of preparing said project definition includes the step of having a user identify, for each said conditional binding, said input port therefor, said set of output ports therefor, said specified condition therefor, and a relationship between said specified condition and each said output port in said set.

4. A computer-readable medium encoded with a computer program which recognizes a set of predetermined function definitions that are different, at least one of said predetermined function definitions defining a function for manipulating image data, and which is operable when executed to facilitate preparation of a project definition that is operable when executed to process said image data, said project definition including:

a plurality of function portions which each correspond to one of said function definitions in said set, and which each define at least one input port of said function portion and at least one output port of said function portion that are functionally related according to the corresponding function definition;

a further portion which includes a source portion identifying a data source and defining an output port of said source portion through which said image data from the data source can be produced, and which includes a destination portion identifying a data destination and defining an input port of said destination portion through which said image data can be supplied to the data destination; and

binding information which includes binding portions that each associate a respective one of said input ports with one of said output ports, at least one of said binding portions being a conditional binding which is responsive to a specified condition for associating a respective one of said input ports with one of a plurality of different said output ports that form a set;

wherein facilitating preparation of said project definition comprises displaying a project window that includes a graphical representation of said project definition and allowing a user to modify said project definition by interacting with said graphical representation using a pointing tool; and

wherein execution of said project definition operates at least in part to manipulate a graphical aspect of said image data.

5. A computer-readable medium according to claim 4 , wherein said program is operable when executed to facilitate formulation of said specified condition to be a function of data which is available to said conditional binding from at least one of said output ports in said set.

6. A computer-readable medium according to claim 4 , wherein said program is operable when executed to facilitate said preparation of said project definition by having a user identity, for each said conditional binding, said input port therefor, said set of output ports therefor, said specified condition therefor, and a relationship between said specified condition and each said output port in said set.

7. A method, comprising the steps of:

providing a set of predetermined function definitions which are different, at least one of said predetermined function definitions defining a function for manipulating image data; and

preparing a project definition that is operable when executed to process said image data, said project definition including:

a plurality of function portions which each correspond to one of said function definitions in said set, and which each define at least one input port of said function portion and at least one output port of said function portion that are functionally related according to the corresponding function definition, at least one of said function definitions being operative to automatically convert to a predetermined data type any data which is received at the input port thereof as a data type other than said predetermined data type;

a further portion which includes a source portion identifying a data source and defining an output port of said source portion through which said image data from the data source can be produced, and which includes a destination portion identifying a data destination and defining an input port of said destination portion through which said image data can be supplied to the data destination; and

binding information which includes binding portions that each associate a respective one of said input ports with one of said output ports;

wherein preparing said project definition comprises:

displaying a project window that includes a graphical representation of said project definition; and

allowing a user to modify said project definition by interacting with said graphical representation using a pointing tool; and

wherein execution of said project definition operates at least in part to manipulate a graphical aspect of said image data.

8. A method according to claim 7 , including the step of selecting a numeric data type to be said predetermined data type.

9. A method according to claim 8 , including the step of accepting at least one of a text data type and an image data type as said other data type.

10. A method according to claim 7 , including the step of selecting a text data type to be said predetermined data type.

11. A method according to claim 10 , including the step of accepting at least one of a numeric data type and an image data type as said other data type.

12. A method according to claim 7 , including the step of selecting an image data type to be said predetermined data type.

13. A method according to claim 12 , including the step of accepting at least one of a text data type and a numeric data type as said other data type.

14. A computer-readable medium encoded with a computer program which recognizes a set of predetermined function definitions that are different, at least one of said predetermined function definitions defining a function for manipulating image data, said program being operable when executed to facilitate preparation of a project definition that is operable when executed to process said image data and which includes:

a plurality of function portions which each correspond to one of said function definitions in said set, and which each define at least one input port of said function portion and at least one output port of said function portion that are functionally related according to the corresponding function definition, at least one of said function definitions being operative to automatically convert to a predetermined data type any data which is received at the input port thereof as a data type other than said predetermined data type;

a further portion which includes a source portion identifying a data source and defining an output port of said source portion through which said image data from the data source can be produced, and which includes a destination portion identifying a data destination and defining an input port of said destination portion through which said image data can be supplied to the data destination; and

binding information which includes binding portions that each associate a respective one of said input ports with one of said output ports;

wherein facilitating preparation of said project definition comprises displaying a project window that includes a graphical representation of said project definition and allowing a user to modify said project definition by interacting with said graphical representation using a pointing tool; and

wherein execution of said project definition operates at least in part to manipulate a graphical aspect of said image data.

15. A computer-readable medium according to claim 14 , wherein said program is operable when executed to recognize a numeric data type as said predetermined data type.

16. A computer-readable medium according to claim 15 , wherein said program is operable when executed to accept at least one of a text data type and an image data type as said other data type.

17. A computer-readable medium according to claim 14 , wherein said program is operable when executed to recognize a text data type as said predetermined data type.

18. A computer-readable medium according to claim 17 , wherein said program is operable when executed to accept at least one of a numeric data type and an image data type as said other data type.

19. A computer-readable medium according to claim 14 , wherein said program is operable when executed to recognize an image data type as said predetermined data type.

20. A computer-readable medium according to claim 19 , wherein said program is operable when executed to accept at least one of a text data type and a numeric data type as said other data type.

21. A method according to claim 1 , wherein:

said project window further includes a list of functions, sources, and destinations; and

allowing said user to modify said project definition by interacting with said graphical representation using said pointing tool includes allowing said user to:

select at least one function, source, and destination from said list;

indicate where to insert icons representing selected functions, sources, and destinations in said graphical representation; and

bind said icons inserted into said graphical representation together.

22. A computer readable medium according to claim 4 , wherein:

said project window further includes a list of functions, sources, and destinations; and

allowing said user to modify said project definition by interacting with said graphical representation using said pointing tool includes allowing said user to:

select at least one function, source, and destination from said list;

indicate where to insert icons representing selected functions, sources, and destinations in said graphical representation; and

bind said icons inserted into said graphical representation together.

23. A method according to claim 7 , wherein automatically converting data to said predetermined data type includes converting a floating point value that represents a number to a text string which represents said number.

24. A computer readable medium according to claim 14 , wherein automatically converting data to said predetermined data type includes converting a floating point value that represents a number to a text string which represents said number.

Assignments (22)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2019
From: COREL SOFTWARE LLC
To: COREL CORPORATION
Reel/Frame 048067/0586 →
CHANGE OF NAME Recorded Nov 29, 2018
From: 8324450 CANADA INC.
To: COREL SOFTWARE LLC
Reel/Frame 047675/0950 →
ENTITY DOMICILE CHANGE Recorded Dec 17, 2014
From: 8324450 CANADA INC.
To: 8324450 DELAWARE LLC
Reel/Frame 034651/0817 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE, AND REPLACE THE ASSIGNMENT PREVIOUSLY RECORDED ON REEL 030427 FRAME 0331. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT TO 8324450 CANADA INC. Recorded Aug 1, 2013
From: COREL CORPORATION
To: 8324450 CANADA INC.
Reel/Frame 030986/0268 →
RELEASE OF SECURITY INTEREST Recorded Jun 11, 2013
From: JPMORGAN CHASE BANK, N.A.
To: COREL CORPORATION; COREL INC.; COREL HOLDINGS CORPORATION; WINZIP COMPUTING LP; WINZIP INTERNATIONAL LLC; WINZIP COMPUTING LLC
Reel/Frame 030591/0454 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 17, 2013
From: VECTOR CC HOLDINGS, SRL; VECTOR CC HOLDINGS III, SRL; VECTOR CC HOLDINGS IV, SRL
To: 8324450 CANADA INC.
Reel/Frame 030427/0403 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2013
From: COREL CORPORATION
To: VECTOR CC HOLDINGS, SRL; VECTOR CC HOLDINGS III, SRL; VECTOR CC HOLDINGS IV, SRL
Reel/Frame 030427/0331 →
ASSIGNMENT AND ASSUMPTION Recorded Dec 29, 2006
From: MORGAN STANLEY & COMPANY INCORPORATED
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 018688/0422 →
SECURITY AGREEMENT Recorded May 19, 2006
From: COREL CORPORATION; COREL INC.; COREL HOLDINGS CORPORATION; WINZIP COMPUTING LLC; WINZIP INTERNATIONAL LLC; WINZIP COMPUTING LP
To: MORGAN STANLEY & COMPANY INC.
Reel/Frame 017656/0072 →
RELEASE OF SECURITY INTEREST Recorded May 18, 2006
From: WELLS FARGO FOOTHILL, INC.
To: COREL CORPORATION; COREL INC.
Reel/Frame 017636/0352 →
RELEASE OF SECURITY INTERESTS Recorded May 17, 2006
From: CREDIT SUISSE TORONTO BRANCH (FKA CREDIT SUISSE FIRST BOSTON TORONTO BRANCH)
To: COREL CORPORATION; COREL US HOLDINGS, LLC
Reel/Frame 017636/0417 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded May 11, 2006
From: COREL CORPORATION
To: MICROGRAFX, INC.; IMAGE2WEB, INC.
Reel/Frame 017613/0601 →
SECOND LIEN SECURITY AGREEMENT Recorded Aug 2, 2005
From: COREL CORPORATION; COREL US HOLDINGS, LLC
To: CREDIT SUISSE FIRST BOSTON TORONTO BRANON
Reel/Frame 016784/0245 →
SECURITY AGREEMENT Recorded Feb 28, 2005
From: COREL CORPORATION
To: CREDIT SUISSE FIRST BOSTON TORONTO BRANCH
Reel/Frame 016309/0733 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2005
From: COREL INC.
To: COREL CORPORATION
Reel/Frame 015723/0207 →
SECURITY INTEREST Recorded Jul 22, 2004
From: COREL CORPORATION
To: WELLS FARGO FOOTHILL, INC.
Reel/Frame 015596/0932 →
SECURITY INTEREST Recorded Oct 6, 2003
From: COREL CORPORATION, AN ONTARIO CORPORATION
To: WELLS FARGO FOOTHILL, INC.
Reel/Frame 014560/0455 →
MERGER Recorded Apr 23, 2002
From: IMAGE2WEB, INC.
To: COREL CORPORATION (USA)
Reel/Frame 012840/0071 →
CHANGE OF NAME Recorded Apr 23, 2002
From: COREL CORPORATION (USA)
To: COREL INC.
Reel/Frame 012840/0075 →
SECURITY AGREEMENT Recorded Sep 5, 2001
From: MICROGRAFX, INC.; IMAGE2WEB, INC.
To: COREL CORPORATION
Reel/Frame 012128/0362 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2001
From: MICROGRAFX, INC.
To: IMAGE2WEB, INC.
Reel/Frame 012112/0476 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2000
From: KNUTSON, LOREN G.; SIMONE, JR. KENNETH D.; GHARBIA, NEZAR A.; ZURAWSKI, JOHN C.
To: IMAGE2WEB, INC.
Reel/Frame 011095/0378 →