Fact correction and completion during document drafting

Information

  • Patent Grant
  • 9495341
  • Patent Number
    9,495,341
  • Date Filed
    Tuesday, December 18, 2012
    11 years ago
  • Date Issued
    Tuesday, November 15, 2016
    7 years ago
Abstract
A method for fact correction and completion during document drafting. The method includes receiving a first user input comprising text being added to an electronic document and initiating a fact correction mode. The fact correction mode includes parsing the text to identify a factual proposition and determining the accuracy of the factual proposition. If the factual proposition is inaccurate, the mode includes displaying a visual indication of the inaccuracy of the factual proposition; receiving a second user input comprising an indication selecting the inaccurate factual proposition; displaying a menu that includes a correction element wherein the correction element is based on an accurate factual proposition related to the inaccurate factual proposition; receiving a third user input comprising an indication selecting the correction element; and modifying the electronic document by replacing at least a portion of the inaccurate factual proposition with at least a portion of the accurate factual proposition.
Description
BACKGROUND

Electronic documents can include a variety of factual propositions. Each factual proposition can be associated with at least one entity, or object, of interest. Example entities include people, places, things, and events. Each factual proposition can also include at least one attribute, the attribute describing the type of factual proposition being made. Example attributes include a name of a person and the population of a place. Each factual proposition can also include at least one value, the value describing an attribute.


One example entity-based factual proposition, “Mahatma Gandhi was an Indian proponent of pacifism,” includes the attribute “name of a person” having the value “Mahatma Gandhi” as associated with the entity “Indian proponent of pacifism.” As another example, the factual proposition “San Antonio has a population of 1.4 million” includes the attribute “population of a place” having the value “1.4 million” as associated with the entity “San Antonio.” In addition to being entity-based, factual propositions can also be formulaic, e.g. scientific or mathematical equations.


When drafting electronic documents, the drafter, or author, of the electronic document can be unaware of a value that describes an attribute or a number or symbol that completes a formula in a factual proposition. The drafter can also make mistakes in drafting by including a value in the text entered into an electronic document that incorrectly describes an attribute in the factual proposition.


SUMMARY

The disclosure relates to correcting and completing facts entered during document drafting.


In one implementation, a computer-implemented method is disclosed. The method includes receiving, at a computing device, a first user input comprising text being added to an electronic document and initiating a fact correction mode. The fact correction mode includes parsing the text to identify a factual proposition and determining the accuracy of the factual proposition. If the factual proposition is inaccurate, the fact correction mode further includes outputting, for display, a visual indication of the inaccuracy of the factual proposition and receiving, at the computing device, a second user input comprising an indication selecting the inaccurate factual proposition. The fact correction mode further includes outputting, for display, a menu that includes a correction element wherein the correction element is based on an accurate factual proposition related to the inaccurate factual proposition, receiving, at the computing device, a third user input comprising an indication selecting the correction element, and modifying the electronic document by replacing at least a portion of the inaccurate factual proposition with at least a portion of the accurate factual proposition.


In another implementation, a computer-implemented method is disclosed. The method includes receiving, at a computing device, a first user input comprising text being added to an electronic document and initiating a fact completion mode. The fact completion mode includes parsing the text to identify an incomplete factual proposition and determining a missing portion for the incomplete factual proposition. The fact completion mode further includes outputting, for display, a visual indication of the incomplete factual proposition and receiving, at the computing device, a second user input comprising an indication selecting the incomplete factual proposition. The fact completion mode further includes outputting, for display, a menu that includes a completion element wherein the completion element is based on the missing portion of the incomplete factual proposition, receiving, at the computing device, a third user input comprising an indication selecting the completion element, and modifying the electronic document by adding text related to the missing portion to the incomplete factual proposition.


In another implementation, a computing device is disclosed including a display, an input device, one or more processors for controlling the operations of the computing device, and a memory for storing data and program instructions used by the one or more processors. The one or more processors are configured to execute instructions stored in the memory to receive a first user input comprising text being added to an electronic document and initiate a fact correction mode. The fact correction mode includes parsing the text to identify a factual proposition and determining the accuracy of the factual proposition. If the factual proposition is inaccurate, the fact correction mode further includes outputting, for display, a visual indication of the inaccuracy of the factual proposition and receiving, at the computing device, a second user input comprising an indication selecting the inaccurate factual proposition. The fact correction mode further includes outputting, for display, a menu that includes a correction element wherein the correction element is based on an accurate factual proposition related to the inaccurate factual proposition, receiving, at the computing device, a third user input comprising an indication selecting the correction element, and modifying the electronic document by replacing at least a portion of the inaccurate factual proposition with at least a portion of the accurate factual proposition.





BRIEF DESCRIPTION OF THE DRAWINGS

The description here makes reference to the accompanying drawings wherein like reference numerals refer to like parts throughout the several views, and where:



FIG. 1 is a block diagram showing an example of a computing device;



FIG. 2 shows an example user interface for correcting facts during document drafting;



FIG. 3 shows an example user interface for completing facts during document drafting;



FIG. 4 is a flow chart showing an example process for correcting facts during document drafting; and



FIG. 5 is a flow chart showing an example process for completing facts during document drafting.





DETAILED DESCRIPTION

In the fact correction and completion system and methods described here, an electronic document can be analyzed during the drafting stage to identify factual propositions using a fact correction mode or a fact completion mode. The fact correction mode allows a drafter of the electronic document to investigate the accuracy of factual propositions and replace inaccurate portions of factual propositions with accurate statements. The fact completion mode allows the drafter of the electronic document to identify the missing portions of incomplete factual propositions. The fact correction mode and fact completion mode can assist the drafter of the electronic document in verifying factual propositions, discovering other relevant factual propositions to include in the document, and improving overall document quality and comprehensiveness.



FIG. 1 is a block diagram of a computing device 100. The computing device 100 can be any type of handheld or desktop device in the form of a single computing device, for example, a smartphone, a laptop computer, a notebook computer, a desktop computer, a mobile telephone, a tablet, a PDA, and the like.


The CPU 102 in the computing device 100 can be a conventional central processing unit. Alternatively, the CPU 102 can be any other type of device, or multiple devices, capable of manipulating or processing information now-existing or hereafter developed. Although the disclosed embodiments can be practiced with a single processor as shown, e.g. CPU 102, advantages in speed and efficiency can be achieved using more than one processor.


