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

Method and system for background grammar checking an electronic document

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-11-14
•
Granted: 2000-01-04
•
Expires: 2016-11-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In an electronic word processing system environment, a system and method for verifying the accuracy of the grammatical composition of a sentence in the background. While the word processor is in edit mode, i.e., the user is entering data or commands, it is determined when there is an idle period. An idle period is when the user is not entering data or commands. During an idle period, a sentence is extracted from the electronic document. It is determined whether the sentence is of proper grammatical composition. If the sentence does not have proper grammatical composition, then an error indication is displayed to the user in the context of the electronic document. These tasks may be repeated for each sentence in the document until the entire document has been proofed or the idle period ends. When the user selects the error indication in the document, a pop-up menu is displayed beneath the sentence containing the error. The pop-up menu includes the top three suggestions for correcting the error, a command to ignore the error, and a tunnel to the foreground grammar checker dialog. The pop-up menu may also include a full sentence rewrite that replaces all of the errors in the sentence with the suggestion that will most likely correct each error.

Inventors

  • 👤 Ronald A. Fein
  • 👤 Anthony D. Krueger

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 08:05
CPC Classifications
G; G06; G06F; G06F40/00; G06F40/20; G06F40/253

Claims Analysis

Total Claims: 28
Claim 1
Independent Claim 95 words
In a word processing system operative to create a document, a grammar checking program comprising: a grammar pop-up menu comprising a plurality of suggestions to replace at least one grammatical error in the document, the grammar pop-up menu being displayed when an error indication is selected, the error indication being displayed in the document and indicative of a possible grammatical error in the document, the grammar pop-up menu further comprising a full-sentence rewrite option comprising an edited sentence that, when selected by the user, replaces each grammatical error with one of the plurality of suggestions.
Claim 2
Dependent Claim 95 words
In a word processing system operative to create a document, a grammar checking program comprising: a grammar pop-up menu comprising a plurality of suggestions to replace at least one grammatical error in the document, the grammar pop-up menu being displayed when an error indication is selected, the error indication being displayed in the document and indicative of a possible grammatical error in the document, the grammar pop-up menu further comprising a full-sentence rewrite option comprising an edited sentence that, when selected by the user, replaces each grammatical error with one of the plurality of suggestions.
Claim 3
Dependent Claim 23 words
The grammar checking program recited in claim 1, wherein the error indication is determined by grammar checking the document during an idle period.
Claim 4
Dependent Claim 158 words
The grammar checking program recited in claim 1, further operable for performing the steps of: (a) creating grammar flags in response to a user entering characters into the document, the grammar flags corresponding to the grammar status of character ranges in the document; (b) grammar checking the sentences during idle periods when the user is not entering commands; (c) updating the grammar flags in response to grammar checking the sentences, wherein the grammar flags comprise a plurality of edit flags and a plurality of dirty flags, further comprising the step of updating the grammar flags in response to editing of the document by: scanning the document for a first one of the edit flags; in response to finding the first edit flag, determining a beginning character position and an end character position of a first sentence that includes the characters that correspond to the first edit flag; and marking the first sentence with one of the dirty flags.
Claim 5
Dependent Claim 37 words
The grammar checking program recited in claim 3, further operable for performing the step of storing the grammar flags and character positions in a grammar data table to identify the character range associated with each grammar flag.
Claim 6
Dependent Claim 29 words
The grammar checking program recited in claim 4, wherein the grammar flags include a dirty flag to indicate that one of the character ranges needs to be grammar checked.
Claim 7
Dependent Claim 28 words
The grammar checking program recited in claim 5, wherein the grammar checking step comprises using the grammar flags to determine one of the character ranges to grammar check.
Claim 8
Dependent Claim 44 words
The grammar checking program recited in claim 6, wherein the step of using the grammar flags to determine one of the character ranges to grammar check comprises searching through the document for one of the character ranges that is associated with the dirty flag.
Claim 9
Dependent Claim 179 words
The grammar checking program recited in claim 1, further operable for performing the steps of: the steps of: (a) determining whether there is an idle period, the idle period comprising a time period between commands entered, characters typed and other events; (b) in response to detecting the idle period, determining a text run of the electronic document to grammar check, the text run comprising a portion of the electronic document; (c) determining whether there is a first dirty flag in the text run; (d) if there is a first dirty flag in the text run, then extracting a sentence corresponding to the first dirty flag from the electronic document; (e) grammar checking the extracted sentence; (f) determning whether the extracted sentence contains at least one grammatical error; (g) if the extracted sentence contains at least one grammatical error, then marking characters corresponding to the grammatical error with an error flag and presenting an error indication; and (h) if the sentence does not contain at least one grammatical error, then marking characters corresponding to the sentence with a clean flag.
Claim 10
Dependent Claim 51 words
The grammar checking program recited in claim 8, further operable for per forming the steps of: (i) determining whether the text run includes a second dirty flag; (j) if the text run contains a second dirty flag, then extracting a sentence corresponding to the second dirty flag and repeating steps (e)-(h).
Claim 11
Dependent Claim 150 words
The grammar checking program recited in claim 8, further operable for performing the steps of: (i) determining whether there is a first out-of-date error flag in the text run; (j) if there is a first out-of-date error flag in the text run, then extracting a sentence corresponding to the first out-of-date error flag from the document; (k) grammar checking the extracted sentence corresponding to the out-of-date error flag; (f) determining whether the extracted sentence corresponding to the out-of-date error flag contains at least one grammatical error; (g) if the extracted sentence corresponding to the out-of-date error flag contains at least one grammatical error, then marking characters corresponding to the grammatical error with an error flag and presenting an error indication; and (h) if the sentence corresponding to the out-of-date error flag does not contain at least one grammatical error, then marking characters corresponding to the sentence with a clean flag.
Claim 12
Dependent Claim 30 words
The grammar checking program recited in claim 8, wherein the sentence-extracting step comprises sentence-breaking to determine a beginning and an end of the sentence that corresponds to the dirty flag.
Claim 13
Dependent Claim 77 words
The grammar checking program recited in claim 8, wherein the sentence-extracting step comprises the steps of: calling a grammar checker program module; transferring a buffer of text to the grammar checker program module, the buffer of text comprising the sentence corresponding to the first dirty flag; and receiving sentence indices from the grammar checker program module, the sentence indices indicative of a beginning and an end of one of the sentence corresponding to the first dirty flag.
Claim 14
Dependent Claim 58 words
The grammar checking program recited in claim 8, wherein the step of grammar checking the extracted sentence comprises the steps of: calling a grammar checker program module; sending the extracted sentence to the grammar checker program module; verifying the accuracy of the grammatical composition of the extracted sentence; and receiving error information from the grammar checker program module.
Claim 15
Dependent Claim 95 words
A computer storage medium storing a computer-executable program operable for performing the steps of: displaying a grammar pop-up menu comprising a plurality of suggestions to replace at least one grammatical error in the document, the grammar pop-up menu being displayed when an error indication is selected, the error indication being displayed in the document and indicative of a possible grammatical error in the document, the grammar pop-up menu further comprising a full-sentence rewrite option comprising an edited sentence that, when selected by the user, replaces each grammatical error with one of the plurality of suggestions.
Claim 16
Dependent Claim 95 words
A computer storage medium storing a computer-executable program operable for performing the steps of: displaying a grammar pop-up menu comprising a plurality of suggestions to replace at least one grammatical error in the document, the grammar pop-up menu being displayed when an error indication is selected, the error indication being displayed in the document and indicative of a possible grammatical error in the document, the grammar pop-up menu further comprising a full-sentence rewrite option comprising an edited sentence that, when selected by the user, replaces each grammatical error with one of the plurality of suggestions.
Claim 17
Dependent Claim 23 words
The computer storage medium recited in claim 14, wherein the error indication is determined by grammar checking the document during an idle period.
Claim 18
Dependent Claim 163 words
The computer storage medium recited in claim 15, wherein the computer-executable program is further operable for performing the steps of: (a) creating grammar flags in response to a user entering characters into the document, the grammar flags corresponding to the grammar status of character ranges in the document; (b) grammar checking the sentences during idle periods when the user is not entering commands; (c) updating the grammar flags in response to grammar checking the sentences, wherein the grammar flags comprise a plurality of edit flags and a plurality of dirty flags, further comprising the step of updating the grammar flags in response to editing of the document by: scanning the document for a first one of the edit flags; in response to finding the first edit flag, determining a beginning character position and an end character position of a first sentence that includes the characters that correspond to the first edit flag; and marking the first sentence with one of the dirty flags.
Claim 19
Dependent Claim 42 words
The computer storage medium recited in claim 16, wherein the computer-executable program is further operable for performing the step of storing the grammar flags and character positions in a grammar data table to identify the character range associated with each grammar flag.
Claim 20
Dependent Claim 29 words
The computer storage medium recited in claim 17, wherein the grammar flags include a dirty flag to indicate that one of the character ranges needs to be grammar checked.
Claim 21
Dependent Claim 28 words
The computer storage medium redted in claim 18, wherein the grammar checking step comprises using the grammar flags to determine one of the character ranges to grammar check.
Claim 22
Dependent Claim 44 words
The computer storage medium recited in claim 19, wherein the step of using the grammar flags to determine one of the character ranges to grammar check comprises searching through the document for one of the character ranges that is associated with the dirty flag.
Claim 23
Dependent Claim 181 words
The computer storage medium recited in claim 14, wherein the computer-executable program is further operable for performing the steps of: (a) determining whether there is an idle period, the idle period comprising a time period between commands entered, characters typed and other events; (b) in response to detecting the idle period, determining a text run of the electronic document to grammar check, the text run comprising a portion of the electronic document; (c) determining whether there is a first dirty flag in the text run; (d) if there is a first dirty flag in the text run, then extracting a sentence corresponding to the first dirty flag from the electronic document; (e) grammar checking the extracted sentence; (f) determining whether the extracted sentence contains at least one grammatical error; (g) if the extracted sentence contains at least one grammatical error, then marking characters corresponding to the grammatical error with an error flag and presenting an error indication; and (h) if the sentence does not contain at least one grammatical error, then marking characters corresponding to the sentence with a clean flag.
Claim 24
Dependent Claim 55 words
The computer storage medium recited in claim 14, wherein the computer-executable program is further operable for performing the steps of: (i) determining whether the text run includes a second dirty flag; (j) if the text run contains a second dirty flag, then extracting a sentence corresponding to the second dirty flag and repeating steps (e)-(h).
Claim 25
Dependent Claim 155 words
The computer storage medium redted in claim 14, wherein the computer-executable program is further operable for performing the steps of: (i) determining whether there is a first out-of-date error flag in the text run; (j) if there is a first out-of-date error flag in the text run, then extracting a sentence corresponding to the first out-of-date error flag from the document; (k) grammar checking the extracted sentence corresponding to the out-of-date error flag; (f) determining whether the extracted sentence corresponding to the out-of-date error flag contains at least one grammatical error; (g) if the extracted sentence corresponding to the out-of-date error flag contains at least one grammatical error, then marking characters corresponding to the grammatical error with an error flag and presenting an error indication; and (h) if the sentence corresponding to the out-of-date error flag does not contain at least one grammatical error, then marking characters corresponding to the sentence with a clean flag.
Claim 26
Dependent Claim 30 words
The computer storage medium recited in claim 14, wherein the sentence-extracting step comprises sentence-breaking to determine a beginning and an end of the sentence that corresponds to the dirty flag.
Claim 27
Dependent Claim 77 words
The computer storage medium recited in claim 14, wherein the sentence-extracting step comprises the steps of: calling a grammar checker program module; transferring a buffer of text to the grammar checker program module, the buffer of text comprising the sentence corresponding to the first dirty flag; and receiving sentence indices from the grammar checker program module, the sentence indices indicative of a beginning and an end of one of the sentence corresponding to the first dirty flag.
Claim 28
Dependent Claim 58 words
The computer storage medium recited in claim 14, wherein the step of grammar checking the extracted sentence comprises the steps of: calling a grammar checker program module; sending the extracted sentence to the grammar checker program module; verifying the accuracy of the grammatical composition of the extracted sentence; and receiving error information from the grammar checker program module.

References Cited (Backward Citations)

US4994966A Cited
US5576955A Cited
US5694610A Cited
US5678053A Cited
US5857198A Cited
US5649222A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-01-03 2003-07-05 2004-01-04 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-01-03 2007-07-05 2008-01-04 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-01-03 2011-07-05 2012-01-04 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag