IP Library Granted Patent US 9,569,450
Granted Patent B2
US 9,569,450 · App. 14/682,373 · Granted Feb 14, 2017

Systems and methods for the comparison of annotations within files

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 9,569,450
App. No.
14/682,373
Granted
Feb 14, 2017
Kind
B2
Abstract

Systems and methods are disclosed for comparing annotations in files to show changes in the annotations at a granular level. In one implementation, a system receives a first file and a second file for comparison. The system determines the annotation ranges for each annotation in the first file and the annotation range for each annotation in the second file. The system then determines the annotations from the first file that overlap with annotations from the second file and compares annotations that overlap. The system then incorporates the comparison of the annotations into a main comparison file. In certain implementations, the system uses an index to determine what annotations overlap. In other implementations, matched pairs are created from overlapping annotations.

Claims (83)

1. A computer-based system for generating comparison output files indicating differences in annotations, comprising:

a memory storing instructions; and

a processor configured to execute the instructions to:

create a first index for a first electronic file;

identify hidden characters for an insertion point and an end point of a first annotation in the first electronic file;

identify a first portion of the first index between the identified hidden characters;

create a second index for a second electronic file different than the first electronic file;

compare the identified first portion with the second electronic file, to determine whether the second electronic file contains a matching annotation corresponding to the first annotation; and

generate, based on the comparison, a comparison output file including information for displaying a modified appearance of characters in the first annotation to indicate that the second electronic file does not contain a matching annotation.

2. The computer-based system of claim 1 , wherein the processor is further configured to:

identify second annotation content corresponding to a second annotation in the second electronic file;

create an annotation index including the first annotation content and the second annotation content;

determine, based on the annotation index, whether the second annotation is a matching annotation corresponding to the first annotation.

3. The computer-based system of claim 1 , wherein the processor is further configured to:

identify a first annotation location corresponding to the first annotation;

identify a second annotation location corresponding to a second annotation in the second electronic file;

create an annotation index including the first annotation location and the second annotation location;

determine, based on the annotation index, whether the second annotation is a matching annotation corresponding to the first annotation.

4. The computer-based system of claim 2 , wherein the processor is further configured to:

identify a first annotation location corresponding to the first annotation;

identify a second annotation location corresponding to a second annotation in the second electronic file;

incorporate, in the annotation index, the first annotation location and the second annotation location;

determine, based on the annotation index, whether the second annotation is a matching annotation corresponding to the first annotation.

5. The computer-based system of claim 1 , wherein the processor is located remotely from a memory storing one of the first electronic file or the second electronic file.

6. The computer-based system of claim 1 , wherein the comparison output includes an indication that the first annotation was deleted when the second electronic file does not contain a matching annotation.

7. The computer-based system of claim 1 , wherein the comparison output includes an indication that the first annotation was inserted, when the second electronic file does not contain a matching annotation.

8. The computer-based system of claim 1 , wherein the comparison output is at least one of a document, spreadsheet, text file, image, or database file.

9. The computer-based system of claim 1 , wherein the processor is further configured to:

receive the first electronic file for comparison,

receive the second electronic file for comparison,

compare the first electronic file with the second electronic file, and

generate information for displaying, within the comparison output, differences between the first electronic file and the second electronic file.

10. A computer-implemented method for generating comparison output files indicating differences in annotations, the method comprising:

create a first index for a first electronic file;

identifying, by a processor, hidden characters for an insertion point and an end point of a first annotation in the first electronic file;

identifying a first portion of the first index between the identified hidden characters;

creating a second index for a second electronic file different than the first electronic file;

comparing, by the processor, the identified first portion with the second electronic file, to determine whether the second electronic file contains a matching annotation corresponding to the first annotation; and

generating, by the processor and based on the comparison, a comparison output file including information for displaying a modified appearance of characters in the first annotation to indicate that the second electronic file does not contain a matching annotation.

11. The computer-implemented method of claim 10 , further comprising:

identifying, by the processor, second annotation content corresponding to a second annotation in the second electronic file;

creating, by the processor, an annotation index including the first annotation content and the second annotation content;

determining based on the annotation index, by the processor, whether the second annotation is a matching annotation corresponding to the first annotation.

12. The computer-implemented method of claim 10 , further comprising:

identifying, by the processor, a first annotation location corresponding to the first annotation;

identifying, by the processor, a second annotation location corresponding to a second annotation in the second electronic file;

creating, by the processor, an annotation index including the first annotation location and the second annotation location;

determining based on the annotation index, by the processor, whether the second annotation is a matching annotation corresponding to the first annotation.

13. The computer-implemented method of claim 11 , further comprising:

identifying, by the processor, a first annotation location corresponding to the first annotation;

identifying, by the processor, a second annotation location corresponding to a second annotation in the second electronic file;

incorporating, by the processor, the first annotation location and the second annotation location in the index;

determining based on the annotation index, by the processor, whether the second annotation is a matching annotation corresponding to the first annotation.

14. The computer-implemented method of claim 10 , wherein the method is performed by a processor located remotely from a memory storing one of the first electronic file or the second electronic file.

15. The computer-implemented method of claim 10 , wherein the comparison output includes an indication that the first annotation was deleted when the second electronic file does not contain a matching annotation.

16. The computer-implemented method of claim 10 , wherein the comparison output includes an indication that the first annotation was inserted, when the second electronic file does not contain a matching annotation.

17. The computer-implemented method of claim 10 , wherein the comparison output is at least one of a document, spreadsheet, text file, image, or database file.

18. The computer-implemented method of claim 10 , further comprising:

receiving the first electronic file for comparison,

receiving the second electronic file for comparison,

comparing the first electronic file with the second electronic file, and

generating information for displaying, within the comparison output, differences between the first electronic file and the second electronic file.

19. A computer-based system for generating comparison output files indicating non-matched annotations within files, the system comprising:

a memory storing instructions; and

a processor configured to execute the instructions to:

identify first hidden characters for an insertion point and an end point of a first annotation in a first electronic file;

identify a first portion of the first electronic file between the identified first hidden characters;

identify second hidden characters for a second annotation in a second electronic file different than the first electronic file;

identify a second portion of the second electronic file between the identified second hidden characters;

generate an annotation index including the first portion and the second portion:

compare the first portion with the second portion in the annotation index to determine whether the second annotation is a matching annotation corresponding to the first annotation; and

generate, based on the comparison, a comparison output file including information for displaying a modified appearance of characters in the first annotation to indicate that the second electronic file does not contain a matching annotation.

20. The computer-based system of claim 19 , wherein the processor is located remotely from a memory storing one of the first electronic file or the second electronic file.

21. The computer-based system of claim 19 , wherein the second electronic file is a modified version of the first electronic file.

22. The computer-based system of claim 19 , wherein the first electronic file is a modified version of the second electronic file.

23. The computer-based system of claim 19 , wherein the comparison output further includes, when the second electronic file does not contain a matching annotation, an indication that the first annotation was deleted or an indication that the first annotation was inserted.

24. The computer-based system of claim 23 , wherein the indication is provided in redline format.

25. The computer-based system of claim 19 , wherein the comparison output is at least one of a document, spreadsheet, text file, image, or database file.

26. The computer-based system of claim 19 , wherein the processor is further configured to execute the instructions to:

receive the first electronic file for comparison,

receive the second electronic file for comparison,

compare the first electronic file with the second electronic file, and

generate information for displaying, within the comparison output, differences between the first electronic file and the second electronic file.

Assignments (10)
MERGER Recorded May 15, 2024
From: LITERA CORPORATION
To: FREEDOM SOLUTIONS GROUP, L.L.C.
Reel/Frame 067418/0630 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY RECORDED AT REEL 044396, FRAME 0217 Recorded Jun 3, 2019
From: SARATOGA INVESTMENT CORP. SBIC LP
To: LITÉRA CORPORATION
Reel/Frame 049350/0390 →
TERMINATION AND RELEASE OF GRANT OF INTELLECTUAL PROPERTY SECURITY AGREEMENT RECORDED AT REEL 043861, FRAME 0043 AND REEL 045626, FRAME 0582 Recorded Jun 3, 2019
From: PNC BANK, NATIONAL ASSOCIATION
To: LITÉRA CORPORATION
Reel/Frame 049354/0544 →
PATENT SECURITY AGREEMENT Recorded May 31, 2019
From: LITÉRA CORPORATION; FREEDOM SOLUTIONS GROUP, L.L.C.
To: OWL ROCK CAPITAL CORPORATION
Reel/Frame 049337/0220 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2018
From: MASSAND, DEEPAK
To: LITERA TECHNOLOGIES, LLC
Reel/Frame 046342/0085 →
MERGER Recorded Dec 15, 2017
From: LITERA CORPORATION
To: LITERA CORPORATION
Reel/Frame 044907/0080 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 5, 2017
From: MASSAND, DEEPAK
To: LITERA TECHNOLOGY LLC
Reel/Frame 044296/0138 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Nov 8, 2017
From: LITÉRA CORPORATION
To: SARATOGA INSVESTMENT CORP. SBIC LP, AS AGENT
Reel/Frame 044396/0217 →
SECURITY INTEREST Recorded Oct 13, 2017
From: LITERA CORPORATION
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 043861/0043 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2017
From: LITERA TECHNOLOGIES LLC
To: LITERA CORPORATION
Reel/Frame 043332/0040 →