The memory 104 in the computing device 100 can be a random access memory device (RAM). Any other suitable type of storage device can be used as the memory 104. The memory 104 can include code and data 106 that is accessed by the CPU 102 using a bus 108. The memory 104 can also include an operating system 110 and installed applications 112, the installed applications 112 including programs that permit the CPU 102 to perform the methods described here. For example, the installed applications 112 can include the fact correction and fact completion applications described in FIGS. 2-5. The computing device 100 can also include additional storage 114, which can, for example, be a memory card, external memory, a flash drive, or any other form of suitable computer readable medium. Because the installed applications 112, including the fact correction and fact completion applications, can contain a significant amount of information, they can be stored in whole or in part in the secondary storage 114 and loaded into the memory 104 as needed for processing.


The computing device 100 can include one or more output devices, such as display 116. The display 116 can be a liquid crystal display (LCD), a cathode-ray tube (CRT), or any other type of display that allows output to be presented to a user, for example, in response to receiving a video signal. The computing device 100 can also include an input 118, such as a keyboard, a mouse, a touch sensitive device, or a gesture sensitive input device that can receive user inputs and can output signals or data indicative of the user inputs to the CPU 102.


Although FIG. 1 depicts the CPU 102 and the memory 104 of the computing device 100 as being integrated into a single unit, other configurations can be utilized. The operations of the CPU 102 can be distributed across multiple machines (each machine having one or more of processors) which can be coupled directly or across a local area or other network. The memory 104 can be distributed across multiple machines such as network-based memory or memory in multiple machines performing the operations of computing device 100. Although depicted here as a single bus, the bus 108 of the computing device 100 can be composed of multiple buses. Further, the secondary storage 114 can be directly coupled to the other components of the computing device 100 or can be accessed via a network and can comprise a single integrated unit such as a memory card or multiple units such as multiple memory cards. The computing device 100 can thus be implemented in a wide variety of configurations.



FIG. 2 shows an example user interface 200 for correcting facts during document drafting. The user interface 200 can be output to the display 116 of the computing device 100 shown in FIG. 1. The electronic document being drafted in the FIG. 2 example is a description of baseball technology with the document title “Baseball Technology.” The body 202 of the electronic document includes text being added to the electronic document. In this example, the body 202 includes a portion of a paragraph detailing the size of a baseball.


The user interface 200 of FIG. 2 also includes features indicating that a fact correction mode has been initiated. The fact correction mode can be initiated automatically upon creation of the electronic document. The fact correction mode can also be initiated by selecting an indicator during document drafting or can occur automatically upon entry of a sufficient amount of text into the electronic document, for example, the entry of a complete sentence. After the fact correction mode is initiated, the text within the electronic document can be parsed to identify one or more factual propositions. In the example shown in FIG. 2, a factual proposition 204 is identified that includes the text “the ball has always been between nine and 9½ inches in circumference.” In this example, factual proposition 204 includes the entity “baseball,” attribute “circumference,” and value “between nine and 9½ inches.”


The fact correction mode can also include determining the accuracy of the factual proposition 204. The accuracy can be determined by comparing the factual proposition 204 to reference factual propositions from external sources, such as sources commonly found on the Internet. One or more attributes from the factual proposition 204 and a plurality of reference attributes from reference factual propositions can be derived using natural language processing and transformed to base forms. A similarity score can be determined by comparing the one or more base-form attributes to the plurality of reference base-form attributes.


If the similarity score is above a threshold value, one or more values associated with the one or more attributes of the factual proposition 204 can be compared to the plurality of reference values associated with the plurality of reference attributes of the reference factual propositions to identify differences. If one or more values of the factual proposition 204 differ from one or more reference values of the reference factual propositions, the factual proposition 204 can be flagged as inaccurate. The flag for inaccuracy can be a visual indication. Visual indicators can include coloring, highlighting, and underlining of text. In the example in FIG. 2, visual indicator 206 is an underline beneath factual proposition 204 “the ball has always been between nine and 9½ inches in circumference.” This visual indicator 206 highlights factual proposition 204 as inaccurate.


The fact correction mode can also include receiving a user input comprising an indication selecting the inaccurate factual proposition 204. For example, the drafter of the electronic document can use a mouse to click, or hover over, the inaccurate factual proposition 204. Once at least a portion of the inaccurate factual proposition has been selected, a menu 208 can be displayed to the drafter. The menu 208 can be displayed within, as a subset of, or external to the user interface 200. In the example of FIG. 2, the menu 208 is displayed on the right side of user interface 200 and overlaps the body 202 of the electronic document.


The menu 208 can include a correction element. The correction element can be based on an accurate factual proposition related to the inaccurate factual proposition 204. For example, the inaccurate factual proposition 204 can be used to structure one or more Internet search queries related to the text included in the inaccurate factual proposition 204. The results from the search queries can be the source of suggested text to correct the inaccurate factual proposition 204. In the example in FIG. 2, the correction element includes a “Change to” heading 210 and the suggested text “9 and 9¼ inches.”


The menu 208 can also include a cancel element. The cancel element can be selected to remove the menu 208 including the correction element and the cancel element from the display. For example, the cancel element can be an “Ignore” button 212. If the document drafter selects the “Ignore” button 212, the menu 208 can be removed from the user interface 200 or the fact correction mode can skip factual proposition 204 and process another factual proposition.


The menu 208 can also include a reference element. The reference element can include a portion or snippet of the accurate factual proposition used to provide the text within the correction element. In the example in FIG. 2, the reference element includes reference link 214 “From WebAnswer Example” and the text snippet 216 “By definition, a baseball is ‘9 to 9.25 inches or 22.85 to 23.495 centimeters in circumference.’” The drafter of the electronic document can select the reference link 214 within the reference element to be directed to the source of the information in the correction element.


The menu 208 can also include a research element. The research element can be selected to allow the drafter of the electronic document to investigate additional information related to the factual proposition 204. For example, the research element can be visually indicated using a research link 218 “More References” as shown in FIG. 2. If the drafter selects the research link 218, another user interface (not shown) can be presented allowing the drafter to view additional materials related to the factual proposition 204, or the menu 208 can be expanded to include snippets from at least some additional materials.


The fact correction mode can also include receiving a user input comprising an indication selecting the correction element. In the example in FIG. 2, the drafter, or author, can select the “Change” button 220. The electronic document can then be modified by replacing at least a portion of the inaccurate factual proposition 204 with at least a portion of the accurate factual proposition. For example, once the drafter selects the “Change” button 220 from within the correction element, the text “nine and 9½ inches” can be replaced with the text “9 and 9¼ inches.” If no additional factual propositions within the electronic document are flagged as inaccurate, the fact correction mode can end, and any changes made to the electronic document can be saved.



FIG. 3 shows an example user interface 300 for completing facts during document drafting. The user interface 300 can be output to the display 116 of the computing device 100 shown in FIG. 1. The electronic document being drafted in the FIG. 3 example is a report about the life of the Indian celebrity “Aishwarya Rai Bachchan.” The body 302 of the electronic document includes text being added to the electronic document. In this example, the body 302 includes a header and a single paragraph describing Ms. Bachchan's career.


The user interface 300 of FIG. 3 also includes features indicating that a fact completion mode has been initiated. The fact completion mode can be initiated automatically upon creation of the electronic document. The fact completion mode can also be initiated by selecting an indicator during document drafting, for example, by executing a keyboard shortcut, or can occur automatically upon entry of an unknown indicator, such as double-star indicator 304. For example, if the drafter of the electronic document about Ms. Bachchan enters the text “**” the fact completion mode can be initiated.


After the fact completion mode is initiated, the text within the electronic document can be parsed to identify an incomplete factual proposition. In the example shown in FIG. 3, an incomplete factual proposition can be identified that includes the person entity “Winner of Miss World Pageant” associated with the name attribute having a value “Aishwarya Rai” and the date attribute having a missing value, that is, a value represented by the double-star indicator 304.


The fact completion mode can also include determining the missing portion for the incomplete factual proposition. The missing portion can be determined by comparing the incomplete factual proposition to reference factual propositions from external sources, such as sources commonly found on the Internet. One or more attributes from the incomplete factual proposition and a plurality of reference attributes from the reference factual propositions can be derived using natural language processing and transformed to base forms. A similarity score can be determined by comparing the one or more base-form attributes to the plurality of reference base-form attributes.


If the similarity score is above a threshold value, the attributes and entities of the incomplete factual proposition can be compared to the plurality of reference attributes and reference entities of the reference factual propositions. If the entities and attributes of the incomplete factual proposition are similar to the reference entities and reference attributes of the reference factual propositions, the missing portion of the incomplete factual proposition can be identified as a reference value from at least one of the reference factual propositions.


For example, the incomplete factual proposition in FIG. 3 is that “Aishwarya Rai Bachchan” was the winner of the “Miss World pageant” in “**,” the “**” representing an unknown date. An Internet-based search query, a query against databases including literary and periodical content, or any other type of query can be run to identify sources that provide reference factual propositions related to the incomplete factual proposition. One or more sources could include the reference factual proposition that “Aishwarya Rai” won the “Miss World Beauty Pageant” in “1994.” The reference value, “1994,” can thus be identified as the missing portion of the incomplete factual proposition.


The fact completion mode can also include displaying a visual indication of the incomplete factual proposition. Some example visual indicators include coloring, highlighting, and underlining of text. In the example in FIG. 2, visual indicator 306 is an underline beneath double star indicator 204. This visual indicator 306 highlights the incomplete factual proposition as capable of being processed using the fact completion mode.


The fact completion mode can also include receiving a user input comprising an indication selecting the incomplete factual proposition. For example, the drafter of the electronic document can use a mouse to click, or hover over, the incomplete factual proposition, or just the double star indicator 304 portion of the incomplete factual proposition. Once at least a portion of the incomplete factual proposition has been selected, a menu 308 can be displayed to the drafter. The menu 308 can be displayed within, as a subset of, or external to the user interface 300. In the example of FIG. 3, the menu 308 is displayed on the far right side of user interface 300 and is adjacent to the body 302 of the electronic document.


The menu 308 can include a completion element. The completion element can be based on the missing portion of the incomplete factual proposition. In the example in FIG. 3, the completion element includes a “Change to” heading 310 and the suggested text “1994.” The menu 308 can also include a cancel element. The cancel element can be selected to remove the menu 308 including the completion element and the cancel element from the display. For example, the cancel element can be an “Ignore” button 312. If the document drafter selects the “Ignore” button 312, the menu 308 can be removed from the user interface 300 or the fact completion mode can skip the incomplete factual proposition related to double star indicator 204 and process another incomplete factual proposition.


The menu 308 can also include a reference element. The reference element can include a portion or snippet of the reference factual proposition used to provide the text within the completion element. In the example in FIG. 3, the reference element includes a plurality of pictures 314 of the actress “Aishwarya Rai Bachchan” and a textual overview of her background. The menu 308 can also include a research element. The research element can be selected to allow the drafter of the electronic document to investigate additional information related to the incomplete factual proposition. For example, the research element can be visually indicated using a research link 316 “More References” as shown in FIG. 3. If the drafter selects the research link 316, another user interface (not shown) can be presented allowing the drafter to view additional materials related to the incomplete factual proposition, or the menu 308 can be expanded to include snippets from at least some additional materials.


The fact completion mode can also include receiving a user input comprising an indication selecting the completion element. In the example in FIG. 3, the drafter, or author, can select the “Change” button 318. The electronic document can then be modified by replacing double-star indicator 304 with the text related to the missing portion of the incomplete factual proposition. For example, once the drafter selects the “Change” button 318 from within the correction element, the text “**” can be replaced with the text “1994.” If no additional factual propositions within the electronic document are determined to be incomplete, the fact completion mode can end, and any changes made to the electronic document can be saved.



FIG. 4 is a flow chart showing an example process 400 for correcting facts during document drafting. The process 400 can be performed using a computing device such as computing device 100 as shown in FIG. 1.


In stage 402, a first user input comprising text being added to an electronic document can be received at the computing device 100. The first user input can be generated using the input device 118, for example, a keyboard, touchscreen, or other device capable of use to generate text within an electronic document application. An example first user input is the text string “Since the game's beginnings, the ball has always been between nine and 9½ inches in circumference and five to 5¼ ounces (Honig 125)” as shown in FIG. 2.


In stage 404, a fact correction mode is initiated. The fact correction mode can be initiated automatically upon creation of the electronic document. The fact correction mode can also be initiated in response to a user input comprising an indication to initiate the fact correction mode. The indication to initiate the fact correction mode can be the drafter selecting an indicator during document drafting or can be triggered by entry of a sufficient amount of text into the electronic document, for example, the entry of a complete sentence. The steps included in the fact correction mode will be further detailed below.


The first step in the fact correction mode, stage 406 of process 400, includes parsing the text added to the electronic document to identify a factual proposition. As described above in the example shown in FIG. 2, the factual proposition 204 is identified that includes the entity “baseball,” attribute “circumference,” and value “between nine and 9½ inches.”


Stage 408 of process 400, the next step in the fact correction mode, includes determining the accuracy of the factual proposition. As described above in FIG. 2, the accuracy can be determined by comparing the factual proposition 204 to reference factual propositions from external sources, such as sources commonly found on the Internet. A similarity score can be determined based on the comparison, and if the similarity score is above a threshold value, one or more values in the factual proposition 204 can be compared to a plurality of reference values in reference factual propositions to identify differences between them.


At decision block 410 of process 400, if the factual proposition was determined to be accurate, the fact correction mode ends at stage 412. Alternatively, if the factual proposition was determined to be inaccurate, the fact correction mode further includes outputting, for display, a visual indication of the inaccuracy of the factual proposition at stage 414. As described above, the visual indicators can include coloring, highlighting, and underlining of text. In the example described above in FIG. 2, the visual indicator 206 is an underline beneath factual proposition 204 “the ball has always been between nine and 9½ inches in circumference.”


Stage 416 of process 400, the next step in the fact correction mode, includes receiving, at the computing device 100, a second user input selecting the inaccurate factual proposition that has been visually indicated within the electronic document. In the example shown in FIG. 2, the second user input can be the drafter of the electronic document selecting the terms “nine and 9½ inches” within the factual proposition 204. The drafter can select the term using a mouse click, hover over, or any other method of selection.


The next step in the fact correction mode, stage 418 of process 400, includes outputting, for display, a menu that includes a correction element based on an accurate factual proposition related to the inaccurate factual proposition. As described above in the example shown in FIG. 2, the inaccurate factual proposition 204 can be used to structure one or more Internet search queries related to the text included in the inaccurate factual proposition 204. The results from the search queries can be the source of suggested text to correct the inaccurate factual proposition 204. The correction element can include suggested text “9 and 9¼ inches” under the “Change to” heading 210.


Stage 420 of process 400, the next step in the fact correction mode, includes receiving, at the computing device 100, a third user input comprising an indication selecting the correction element. As described above in the example shown in FIG. 2, the drafter of the electronic document can select the “Change” button 220 to indicate the intent to replace at least a portion of the inaccurate factual proposition 204.


The final step in the fact correction mode, stage 422 of process 400, includes modifying the electronic document by replacing at least a portion of the inaccurate factual proposition with at least a portion of the accurate reference factual proposition. As described above in the example shown in FIG. 2, the drafter can select the “Change” button 220, and the fact correction mode will replace the text “nine and 9½ inches” with the text “9 and 9¼ inches.” The fact correction mode can also insert a citation, either optionally or automatically, into the electronic document based on the source of the correction element. If no additional factual propositions within the electronic document are found to be inaccurate, the fact correction mode can end, and any changes made to the electronic document can be saved. The modified version of the electronic document can be saved within the memory 104 or storage 114 of the computing device 100 or at any other location accessible to the computing device 100.


As described in FIG. 2, the fact correction mode can be also be ended after initiation without completing some, most, or all of the stages of the fact correction mode. Another way to end the fact correction mode is to receive, at the computing device 100, a fourth user input comprising an indication to end the fact correction mode. As described above in reference to FIG. 2, the indication to end the fact correction mode can be the selection of the “Ignore” button 212, causing the menu 208 to be removed from the user interface 200.



FIG. 5 is a flow chart showing an example process 500 for completing facts during document drafting. The process 500 can be performed using a computing device such as computing device 100 as shown in FIG. 1.


In stage 502, a first user input comprising text being added to an electronic document can be received at the computing device 100. The first user input can be generated using the input device 118, for example, a keyboard, touchscreen, or other device capable of use to generate text within an electronic document application. An example first user input is the text string “Aishwarya Rai Bachchan, born 1 Nov. 1973, is an Indian film actress” as shown in FIG. 3.


In stage 504, a fact completion mode is initiated. As described above in the example in FIG. 3, the fact completion mode can be initiated automatically upon creation of the electronic document. The fact completion mode can also be initiated by selecting an indicator during document drafting or can occur automatically upon entry of an unknown indicator, such as double-star indicator 304. The steps included in the fact completion mode will be further detailed below.


The first step in the fact completion mode, stage 506 of process 500, includes parsing the text added to the electronic document to identify an incomplete factual proposition. As described above in the example shown in FIG. 3, the incomplete factual proposition identified includes the person entity “Winner of Miss World Pageant” associated with the name attribute having a value “Aishwarya Rai” and the date attribute having a missing value represented by the double-star indicator 304.


Stage 508 of process 500, the next step in the fact completion mode, includes determining the missing portion for the incomplete factual proposition. The missing portion can be determined by comparing the incomplete factual proposition to reference factual propositions from external sources, such as sources commonly found on the Internet. A similarity score can be determined based on the comparison, and if the similarity score is above a threshold value, the missing portion of the incomplete factual proposition can be identified as a reference value from at least one of the reference factual propositions. As described above in the example shown in FIG. 3, an external source could include the reference factual proposition that “Aishwarya Rai” won the “Miss World Beauty Pageant” in “1994.” The reference value, “1994,” can thus be identified as the missing portion of the incomplete factual proposition.


The next step in the fact completion mode, stage 510, includes outputting, for display, a visual indication of the incomplete factual proposition. As described above, the visual indicators can include coloring, highlighting, and underlining of text. In the example described above in FIG. 3, the visual indicator 306 is an underline beneath the double-star indicator 304.


Stage 512 of process 500, the next step in the fact completion mode, includes receiving, at the computing device 100, a second user input selecting the incomplete factual proposition that has been visually indicated within the electronic document. In the example shown in FIG. 3, the second user input can be the drafter of the electronic document selecting the double-star indicator 304. The drafter can select the double-star indicator 304 using a mouse click, hover over, or any other method of selection.


The next step in the fact completion mode, stage 514 of process 500, includes outputting, for display, a menu that includes a completion element based the missing portion of the incomplete factual proposition. As described above in the example shown in FIG. 3, the menu 308 can be displayed on the far right side of user interface 300 and can be adjacent to the body 302 of the electronic document. The completion element can be based on one or more Internet search queries related to the text included in the incomplete factual proposition. In this example, the completion element can include suggested text “1994” under the “Change to” heading 310.


Stage 516 of process 500, the next step in the fact completion mode, includes receiving, at the computing device 100, a third user input comprising an indication selecting the completion element. As described above in the example shown in FIG. 3, the drafter of the electronic document can select the “Change” button 318 to indicate the intent complete the incomplete factual proposition.


The final step in the fact completion mode, stage 518 of process 500, includes modifying the electronic document by adding text related to the missing portion to the incomplete factual proposition. As described above in the example shown in FIG. 3, the drafter can select the “Change” button 318, and the fact completion mode will replace the double-star indicator 304 with the text “1994.” The fact completion mode can also insert a citation, either optionally or automatically, into the electronic document based on the source of the completion element. If no additional factual propositions within the electronic document are found to be incomplete, the fact completion mode can end, and any changes made to the electronic document can be saved. The modified version of the electronic document can be saved within the memory 104 or storage 114 of the computing device 100 or at any other location accessible to the computing device 100.


As described in FIG. 3, the fact completion mode can be also be ended after initiation without completing some, most, or all of the stages of the fact completion mode. Another way to end the fact completion mode is to receive, at the computing device 100, a fourth user input comprising an indication to end the fact completion mode. As described above in reference to FIG. 3, the indication to end the fact completion mode can be the selection of the “Ignore” button 312, causing the menu 308 to be removed from the user interface 300.


The computing device 100 (and the algorithms, methods, instructions etc. stored thereon and/or executed thereby) can be realized in hardware including, for example, intellectual property (IP) cores, application-specific integrated circuits (ASICs), programmable logic arrays, optical processors, programmable logic controllers, microcode, firmware, microcontrollers, servers, microprocessors, digital signal processors or any other suitable circuit. In the claims, the term “processor” should be understood as encompassing any the foregoing, either singly or in combination. The terms “signal” and “data” are used interchangeably. Further, portions of computing device 100 do not necessarily have to be implemented in the same manner.


In one embodiment, the computing device 100 can be implemented using general purpose computers/processors with a computer program that, when executed, carries out any of the respective methods, algorithms and/or instructions described herein. In addition or alternatively, for example, special purpose computers/processors can be utilized which can contain specialized hardware for carrying out any of the methods, algorithms, or instructions described herein.


Further, all or a portion of embodiments can take the form of a computer program product accessible from, for example, a non-transitory computer-usable or computer-readable medium. A non-transitory computer-usable or computer-readable medium can be any device that can, for example, tangibly contain, store, communicate, or transport the program for use by or in connection with any processor. The non-transitory medium can be, for example, an electronic device, magnetic device, optical device, electromagnetic device, or a semiconductor device. Other suitable mediums are also available.


While this disclosure includes what is presently considered to be the most practical and preferred embodiments, it is to be understood that the disclosure is not to be limited to the disclosed embodiments but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims, which scope is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures as is permitted under the law.

