Error checking web documents

Error checking for web documents may be provided. Text errors within a web page are identified by determining text to be error checked within content used in generating a web page and by determining where the text is located within the web page. The text is sent to an error checking module, and errors are displayed to a user.

BACKGROUND

Error checking web documents is a process for identifying and correcting text errors in a file used for displaying a web page. In some situations, when presenting text in a web page, an author may desire to identify and correct spelling, lexicographical and grammatical errors within the text prior to posting the web page for viewing by others. For example, an author may desire to correct spelling, lexicographical and grammatical errors within a Hypertext Markup Language (HTML) document during content creation for the web page. An inability to detect mistakes in text used in web pages may confuse or mislead web page viewers. It is with respect to these and other considerations that the present invention has been made.

SUMMARY

In accordance with one embodiment, a method is provided for identifying text errors within a web page by determining text to be error checked within content used in generating a web page and for determining where the text is located within the web page. The method also sends the text to an error checking module to determine whether errors exist, and displays the errors to a user which may be corrected or ignored by the user.

According to another embodiment, a system is provided for identifying text errors within a web page including memory storage and a processing unit coupled to the memory storage for determining editable text to be error checked within content used in generating a web page and removing text formatting from the editable text. The processing unit is also operative to send the editable text to an error checking module to determine whether errors exist, and to display the errors to a user which may be corrected or ignored by the user.

In accordance with yet another embodiment, a computer-readable medium is provided which stores a set of instructions which when executed performs a method for identifying text errors within a web page by determining text to be error checked within content used in generating a web page and sending the text to an error checking module. The computer-readable medium may be used to displays errors returned by the error checking module to a user which may be corrected or ignored by the user.

DETAILED DESCRIPTION

Error checking web documents may be provided. Consistent with embodiments of the present invention, a method and system for identifying and correcting errors in text utilized in creating web pages is disclosed.FIG. 1illustrates an exemplary environment100for a web author during web page development. In the exemplary environment100, the author may include various text blocks within a web page for viewing by others, for example text box102, frame information104and title106. In creating a web page, a web author may enter text within several editable fields, for example, text box102, for subsequent display on the web page. Often when creating or editing these editable fields, the web author may improperly spell a word or use incorrect grammar. Accordingly, for quality assurance purposes, the web author may desire to error check any editable fields associated with the web page. Error checking web documents identifies spelling, lexicographical and grammatical errors in the editable fields and provides suggested corrections to any identified errors for use by the author. Thus, the web author is presented with any errors returned by an error checker along with suggested corrections to the errors and given an opportunity to accept a suggested correction, enter a user-defined correction, or ignore the error.

An embodiment consistent with the invention may include a system for error checking web documents. The system may comprise a memory storage and a processing unit coupled to the memory storage. The processing unit may be operative to determine editable text to be error checked within content used in generating a web page and remove text formatting from the editable text. The processing unit is also operative to send the editable text to an error checking module to determine whether errors exist, and display the errors to a user which may be corrected or ignored by the user.

FIG. 2is a block diagram of a system including a computing device200. Consistent with an embodiment of the invention, the aforementioned memory storage and processing unit may be implemented in a computing device, such as computing device200ofFIG. 2. Any suitable combination of hardware, software, or firmware may be used to implement the memory storage and processing unit. For example, the memory storage and processing unit may be implemented with computing device200or any of the other computing devices218, in combination with computing device200. The aforementioned system, device, and processors are examples and other systems, devices, and processors may comprise the aforementioned memory storage and processing unit, consistent with embodiments of the invention. Furthermore, the computing device200may comprise an operating environment for an associated system. The system may operate in other environments and is not limited to computing device200.

With reference toFIG. 2, a system consistent with an embodiment of the invention may include a computing device, such as computing device200. In a basic configuration, computing device200may include at least one processing unit202and a system memory204. Depending on the configuration and type of computing device, system memory204may comprise, but is not limited to, volatile (e.g. random access memory (RAM)), non-volatile (e.g. read-only memory (ROM)), flash memory, or any combination. System memory204may include operating system205, one or more programming modules206, and may include a program data207. Operating system205, for example, may be suitable for controlling computing device200's operation. In one embodiment, programming modules206may include an error checking application for determining and addressing textual errors in content used for generating a web page. Programming modules206may further include an application program interface (API)224for allowing a user writing an application program to make requests of an operating system or another application, and a user program interface (UPI)222for transferring text, for example, packaged text which is schematized, from a client-side server (computing device200) to a web server (other computing devices218). Furthermore, embodiments of the invention may be practiced in conjunction with a graphics library, other operating systems, or any other application program and is not limited to any particular application or system. This basic configuration is illustrated inFIG. 2by those components within a dashed line208.

Computing device200may have additional features or functionality. For example, computing device200may also include additional data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Such additional storage is illustrated inFIG. 2by a removable storage209and a non-removable storage210. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. System memory204, removable storage209, and non-removable storage210are all computer storage media examples (i.e. memory storage.) Computer storage media may include, but is not limited to, RAM, ROM, electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store information and which can be accessed by computing device200. Any such computer storage media may be part of device200. Computing device200may also have input device(s)212such as a keyboard, a mouse, a pen, a sound input device, a touch input device, etc. Output device(s)214such as a display, speakers, a printer, etc. may also be included. The aforementioned devices are examples and others may be used.

As stated above, a number of program modules and data files may be stored in system memory204, including operating system205. While executing on processing unit202, programming modules206may perform processes including, for example, one or more method300's stages as described below. The aforementioned process is an example, and processing unit202may perform other processes. Other programming modules that may be used in accordance with embodiments of the present invention may include electronic mail and contacts applications, word processing applications, spreadsheet applications, database applications, slide presentation applications, drawing or computer-aided application programs, etc.

FIG. 3is a flow chart setting forth the general stages involved in a method300consistent with an embodiment of the invention for error checking web documents using system200ofFIG. 2. Ways to implement the stages of method300will be described in greater detail below. Method300may begin at starting block305and proceed to stage310where computing device200may be utilized to determine which text within a web document used in generating a web page should be error checked based on, for example, an assigned attribute which is associated with the text. Accordingly, computing device200may identify editable text within the web page upon a request by a web author to error check text within the web page. Each piece of editable text determined to be error checked may be assigned an identifier. Some subsequent processes may choose to refer to one or more specific text pieces by the assigned identifier. Once the editable text within the web page has been determined, the method300proceeds to stage315where computing device200may remove any text formatting, for example, italics, from the editable text. Next, at stage320, the computing device200may determine where the editable text is located within the web page. For example, a web page may include several text boxes having editable text in different locations, i.e., a web page title, web link names, frame text and text within a main section of the web page (seeFIG. 1).

Next, at stage325, the computing device200may combine any editable text pieces and assigned identifiers into a single package. The computing device200may utilize a schema, for example, an Extensible Markup Language (XML) schema, to combine the designated text into a single text package. In addition, the editable text may be separated from other editable text based on the location of the editable text within the web page using a separator, for example, a delimiter. The delimiter may be recognized as a separator by the computing device200and the other computing devices218. At stage330, the computing device200may send the single text package to the other computing devices218, for example, a web server, for error checking. The computing device200may utilize the API224to facilitate the initiation of error checking by the web server. Subsequently, at stage335, the web server may disassemble the package into discrete text pieces and associated assigned identifiers and determine spelling, lexicographical and grammatical errors. If the web server finds text considered to be erroneous, for example, misspelled text, the web server may determine suggested corrections for the misspelled text.

