IP Library Granted Patent US 7,631,001
Granted Patent B2
US 7,631,001 · App. 11/423,020 · Granted Dec 8, 2009

Electronic ink 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 7,631,001
App. No.
11/423,020
Granted
Dec 8, 2009
Kind
B2
Abstract

A method of reconciling a first data structure with a second data structure that is a subsequently modified version of the first data structure. Initially, each node in the first data structure for which a change has been made to a corresponding node in the second data structure is accessed. For each accessed node, a determination is made as to whether the change made to the corresponding node in the second data structure creates a collision with the first data structure. If the change made to the corresponding node in the second data structure does not create a collision with the first data structure, then the change is made to the accessed node in the first data structure.

Claims (18)

1. A computer-implemented method of reconciling a first data structure with a second data structure, each data structure initially comprising a plurality of corresponding nodes, the method comprising:

subsequent to an analysis that modifies the second data structure, creating a list of nodes that includes each of the following:

each node of the second data structure that has been changed by the analysis and for which a corresponding node in the first data structure was fixed;

each node of the second data structure that has been changed by the analysis and for which a corresponding node in the first data structure was deleted;

each node of the second data structure which was reordered by the analysis and for which a corresponding node in the first data structure was deleted;

each node of the second data structure which was linked to by the analysis and for which a corresponding node in the first data structure was deleted;

each node of the second data structure which was linked to another node by the analysis and for which a corresponding node in the first data structure was fixed;

each node of the second data structure which was linked to another node by the analysis and for which a corresponding node in the first data structure was deleted; and

each node of the second data structure which was deleted by the analysis and for which a corresponding node in the first data structure had a child node added;

accessing each node in the first data structure;

determining whether a change has been made to the node in the second data structure which corresponds to the each node in the first data structure;

determining whether the node is present in the created list of nodes; and

for each node in the second data structure that has been changed by the analysis and which is not in the created list, applying the change to a corresponding node in the first data structure;

wherein the method further comprises:

storing an identifier in a stroke map for each leaf node that existed in the second data structure prior to analysis for which there is a corresponding leaf node in the first data structure;

upon adding the node to the first data structure, accessing the stroke map to locate each leaf node that corresponds to the added node; and

adding each leaf node under the added node.

2. The method recited in claim 1 wherein the leaf nodes are located using the identifier.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2008
From: WAKEAM, JAMIE; DUNCAN, RICHARD; SUTANTO, HERRY; RAGHUPATHY, SASHI; KANNAPEL, TIMOTHY H.; SZILAGYI, ZOLTAN
To: MICROSOFT CORPORATION
Reel/Frame 020713/0260 →