Claims
  • 1. A computer-implemented method, comprising: receiving, at a computing device, a first user input comprising text being added to an electronic document;after a predetermined amount of text has been added to the electronic document, initiating a fact correction mode comprising: identifying a factual proposition within the text added to the electronic document;identifying entities for the factual proposition, attributes associated with the entities, and values associated with the attributes;determining a similarity score by comparing the attributes to reference attributes from a source external to the electronic document, wherein the reference attributes are associated with the entities identified in the factual proposition, andwherein reference values are associated with the reference attributes;if the similarity score is above a threshold value, comparing the values to the reference values to identify whether the factual proposition is inaccurate; andif the factual proposition is inaccurate, outputting, for display, a visual indication of the inaccurate factual proposition.
  • 2. The method of claim 1 wherein the fact correction mode further comprises: if the factual proposition is accurate, ending the fact correction mode.
  • 3. The method of claim 1 further comprising: receiving, at the computing device, a second user input comprising an indication selecting the visual indication associated with the inaccurate factual proposition;in response to the second user input, outputting, for display, a menu comprising a correction element and a cancel element, wherein the correction element is based on an accurate factual proposition related to the inaccurate factual proposition, and wherein the cancel element, when selected, rejects the correction element;receiving, at the computing device, a third user input comprising one of an indication selecting the correction element and an indication selecting the cancel element; andin response to the third user input, modifying the electronic document, resulting in a corrected version of the electronic document, by replacing at least a portion of the inaccurate factual proposition with at least a portion of the accurate factual proposition if the third user input is an indication selecting the correction element and by removing the menu from the display without replacing any portion of the inaccurate factual proposition if the third user input is an indication selecting the cancel element.
  • 4. The method of claim 3 wherein the menu further includes a research element and wherein the fact correction mode further includes: receiving, at the computing device, a fourth user input comprising an indication selecting the research element.
  • 5. The method of claim 1 wherein the visual indication of the inaccurate factual proposition is one of text coloring, text highlighting, or text underlining.
  • 6. A computing device, comprising: a display;an input device;one or more processors for controlling the operations of the computing device; anda memory for storing data and program instructions used by the one or more processors, wherein the one or more processors are configured to execute instructions stored in the memory to: receive a first user input comprising text being added to an electronic document;after a predetermined amount of text has been added to the electronic document, initiate a fact correction mode comprising: identifying a factual proposition within the text added to the electronic document;identifying entities for the factual proposition, attributes associated with the entities, and values associated with the attributes;determining a similarity score by comparing the attributes to reference attributes from a source external to the electronic document, wherein the reference attributes are associated with the entities identified in the factual proposition, andwherein reference values are associated with the reference attributes;if the similarity score is above a threshold value, comparing the values to the reference values to identify whether the factual proposition is inaccurate; andif the factual proposition is inaccurate, outputting, for display, a visual indication of the inaccurate factual proposition.
  • 7. The fact correction mode of claim 6 further comprising: receiving, at the computing device, a second user input comprising an indication selecting the visual indication associated with the inaccurate factual proposition;in response to the second user input, outputting, for display, a menu that includes a correction element and a cancel element, wherein the correction element is based on an accurate factual proposition related to the inaccurate factual proposition, and wherein the cancel element, when selected, rejects the correction element;receiving, at the computing device, a third user input comprising one of an indication selecting the correction element and an indication selecting the cancel element; andin response to the third user input, modifying the electronic document by replacing at least a portion of the inaccurate factual proposition with at least a portion of the accurate factual proposition if the third user input is an indication selecting the correction element and by removing the menu from the display without replacing any portion of the inaccurate factual proposition if the third user input is an indication selecting the cancel element.
  • 8. The computing device of claim 7 wherein the fact correction mode further includes: receiving, at the computing device, a fourth user input comprising an indication to end the fact correction mode.
  • 9. The method of claim 8 further comprising: saving the corrected version of the electronic document.
  • 10. The computing device of claim 6 wherein the one or more processors are configured to initiate the fact correction mode in response to a user input comprising an indication to initiate the fact correction mode.
  • 11. A computer-implemented method, comprising: receiving, at a computing device, a first user input comprising text being added to an electronic document;in response to the text added to the electronic document including a user-generated indicator for a missing portion of an incomplete factual proposition, initiating a fact completion mode that includes: identifying the incomplete factual proposition within the text added to the electronic document;identifying entities for the incomplete factual proposition and attributes associated with the entities;determining a similarity score by comparing the entities to reference entities and the attributes to reference attributes from a source external to the electronic document, wherein reference values are associated with the reference attributes;if the similarity score is above a threshold value, identifying one of the reference values as the missing portion of the incomplete factual proposition; andoutputting, for display, a visual indication of the identified reference value.
  • 12. The method of claim 11 further comprising: receiving, at the computing device, a second user input comprising an indication selecting the visual indication associated with the incomplete factual proposition;in response to the second user input, outputting, for display, a menu that includes a completion element from the matched reference values and a cancel element, wherein the completion element is based on the missing portion of the incomplete factual proposition, and wherein the cancel element, when selected, rejects the completion element;receiving, at the computing device, a third user input comprising one of an indication selecting the completion element and an indication selecting the cancel element; andin response to the third user input, modifying the electronic document, resulting in a corrected version of the electronic document, by adding text related to the missing portion to the incomplete factual proposition if the third user input is an indication selecting the completion element and by removing the menu from the display without adding any text related to the missing portion of the incomplete factual proposition if the third user input is an indication selecting the cancel element.
  • 13. The method of claim 12 wherein the menu further includes a research element and wherein the fact correction mode further includes: receiving, at the computing device, a fourth user input comprising an indication selecting the research element.
  • 14. The method of claim 12 further comprising: saving the corrected version of the electronic document.
  • 15. The method of claim 11 wherein identifying the incomplete factual proposition includes displaying a visual indication of the incomplete factual proposition using one of text coloring, text highlighting, or text underlining.