Upon completion of error checking by the web server, the method300proceeds to stage340where the web server may create a single response package to be sent to computing device200. The response package may contain the assigned identifiers of the text pieces in which errors were detected along with any suggested corrections. At stage345, the computing device200disassembles the single response package according to text properties prior to stage325. Accordingly, text errors and suggested corrections sent by the web server to the computing device200may be associated with a particular text box in which the text originally resided at stage320.

Next, at stage350, the computing device200may present the text errors to the web author using the UPI222, which is further discussed inFIG. 4. Accordingly, at stage355, the web author may review the text errors and suggested corrections of the text errors and may ignore the text error, accept a suggested correction to a text error or enter a user defined correction to the text error. At stage360, the web author may save text including any error corrections in computing device200. When the web author requests that the text be saved to the computing device200, the computing device200saves the file with error corrections. In addition, the computing device200re-applies any text formatting removed at stage315for viewing by the web author. However, images, links or HTML may not correctly save error corrected text merely by saving the file. Some fields in the web page may be composite fields which are constructed using multiple components. Accordingly, when error checking images, links and HTML, a field visible to a web author and a hidden field for use by the computing device200and other devices218are utilized. Computing device200saves and displays the field with error corrections including the field's original formatting in a format viewable by the web author and saves a redundant copy of text as a hidden field which is utilized by the computing device200and the other computing devices218. The computing device200associates the field in a viewable format with the hidden field using an attribute having, for example, a unique identification tag for the viewable field and a unique identification tag for the hidden field.

FIG. 4illustrates an exemplary UPI222for the computing device200, according to one embodiment. Text box402displays a portion of text selected for error checking by a web author when checking for errors in text that is utilized in creating web pages. Within the text box402, a potentially misspelled word may be brought to the attention of the web author by, for example, underlining the potentially misspelled word. Additional portions of text may be included in text box402to allow the user to determine a context for the potentially misspelled word. When the computing device200determines that a potentially misspelled word exists in text box402, the computing device200also displays the potentially misspelled word in text box404. The computing device200may provide one or more suggested corrections for the potentially misspelled word in text box406. However, if the web author determines that the suggested correction is not acceptable, the web author may enter his or her own correction to the potentially misspelled word in text box404.

When the computing device200displays the potentially misspelled word in text box402and text box404, the web author may skip the potentially misspelled word using an Ignore button408, and may also skip the same potentially misspelled word throughout the document using an Ignore All button410. In addition, if the web author enters a word in text box406to replace a misspelled word, the web author may replace a single error using a Change Once button412, or multiple errors of the misspelled word throughout the text using a Change All button414.

Consistent with embodiments of the present invention, the computing device200and the other computing devices218may be utilized for error checking editable text used for creating web content. The web page may utilize a variety of formats, for example, HTML, XML, Standard Generalized Markup Language (SGML) or the like. Consistent with embodiments of the present invention, the computing device200and the other computing devices218may provide a variety of error checking options, for example, page level error checking (error checking for an entire web page), error checking using a web storage system edit form, error checking HTML text within an HTML editor, or the like.

Consistent with embodiments of the present invention, error checking may be provided for a variety of text fields utilized in creating web content, for example, single line text fields, multiple line text fields, a content management server (CMS) HTML field, a CMS link field, a CMS image field, other 3rdparty fields, or the like. A field can identify client-side script functions to be used when getting or setting a field value. These associated functions may allow visible and hidden fields to be read or modified in a synchronized manner. In an exemplary embodiment, HTML attributes called GetContent and SetContent, each of which contain a name of a client function such as myFieldType_Get or myFieldType_Set, may be used when getting or setting the field value. Consistent with embodiments of the present invention, an error checking module may reside in the computing device200, a server connected to computing device200, or both the computing device200and server connected to computing device200.

Embodiments of the present invention, for example, are described above with reference to block diagrams and/or operational illustrations of methods, systems, and computer program products according to embodiments of the invention. The functions/acts noted in the blocks may occur out of the order as show in any flowchart. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/acts involved.