IP Library Granted Patent US 8,296,461
Granted Patent B2
US 8,296,461 · App. 12/187,097 · Granted Oct 23, 2012

Data transformation and exchange

Assignee: Object Innovation Inc.
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,296,461
App. No.
12/187,097
Granted
Oct 23, 2012
Kind
B2
Abstract

A data transformation and exchange server receives an input data stream from one or more application servers and/or computing devices. The data stream includes a plurality of input records and each input record can be in a different input protocol and/or character encoding. The transformation and exchange server determines each input record in the input data stream based on one or more boundary points and determines a template from a plurality of templates based on the input record. The transformation and exchange server transforms the input record into an output record based on the template and communicates the output record via an output data stream.

Claims (70)

1. A method for data transformation and exchange, comprising:

receiving an input datastream;

determining an input record based on one or more boundary points in the input data strewn;

determining a template from a plurality of templates based on the input record;

transforming the input record to an output record based on the template;

communicating the output record via an output data stream, the communicating being performed in or substantially in real-time as the input data stream is received;

receiving a communication failure notification associated with the output data stream;

communicating the output data stream based on quality of service information and the communication failure notification, the quality of service information including information as to whether guaranteed delivery is to be performed for the output data stream, and information as to whether retry logic is to be performed for resending the output data stream in the event of a failure in reception occurs;

communicating the output data stream based on dynamically generated information associated with the output data stream, the dynamically generated information including a relative size of the input data stream to the output data stream,

wherein the dynamically generated information includes network availability information and processor availability information.

2. The method of claim 1 , further comprising designating one or more boundary points in the input data stream based on data type information, a data validation rule, a data inbound template, a data outbound template, or any combination thereof.

3. The method of claim 1 , further comprising communicating the output data stream based on a predetermined schedule corresponding to a particular time each day to communicate the output data stream.

4. The method of claim 1 , further comprising:

determining one or more data validation rules based on the input record and one or more data validation templates; and

determining data type information based on the input record and one or more data type templates.

5. The method of claim 4 , further comprising the transforming the input record to the output record further based on the one or more data validation rules, the data type information, the template, or any combination thereof.

6. The method of claim 4 , wherein the one or more data validation rules and the data type information are determined independently.

7. The method of claim 1 , further comprising:

iterating through at least one data field in the input record based on the template;

selecting data from the at least one data field in the input record based on the template; and

storing the data in a text searchable format based on the template.

8. The method of claim 1 , further comprising:

selecting at least one data field in the input record, the output record, or both based on a business activity monitor rule;

comparing the selected one or more data fields to at least one threshold value; and

transmitting a notification communication based on the comparison of the selected one or more data fields, the notification communication generated based on the comparison.

9. The method of claim 1 , further comprising:

generating an accessible log of actions applied to the input record, output record, or both; and

providing an in-process report of the actions applied to the input record, output record, or both.

10. The method of claim 1 , further comprising:

aggregating data from selected fields of one or more input records associated with a plurality of transactions to obtain an aggregated value;

comparing the aggregated value to a threshold value; and

transmitting a notification communication based on the comparison of the aggregated value to the threshold value, the notification communication generated based on the comparison.

11. The method of claim 1 , further comprising:

aggregating data from selected fields of one or more input records associated with a plurality of transactions to obtain an aggregated value; and

displaying the aggregated value on a computing device.

12. The method as defined in claim 1 , further comprising determining for each of a plurality of fields within the input record a first character encoding for decoding data associated with the field.

13. The method as defined in claim 12 , further comprising determining a second character encoding for decoding data associated with a second field within the input record.

14. The method of claim 1 , wherein the input record utilizes a first protocol and the output record utilizes a second protocol.

15. The method of claim 1 , wherein the input record and the output record utilize a same protocol, the input record comprises a first set of data fields, the output record comprises a second set of data fields, and the first set of data fields is different from the second set of data fields.

16. The method of claim 1 , wherein the template comprises a plurality of references to a server and further comprising automatically modifying the plurality of references to the server via a single configuration modification.

17. The method of claim 1 , further comprising:

providing a user interface to modify one or more templates from the plurality of templates; and

modifying the one or more templates from the plurality of templates based on information received via the user interface and associated with a protocol.

18. A non-transitory computer readable medium storing computer program product for performing data transformation and exchange, the computer program product being executable by a computer and comprising:

first computer program code for receiving an input data stream;

second computer program code for determining an input record based on one or more boundary points in an input data stream;

third computer program code for determining a template from a plurality of templates based on the input record;

fourth computer program code for transforming the input record to an output record based on the template and communicating the output record via an output data stream, the communicating being performed in or substantially in real-time as the input data stream is received;

fifth computer program code for receiving a communication failure notification associated with the output data stream;

sixth computer program code for communicating the output data stream based on quality of service information and the communication failure notification, the quality of service information including information as to whether guaranteed delivery is to be performed for the output data stream, and information as to whether retry logic is to be performed for resending the output data stream in the event of a failure in reception occurs;

seventh computer program code for aggregating data from selected fields of one or more input records associated with a plurality of transactions to obtain an aggregated value and comparing the aggregated value to a threshold value; and

eighth computer program code for transmitting a notification communication based on the comparison of the aggregated value to the threshold value, the notification communication generated based on the comparison,

wherein the eighth computer program code transmits the notification communication based in part on a parameter corresponding to how often to provide notification if the threshold is constantly exceeded.

19. The non-transitory computer readable medium of claim 18 , further comprising:

ninth computer program code for determining one or more data validation rules based on the input record and one or more data validation templates; and

tenth computer program code for determining data type information based on the input record and one or more data type templates.

20. The non-transitory computer readable medium of claim 18 , further comprising:

ninth computer program code for iterating through at least one data field in the input record based on the template and selecting data from the at least one data field in the input record based on the template; and

tenth computer program code for storing the data in a text searchable format based on the template.

21. The non-transitory computer readable medium of claim 18 , further comprising:

ninth computer program code for:

selecting at least one data field in the input record, the output record, or both based on a business activity monitor rule;

comparing the selected one or more data fields to at least one threshold value; and

transmitting a notification communication based on the comparison of the selected one or more data fields, the notification communication generated based on the comparison.

22. The non-transitory computer readable medium of claim 18 , further comprising:

ninth computer program code for aggregating data from selected fields of one or more input records associated with a plurality of transactions to obtain an aggregated value; and

tenth computer program code for displaying the aggregated value on a computing device.

23. The method of claim 1 , further comprising transmitting the output data stream as a multicast data stream to a plurality of servers at the same time.

24. The method of claim 10 , further comprising:

transmitting the notification communication based in part on a parameter corresponding to how often to provide notification if the threshold is constantly exceeded.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Apr 2, 2024
From: COMERICA BANK
To: HEALTHCARE TECHNOLOGY ACQUISITION CORP.
Reel/Frame 066982/0856 →
CHANGE OF NAME Recorded Jun 10, 2014
From: HEALTHCARE TECHNOLOGY ACQUISITION CORP.
To: VORRO, INC.
Reel/Frame 033124/0306 →
SECURITY AGREEMENT Recorded Jul 1, 2013
From: HEALTHCARE TECHNOLOGY ACQUISITION CORP.
To: COMERICA BANK
Reel/Frame 030744/0585 →
CHANGE OF NAME Recorded Jun 13, 2013
From: OBJECT INNOVATION, INC.
To: HEALTHCARE TECHNOLOGY ACQUISITION CORP.
Reel/Frame 030609/0108 →
MERGER Recorded Jun 13, 2013
From: OBJECT INNOVATION, INC.
To: HEALTHCARE TECHNOLOGY ACQUISITION CORP.
Reel/Frame 030608/0942 →
MERGER Recorded Jun 13, 2013
From: OBJECT INNOVATION, INC.
To: HEALTHCARE TECHNOLOGY ACQUISITION CORP.
Reel/Frame 030604/0470 →
CHANGE OF NAME Recorded Jun 13, 2013
From: HEALTHCARE TECHNOLOGY ACQUISITION CORP.
To: OBJECT INNOVATION, INC.
Reel/Frame 030609/0025 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 5, 2009
From: BRIDGEGATE INTERNATIONAL, LLC
To: OBJECT INNOVATION INC.
Reel/Frame 022640/0258 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2009
From: SIRDEVAN, SCOTT MICHAEL; GROW, JOHN DARWIN; SISCO, PAUL ALLAN; BECK, PAUL ROBERT, JR.; CALDERARO, MATTHEW ALOYSIUS; BARBER, CHARLES; SLATER, DAVID; WORKMAN, JASON; KING, RONNIE E., II; SIRDEVAN, TERRY LEE; CARLSON, WILLIAM; SCHOTT, ZANE
To: BRIDGEGATE INTERNATIONAL, LLC
Reel/Frame 022138/0231 →
Continuity (2)
Provisional Application 60954442 · Aug 7, 2007
Related Publication 20090119416A1 · May 7, 2009