US Referenced Citations (207)
Number Name Date Kind
5448695 Douglas et al. Sep 1995 A
5600778 Swanson et al. Feb 1997 A
5613163 Marron et al. Mar 1997 A
5721849 Amro Feb 1998 A
5790127 Anderson et al. Aug 1998 A
5821928 Melkus et al. Oct 1998 A
5826015 Schmidt Oct 1998 A
5845300 Comer et al. Dec 1998 A
5859640 de Judicibus Jan 1999 A
5877763 Berry et al. Mar 1999 A
5883626 Glaser et al. Mar 1999 A
5905991 Reynolds May 1999 A
6005575 Colleran et al. Dec 1999 A
6018341 Berry et al. Jan 2000 A
6301573 McIlwaine et al. Oct 2001 B1
6377965 Hachamovitch et al. Apr 2002 B1
6421678 Smiga et al. Jul 2002 B2
6463078 Engstrom et al. Oct 2002 B1
6546393 Khan Apr 2003 B1
6564213 Ortega et al. May 2003 B1
6647383 August et al. Nov 2003 B1
6654038 Gajewska et al. Nov 2003 B1
6751604 Barney et al. Jun 2004 B2
6789251 Johnson Sep 2004 B1
6820075 Shanahan et al. Nov 2004 B2
6865714 Liu et al. Mar 2005 B1
6889337 Yee May 2005 B1
6907447 Cooperman et al. Jun 2005 B1
6980977 Hoshi et al. Dec 2005 B2
7003506 Fisk et al. Feb 2006 B1
7003737 Chiu et al. Feb 2006 B2
7031963 Bae Apr 2006 B1
7051277 Kephart et al. May 2006 B2
7073129 Robarts et al. Jul 2006 B1
7103835 Yankovich et al. Sep 2006 B1
7127674 Carroll et al. Oct 2006 B1
7146422 Marlatt et al. Dec 2006 B1
7295995 York et al. Nov 2007 B1
7353397 Herbach Apr 2008 B1
7380218 Rundell May 2008 B2
7392249 Harris et al. Jun 2008 B1
7395507 Robarts et al. Jul 2008 B2
7406659 Klein et al. Jul 2008 B2
7451389 Huynh et al. Nov 2008 B2
7480715 Barker et al. Jan 2009 B1
7487145 Gibbs et al. Feb 2009 B1
7499919 Meyerzon et al. Mar 2009 B2
7499940 Gibbs Mar 2009 B1
7647312 Dai Jan 2010 B2
7664786 Oh et al. Feb 2010 B2
7685144 Katragadda Mar 2010 B1
7685516 Fischer Mar 2010 B2
7734627 Tong Jun 2010 B1
7756935 Gaucas Jul 2010 B2
7761788 McKnight et al. Jul 2010 B1
7769579 Zhao et al. Aug 2010 B2
7774328 Hogue et al. Aug 2010 B2
7779355 Erol et al. Aug 2010 B1
7783965 Dowd et al. Aug 2010 B1
7818678 Massand Oct 2010 B2
7836044 Kamvar et al. Nov 2010 B2
7917848 Harmon et al. Mar 2011 B2
8020003 Fischer Sep 2011 B2
8020112 Ozzie et al. Sep 2011 B2
8027974 Gibbs Sep 2011 B2
8086960 Gopalakrishna et al. Dec 2011 B1
8091020 Kuppusamy et al. Jan 2012 B2
8117535 Beyer et al. Feb 2012 B2
8185448 Myslinski May 2012 B1
8224802 Hogue Jul 2012 B2
8229795 Myslinski Jul 2012 B1
8239751 Rochelle et al. Aug 2012 B1
8260785 Hogue et al. Sep 2012 B2
8261192 Djabarov Sep 2012 B2
8346620 King et al. Jan 2013 B2
8359550 Meyer et al. Jan 2013 B2
8370275 Bhattacharya et al. Feb 2013 B2
8386914 Baluja et al. Feb 2013 B2
8434134 Khosrowshahi Apr 2013 B2
8453066 Ozzie et al. May 2013 B2
8458046 Myslinski Jun 2013 B2
8572388 Boemker et al. Oct 2013 B2
8595174 Gao et al. Nov 2013 B2
8621222 Das Dec 2013 B1
8667394 Spencer Mar 2014 B1
8799765 MacInnis et al. Aug 2014 B1
8856640 Barr et al. Oct 2014 B1
8856645 Vandervort et al. Oct 2014 B2
20010025287 Okabe et al. Sep 2001 A1
20020010725 Mo Jan 2002 A1
20020029337 Sudia et al. Mar 2002 A1
20020035714 Kikuchi et al. Mar 2002 A1
20020069223 Goodisman et al. Jun 2002 A1
20020070977 Morcos et al. Jun 2002 A1
20020103914 Dutta et al. Aug 2002 A1
20020129100 Dutta et al. Sep 2002 A1
20020152255 Smith, Jr. et al. Oct 2002 A1
20020161839 Colasurdo et al. Oct 2002 A1
20020187815 Deeds et al. Dec 2002 A1
20030058286 Dando Mar 2003 A1
20030156130 James et al. Aug 2003 A1
20030172353 Cragun Sep 2003 A1
20030200192 Bell et al. Oct 2003 A1
20030234822 Spisak Dec 2003 A1
20040061716 Cheung et al. Apr 2004 A1
20040062213 Koss Apr 2004 A1
20040122846 Chess et al. Jun 2004 A1
20040139465 Matthews, III et al. Jul 2004 A1
20040140901 Marsh Jul 2004 A1
20040145607 Alderson Jul 2004 A1
20040153973 Horwitz Aug 2004 A1
20040164991 Rose Aug 2004 A1
20050024487 Chen Feb 2005 A1
20050028081 Arcuri et al. Feb 2005 A1
20050034060 Kotler et al. Feb 2005 A1
20050039191 Hewson et al. Feb 2005 A1
20050044132 Campbell et al. Feb 2005 A1
20050044369 Anantharaman Feb 2005 A1
20050055416 Heikes et al. Mar 2005 A1
20050120308 Gibson et al. Jun 2005 A1
20050144573 Moody et al. Jun 2005 A1
20050160065 Seeman Jul 2005 A1
20050183001 Carter et al. Aug 2005 A1
20050183006 Rivers-Moore Aug 2005 A1
20050198589 Heikes et al. Sep 2005 A1
20050210256 Meier et al. Sep 2005 A1
20050246653 Gibson et al. Nov 2005 A1
20060005142 Karstens Jan 2006 A1
20060010865 Walker Jan 2006 A1
20060041836 Gordon et al. Feb 2006 A1
20060047682 Black et al. Mar 2006 A1
20060136552 Krane Jun 2006 A1
20060150087 Cronenberger et al. Jul 2006 A1
20060190435 Heidloff et al. Aug 2006 A1
20060248070 Dejean et al. Nov 2006 A1
20070005697 Yuan et al. Jan 2007 A1
20070033200 Gillespie Feb 2007 A1
20070143317 Hogue et al. Jun 2007 A1
20070150800 Betz et al. Jun 2007 A1
20070156761 Smith Jul 2007 A1
20070162907 Herlocker Jul 2007 A1
20070168355 Dozier et al. Jul 2007 A1
20070220259 Pavlicic Sep 2007 A1
20070244782 Chimento Oct 2007 A1
20070291297 Harmon et al. Dec 2007 A1
20080028284 Chen Jan 2008 A1
20080034213 Boemker et al. Feb 2008 A1
20080077571 Harris Mar 2008 A1
20080082907 Sorotokin et al. Apr 2008 A1
20080172608 Patrawala et al. Jul 2008 A1
20080239413 Vuong et al. Oct 2008 A1
20080320397 Do et al. Dec 2008 A1
20090013244 Cudich et al. Jan 2009 A1
20090037474 Faulkner Feb 2009 A1
20090044143 Karstens Feb 2009 A1
20090044146 Patel et al. Feb 2009 A1
20090094178 Aoki Apr 2009 A1
20090132560 Vignet May 2009 A1
20090192845 Gudipaty et al. Jul 2009 A1
20090204818 Shin et al. Aug 2009 A1
20090282144 Sherrets et al. Nov 2009 A1
20100070881 Hanson et al. Mar 2010 A1
20100076946 Barker et al. Mar 2010 A1
20100100743 Ali et al. Apr 2010 A1
20100131523 Yu et al. May 2010 A1
20100191744 Meyerzon et al. Jul 2010 A1
20100223541 Clee et al. Sep 2010 A1
20100251086 Haumont et al. Sep 2010 A1
20100268700 Wissner et al. Oct 2010 A1
20100269035 Meyer et al. Oct 2010 A1
20100275109 Morrill Oct 2010 A1
20100281353 Rubin Nov 2010 A1
20110023022 Harper et al. Jan 2011 A1
20110043652 King et al. Feb 2011 A1
20110060584 Ferrucci et al. Mar 2011 A1
20110072338 Caldwell Mar 2011 A1
20110087973 Martin et al. Apr 2011 A1
20110126093 Ozzie et al. May 2011 A1
20110173210 Ahn et al. Jul 2011 A1
20110179378 Wheeler Jul 2011 A1
20110191276 Cafarella et al. Aug 2011 A1
20110219291 Lisa Sep 2011 A1
20110225482 Chan et al. Sep 2011 A1
20110225490 Meunier Sep 2011 A1
20110276538 Knapp et al. Nov 2011 A1
20110282890 Griffith Nov 2011 A1
20120078826 Ferrucci et al. Mar 2012 A1
20120084644 Robert et al. Apr 2012 A1
20120116812 Boone et al. May 2012 A1
20120124053 Ritchford et al. May 2012 A1
20120166924 Larson et al. Jun 2012 A1
20120203734 Spivack et al. Aug 2012 A1
20120226646 Donoho et al. Sep 2012 A1
20120254730 Sunderland et al. Oct 2012 A1
20120284602 Seed et al. Nov 2012 A1
20120304046 Neill et al. Nov 2012 A1
20120317046 Myslinski Dec 2012 A1
20130036344 Ahmed et al. Feb 2013 A1
20130041685 Yegnanarayanan Feb 2013 A1
20130212090 Sperling Aug 2013 A1
20130246346 Khosrowshahi et al. Sep 2013 A1
20130268830 Khosrowshahi et al. Oct 2013 A1
20130325881 Deshpande Dec 2013 A1
20140013197 McAfee et al. Jan 2014 A1
20140032913 Tenenboym et al. Jan 2014 A1
20140040249 Ploesser et al. Feb 2014 A1
20140236958 Vaughn Aug 2014 A1
Foreign Referenced Citations (1)
Number Date Country
WO2012057726 May 2012 WO
Non-Patent Literature Citations (24)
Entry
Herb Tyson, Microsoft Word 2010 Bible, John Wiley & Sons, pp. 221, 757, 833.
Ashman. “Electronic Document Addressing: Dealing with Change.” ACM Computing Surveys, vol. 32, No. 3, Sep. 2000, pp. 201-212.
ISR and Written Opinion of the International Searching Authority in PCT Application No. PCT/US2011/037862, dated Oct. 31, 2011, 64 pages.
Electronic Signatures and Infrastructures ESI; PDF Advanced Electronic Signature Profiles; Part 4: PAdES Long Ter PAdES-LTV Profile, ETSI TS 102 778-4, V1.1.1, Jul. 2009, 19 pages.
Fox. “Maps API Blog: Creating Dynamic Client-side Maps Mashups with Google Spreadsheets.” Mar. 2007, [retrieved on Dec. 5, 2011] Retrieved from the Internet: <URL:http://googlemapsapi.blogspot.com/2007/03/creating-dynamic-client-side-maps.html>. 2 pages.
GeekRant.org' [online]. “How to Embed a Word Document in Another Word Document,” Sep. 14, 2005, [retrieved on Dec. 5, 2011]. Retrieved from the Internet: <URL:http://www.geekrant.org/2005/09/14/word-embed-document/>. 6 pages.
Herrick. “Google this Using Google Apps for Collaboration and Productivity.” Proceedings of the ACM Siguccs Fall Conference on User Services Conference, Siguccs '09, Jan. 2009, p. 55.
https://en.wikipedia.org/wiki/Backus%E2/80%93Naur—Form, as of Jul. 14, 2013.
https://en.wikipedia.org/wiki/Regular—expression, as of Sep. 2, 2013.
Kappe. “Hyper-G: A Distributed Hypermedia System.” Proceedings of the International Networking Conference, 1993, [retrieved on Oct. 20, 2011]. Retrieved from the Internet: <URL:http://ftp.iicm.tugraz.at/pub/papers/inet93.pdf>. 9 pages.
Kircher. “Lazy Acquisition.” Proceedings of the 6th European Conference on Pattern Languages of Programs, Jul. 2011, pp. 1-11.
Microsoft Support' [online]. “How to Embed and Automate Office Documents with Visual Basic,” Mar. 27, 2007, [retrieved on Dec. 5, 2011]. Retrieved from the Internet: <URLhttp://support.microsoft.com/kb/242243>. 6 pages.
Microsoft Support' [online]. “OLE Concepts and Requirements Overview,” Oct. 27, 1999, [retrieved on Dec. 2, 2011]. Retrieved from the Internet: <URL:http://support.microsoft.com/kb/86008>. 3 pages.
Oracle Provider for OLE DB—Developer's Guide. 10g Release 1 (10.1) Dec. 2003, Oracle Corp., 90 pages.
Pinkas et al. “CMS Advanced Electrponic Signatures,” Request for Comments 5126, Feb. 2008, 142 pages.
WebArchive' [online]. “Supplementary Notes for MFC Programming Module 23 and Module 27: Interfaces, COM.COM + and OLE” in: http://www.tenouk.com/visualcplusmfc/mfcsupp/ole.html, Jan. 6, 2008, [retrieved on Dec. 5, 2011]. Retrieved from the Internet: <URL:http://web.archive.org/web/20091125073542/http://www.tenouk.com/visualcplusmfc/mfcsupp/ole.html>. 4 pages.
“Bohman, P. ““Introduction to Web Accessibility””, Oct. 2003, ebAIM, printed Apr. 17, 2004,<http://www.webaim.org/intro/?templatetype=3> (p. 1-6)”.
“Caldwell et al., ““Web Content Accessibility Guidelines 2.0, W3C Working Draft Mar. 11, 2004””, Mar. 11, 2004, WorldWide Web Consortium (p. 1-56)”.
Francik, E., Computer-& screen-based interfaces: Universal design filter, Human Factors Engineering, Pacific Bell Version 2, Jun. 6, 1996.
Griesser, A., “A generic editor Full text,” pp. 50-55, 1997 ACM Press NewYork, NY, USA.
Jacobs, Ian, et al., “User Agent Accessibility Guidelines 1.0, W3C Recommendation Dec. 17, 2002”, World Wide Web Consortium, 115 pages.
Treviranus, Jutta, et al., “Authoring Tool Accessibility Guidelines 1.0, W3C Recommendation Feb. 3, 2000”, World Wide Web Consortium (p. 1-22).
David Sawyer McFarland, “CSS the missing manual”, O'Reilly, Aug. 2009, pp. 7-101, 134-138, 428-429.
Timestamp from Wikipedia, accessed from https://en.wikipedialcorg/wiki/Timestamp, archived by WaybackMachine on Sep. 15, 2012, pp. 1-2.