← Back to Patent Explorer
US5845293A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and system of associating, synchronizing and reconciling computer files in an operating system

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1997-03-26
•
Granted: 1998-12-01
•
Expires: 2017-03-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and system for associating, synchronizing and reconciling files. Associated files are synchronized and their synchronization status reported. Based on the synchronization status, the operating system recommends a preferred reconciliation action. Furthermore, file conflicts are recognized and an application interface for computer applications is provided to allow conflicting files to be merged.

Inventors

  • 👤 William Lewis Veghte
  • 👤 Andrew Lawrence Silverman
  • 👤 Shannon Scott Hysom
  • 👤 David R. Dickman

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 13:17
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/10; G06F16/17; G06F16/178; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953

Claims Analysis

Total Claims: 33
Claim 1
Independent Claim 196 words
A method of associating files in a computing device having an operating system wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) transferring a selected file; (b) determining if the transfer of the selected file was into a dedicated folder; and (c) if the transfer of the selected file was into the dedicated folder; (1) creating a briefcase file of the selected file, the briefcase file being a copy of the selected file and having a name and a time-stamp the same as the name and the time-stamp, respectively, of the selected file, and designating the selected file as a synchronized file; and (2) storing a last reconciliation time-stamp, the name, time-stamp and the paths of the briefcase file and of the synchronized file into a dedicated synchronization database, wherein the time-stamp being a last reconciliation time-stamp is equal to the time-stamp of the briefcase file, and wherein all files of the same name in the synchronization database are thereby associated to form an associated file set.
Claim 2
Independent Claim 196 words
A method of associating files in a computing device having an operating system wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) transferring a selected file; (b) determining if the transfer of the selected file was into a dedicated folder; and (c) if the transfer of the selected file was into the dedicated folder; (1) creating a briefcase file of the selected file, the briefcase file being a copy of the selected file and having a name and a time-stamp the same as the name and the time-stamp, respectively, of the selected file, and designating the selected file as a synchronized file; and (2) storing a last reconciliation time-stamp, the name, time-stamp and the paths of the briefcase file and of the synchronized file into a dedicated synchronization database, wherein the time-stamp being a last reconciliation time-stamp is equal to the time-stamp of the briefcase file, and wherein all files of the same name in the synchronization database are thereby associated to form an associated file set.
Claim 3
Dependent Claim 221 words
A method of associating files in a computing device as recited in claim 1 further comprising the steps of: (d) determining if the transfer of the selected file was from the dedicated folder; and (e) if the transfer of the selected file was from the dedicated folder, determining if the dedicated folder is on a removable storage media; (1) if the dedicated folder is on removable storage media; (A) creating a synchronized file of the selected file, the synchronized file being a copy of the selected file having a name and a time-stamp the same as the name and the time-stamp respectively of the selected file, and designating the selected file as a briefcase file; (B) storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file into a dedicated synchronization database, wherein the last reconciliation time-stamp is equal to the time-stamp of the synchronized file, and wherein all files of the same name in the synchronization database are thereby associated to form an associated file set; and (2) if the dedicated folder is not on a removable storage media: (A) moving the selected file to a drop location; and (B) deleting the name, the last reconciliation time-stamp and the paths of the briefcase and the selected file from the dedicated synchronization database.
Claim 4
Dependent Claim 24 words
A method of associating files in a computing device as recited in claim 1 wherein the file selection occurs through a graphical user interface.
Claim 5
Independent Claim 168 words
A method of enabling the replacing of files in a computer system having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) receiving information that a selected one of a plurality of computer applications, each having an application type, is associated with a corresponding reconciliation handler, (b) storing the application type of the selected computer application in a registry database, (c) storing call information of the corresponding reconciliation handler for the selected computer application in the registry database, (d) detecting a request to replace files of the application type for the selected computer application, (e) retrieving the call information of the corresponding reconciliation handler from the registry database, (f) calling the selected computer application to activate the corresponding reconciliation handler, and (g) providing the name, paths and time-stamps of the files to a reconciliation handler interface.
Claim 6
Independent Claim 168 words
A method of enabling the replacing of files in a computer system having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) receiving information that a selected one of a plurality of computer applications, each having an application type, is associated with a corresponding reconciliation handler, (b) storing the application type of the selected computer application in a registry database, (c) storing call information of the corresponding reconciliation handler for the selected computer application in the registry database, (d) detecting a request to replace files of the application type for the selected computer application, (e) retrieving the call information of the corresponding reconciliation handler from the registry database, (f) calling the selected computer application to activate the corresponding reconciliation handler, and (g) providing the name, paths and time-stamps of the files to a reconciliation handler interface.
Claim 7
Dependent Claim 39 words
A method of enabling the replacing of files in a computing device as recited in claim 4 further comprising the step of passing progress messages from the corresponding reconciliation handler to the operating system through the reconciliation handler interface.
Claim 8
Dependent Claim 135 words
A computer system for associating files in a computing device, comprising: (a) an operating system wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path; (b) a dedicated folder for receiving a copy of a selected file, the selected file being designated as a synchronized file and the copy in the dedicated folder being designated as a briefcase file; (c) a dedicated synchronization database for storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file; and (d) an association engine for determining which files have the same name in the dedicated synchronization database and are thereby associated to form an associated file set.
Claim 9
Dependent Claim 135 words
A computer system for associating files in a computing device, comprising: (a) an operating system wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path; (b) a dedicated folder for receiving a copy of a selected file, the selected file being designated as a synchronized file and the copy in the dedicated folder being designated as a briefcase file; (c) a dedicated synchronization database for storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file; and (d) an association engine for determining which files have the same name in the dedicated synchronization database and are thereby associated to form an associated file set.
Claim 10
Dependent Claim 191 words
A computer system for associating and reporting the state of synchronization of files in a computing device comprising: (a) an operating system wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path; (b) a dedicated folder for receiving a copy of a selected file, the selected file being designated as a synchronized file and the copy in the dedicated folder being designated as a briefcase file; (c) a dedicated synchronization database for storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file; (d) an association engine for determining which files have the same name in the dedicated synchronization database and are thereby associated to form an associated file set; and (e) a synchronization engine for: (1) determining a synchronization status of the associated file set upon an updating event by determining if the briefcase file has been modified and by determining if the synchronized file has been modified; and (2) reporting the synchronization status of the associated file set.
Claim 11
Dependent Claim 191 words
A computer system for associating and reporting the state of synchronization of files in a computing device comprising: (a) an operating system wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path; (b) a dedicated folder for receiving a copy of a selected file, the selected file being designated as a synchronized file and the copy in the dedicated folder being designated as a briefcase file; (c) a dedicated synchronization database for storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file; (d) an association engine for determining which files have the same name in the dedicated synchronization database and are thereby associated to form an associated file set; and (e) a synchronization engine for: (1) determining a synchronization status of the associated file set upon an updating event by determining if the briefcase file has been modified and by determining if the synchronized file has been modified; and (2) reporting the synchronization status of the associated file set.
Claim 12
Dependent Claim 104 words
A computer system for associating and reporting the state of synchronization of files in a computing device as recited in claim 7 further comprising a file system for storing the current time-stamps of files in the computing device, wherein the synchronization engine determines if the briefcase file has been modified by comparing the current time-stamp of the briefcase file in the file system with the last reconciliation time-stamp in the synchronization database and determines if the synchronized file has been modified by comparing the current time-stamp of the synchronized file in the file system with the last reconciliation time-stamp in the dedicated synchronization database.
Claim 13
Dependent Claim 307 words
A computer system for associating, synchronizing and reconciling files in a computing device comprising: (a) an operating system wherein the operating system is capable of recognizing a plurality of application types, and wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, typed by an application type associated with the file, and located on a storage device by a path; (b) a dedicated folder for receiving a copy of a selected file, the selected file designated as a synchronized file and the copy in the dedicated folder designated as a briefcase file; (c) a dedicated synchronization database for storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file; (d) an association engine for determining which files have the same name in the dedicated synchronization database and are thereby associated to form an associated file set; and (e) a synchronization engine for: (1) determining a synchronization status of the associated file set upon an updating event by determining if the briefcase file has been modified and by determining if the synchronized file has been modified; and (2) reporting the synchronization status of the associated file set; (f) a file manager for: (1) recommending the synchronized file be replaced by the briefcase file if only the briefcase file has been modified; and (2) recommending the briefcase file be replaced by the synchronization file if only the synchronized file has been modified; (g) a registry database for: (1) listing a plurality of reconciliation handlers by application type; and (2) storing call information for each of the plurality of reconciliation handlers; and (h) a reconciliation handler interface for replacing files by: (1) receiving a request to replace files; and (2) calling one of the plurality of reconciliation handlers.
Claim 14
Dependent Claim 307 words
A computer system for associating, synchronizing and reconciling files in a computing device comprising: (a) an operating system wherein the operating system is capable of recognizing a plurality of application types, and wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, typed by an application type associated with the file, and located on a storage device by a path; (b) a dedicated folder for receiving a copy of a selected file, the selected file designated as a synchronized file and the copy in the dedicated folder designated as a briefcase file; (c) a dedicated synchronization database for storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file; (d) an association engine for determining which files have the same name in the dedicated synchronization database and are thereby associated to form an associated file set; and (e) a synchronization engine for: (1) determining a synchronization status of the associated file set upon an updating event by determining if the briefcase file has been modified and by determining if the synchronized file has been modified; and (2) reporting the synchronization status of the associated file set; (f) a file manager for: (1) recommending the synchronized file be replaced by the briefcase file if only the briefcase file has been modified; and (2) recommending the briefcase file be replaced by the synchronization file if only the synchronized file has been modified; (g) a registry database for: (1) listing a plurality of reconciliation handlers by application type; and (2) storing call information for each of the plurality of reconciliation handlers; and (h) a reconciliation handler interface for replacing files by: (1) receiving a request to replace files; and (2) calling one of the plurality of reconciliation handlers.
Claim 15
Dependent Claim 104 words
An interface for replacing files in a computing device comprising: (a) a registry database for: (1) listing a plurality of reconciliation handlers, each corresponding to one of a plurality of application programs having an application type, each reconciliation handler listed in the registry database by the application type for the corresponding application program; and (2) storing call information for each of the plurality of reconciliation handlers; and (b) a reconciliation handler interface for replacing files by: (1) receiving a request to replace files; and (2) calling a selected one of the application programs to activate its corresponding one of the plurality of reconciliation handlers.
Claim 16
Dependent Claim 104 words
An interface for replacing files in a computing device comprising: (a) a registry database for: (1) listing a plurality of reconciliation handlers, each corresponding to one of a plurality of application programs having an application type, each reconciliation handler listed in the registry database by the application type for the corresponding application program; and (2) storing call information for each of the plurality of reconciliation handlers; and (b) a reconciliation handler interface for replacing files by: (1) receiving a request to replace files; and (2) calling a selected one of the application programs to activate its corresponding one of the plurality of reconciliation handlers.
Claim 17
Dependent Claim 38 words
An interface for replacing files in a computing device as recited in claim 10 wherein the reconciliation handler interface is further available for passing progress messages from the corresponding one of the reconciliation handlers to the computing device.
Claim 18
Independent Claim 136 words
A method of determining the status of synchronization of files in a computing device having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) creating a dedicated folder for maintaining an associated set of files; (b) in response to moving a selected one of tie files into the dedicated folder, creating a briefcase file representing a copy of the selected file; (c) retrieving from a dedicated synchronization database the name and the path of the briefcase file, and a last reconciliation time-stamp; (d) getting the time-stamp of the briefcase file; and (e) comparing the time-stamp of the briefcase file with the last reconciliation time-stamp.
Claim 19
Independent Claim 136 words
A method of determining the status of synchronization of files in a computing device having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) creating a dedicated folder for maintaining an associated set of files; (b) in response to moving a selected one of tie files into the dedicated folder, creating a briefcase file representing a copy of the selected file; (c) retrieving from a dedicated synchronization database the name and the path of the briefcase file, and a last reconciliation time-stamp; (d) getting the time-stamp of the briefcase file; and (e) comparing the time-stamp of the briefcase file with the last reconciliation time-stamp.
Claim 20
Independent Claim 185 words
A method of recommending a reconciling action for conflicting files in a computing device having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) creating a dedicated folder for maintaining an associated set of files; (b) in response to moving a selected one of the files into the dedicated folder, creating a briefcase file representing a copy of the selected file and designating the selected files as a synchronized file; (c) if neither the briefcase file nor the synchronized file has been modified, recommending no reconciliation action; (d) if only the briefcase file has been modified, recommending the synchronized file be replaced by the briefcase file; (e) if only the synchronized file has been modified, recommending the briefcase file be replaced by the synchronized file; and (f) if both the briefcase file and the synchronized file have been modified, reporting that a file conflict exists between the briefcase file and the synchronized file.
Claim 21
Independent Claim 185 words
A method of recommending a reconciling action for conflicting files in a computing device having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, comprising the steps of: (a) creating a dedicated folder for maintaining an associated set of files; (b) in response to moving a selected one of the files into the dedicated folder, creating a briefcase file representing a copy of the selected file and designating the selected files as a synchronized file; (c) if neither the briefcase file nor the synchronized file has been modified, recommending no reconciliation action; (d) if only the briefcase file has been modified, recommending the synchronized file be replaced by the briefcase file; (e) if only the synchronized file has been modified, recommending the briefcase file be replaced by the synchronized file; and (f) if both the briefcase file and the synchronized file have been modified, reporting that a file conflict exists between the briefcase file and the synchronized file.
Claim 22
Dependent Claim 36 words
A method of recommending a reconciling action for conflicting files in a computing device as recited in claim 13 wherein if the file conflict exists, recommending that the briefcase file and the synchronization file be merged.
Claim 23
Dependent Claim 87 words
A method of recommending a reconciling action for conflicting files in a computing device as recited in claim 14 further comprising the steps of: (g) if an update request for the briefcase file is received, passing the update request to a file manager; (h) if an update request for the synchronized file is received, passing the update request to the file manager; and (i) if a merge request for the briefcase file and the synchronized file is received, passing the merge request to a reconciliation handler interface.
Claim 24
Dependent Claim 79 words
A method of recommending a reconciling action for conflicting files in a computing device as recited in claim 13 wherein if the file conflict exists: (g) determining if a particular one of a plurality of reconciliation handlers corresponding to one of a plurality of application programs having an application type associated with the associated set of files is available; and (h) if the particular reconciliation handler is available, recommending that the briefcase file and the synchronization file be merged.
Claim 25
Dependent Claim 51 words
A method of recommending a reconciling action for conflicting files in a computing device as recited in claim 16 wherein the availability of the reconciliation handler is determined by examining whether the application type of the associated file set is listed in a registry database as having the particular reconciliation handler.
Claim 26
Dependent Claim 59 words
A method of recommending a reconciling action for conflicting files in a computing device as recited in claim 16 wherein the merge request is passed to a reconciliation handler interface by calling the reconciliation handler and by providing the name, the time-stamps and the paths of the briefcase file and of the synchronized file to the reconciliation handler interface.
Claim 27
Dependent Claim 216 words
A computer-readable medium on which is stored a computer program for providing a method of associating files in a computing device having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, said computer program comprising instructions which, when executed by a computer, perform the steps of: (a) transferring a selected file; (b) determining if the transfer of the selected file was into a dedicated folder; and (c) if the transfer of the selected file was into the dedicated folder; (1) creating a briefcase file of the selected file, the briefcase file being a copy of the selected file and having a name and a time-stamp the same as the name and the time-stamp, respectively, of the selected file, and designating the selected file as a synchronized file; and (2) storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file into a dedicated synchronization database, wherein the last reconciliation time-stamp is equal to the time-stamp of the briefcase file, and wherein all files of the same name in the dedicated synchronization database are thereby associated to form an associated file set.
Claim 28
Dependent Claim 216 words
A computer-readable medium on which is stored a computer program for providing a method of associating files in a computing device having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, said computer program comprising instructions which, when executed by a computer, perform the steps of: (a) transferring a selected file; (b) determining if the transfer of the selected file was into a dedicated folder; and (c) if the transfer of the selected file was into the dedicated folder; (1) creating a briefcase file of the selected file, the briefcase file being a copy of the selected file and having a name and a time-stamp the same as the name and the time-stamp, respectively, of the selected file, and designating the selected file as a synchronized file; and (2) storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file into a dedicated synchronization database, wherein the last reconciliation time-stamp is equal to the time-stamp of the briefcase file, and wherein all files of the same name in the dedicated synchronization database are thereby associated to form an associated file set.
Claim 29
Dependent Claim 221 words
The computer-readable medium of claim 19, wherein said steps performed by said instructions further comprise the steps of: (d) determining if the transfer of the selected file was from the dedicated folder; and (e) if the transfer of the selected file was from the dedicated folder, determining if the dedicated folder is on a removable storage media; (1) if the dedicated folder is on removable storage media; (A) creating a synchronized file of the selected file, the synchronized file being a copy of the selected file having a name and a time-stamp the same as the name and the time-stamp, respectively, of the selected file, and designating the selected file as a briefcase file; (B) storing a last reconciliation time-stamp, the name and the paths of the briefcase file and of the synchronized file into a dedicated synchronization database, wherein the last reconciliation time-stamp is equal to the time-stamp of the synchronized file, and wherein all files of the same name in the dedicated synchronization database are thereby associated to form an associated file set; and (2) if the dedicated folder is not on a removable storage media; (A) moving the selected file to a drop location; and (B) deleting the name, the last reconciliation time-stamp and the paths of the briefcase and the selected file from the dedicated synchronization database.
Claim 30
Dependent Claim 16 words
The computer-readable medium of claim 19, wherein the file selection occurs through a graphical user interface.
Claim 31
Dependent Claim 191 words
A computer-readable medium on which is stored a computer program for providing a method of enabling the updating of files in a computer system having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, said computer program comprising instructions which, when executed by a computer, perform the steps of: (a) receiving information that a selected one of a plurality of computer applications, each having an application type, is associated with a corresponding reconciliation handler, (b) storing the application type of the selected computer application in a registry database, (c) storing call information of the corresponding reconciliation handler for the selected computer application in the registry database, (d) detecting a request to replace files of the application type for the selected computer application, (e) retrieving the call information of the corresponding reconciliation handler from the registry database, (f) calling the selected computer application to activate its corresponding reconciliation handler, and (g) providing the name, paths and time-stamps of the files to a reconciliation handler interface.
Claim 32
Dependent Claim 191 words
A computer-readable medium on which is stored a computer program for providing a method of enabling the updating of files in a computer system having an operating system, wherein each file in the computing device is identified by a name, characterized by a time-stamp denoting the last time the file was updated, and located on a storage device by a path, said computer program comprising instructions which, when executed by a computer, perform the steps of: (a) receiving information that a selected one of a plurality of computer applications, each having an application type, is associated with a corresponding reconciliation handler, (b) storing the application type of the selected computer application in a registry database, (c) storing call information of the corresponding reconciliation handler for the selected computer application in the registry database, (d) detecting a request to replace files of the application type for the selected computer application, (e) retrieving the call information of the corresponding reconciliation handler from the registry database, (f) calling the selected computer application to activate its corresponding reconciliation handler, and (g) providing the name, paths and time-stamps of the files to a reconciliation handler interface.
Claim 33
Dependent Claim 35 words
The computer-readable medium of claim 22, wherein said steps performed by said instructions further comprise the step of passing progress messages from the reconciliation handler to the operating system through the corresponding reconciliation handler interface.

References Cited (Backward Citations)

US5093787A Cited
US4831552A Cited
US4866611A Cited
US5564051A Cited
US5392390A Cited
US5666530A Cited
US5649200A Cited
US5581764A Cited
US5600834A Cited
US5560012A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-11-30 2002-06-01 2002-12-01 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-11-30 2006-06-01 2006-12-01 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-11-30 2010-06-01 2010-12-01 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag