CA2380393A1 - System and method for creating validation rules used to confirm input data - Google Patents

System and method for creating validation rules used to confirm input data Download PDF

Info

Publication number
CA2380393A1
CA2380393A1 CA002380393A CA2380393A CA2380393A1 CA 2380393 A1 CA2380393 A1 CA 2380393A1 CA 002380393 A CA002380393 A CA 002380393A CA 2380393 A CA2380393 A CA 2380393A CA 2380393 A1 CA2380393 A1 CA 2380393A1
Authority
CA
Canada
Prior art keywords
rule
validation
field
user
validation rule
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
CA002380393A
Other languages
French (fr)
Inventor
Michael Shane Brown
Joo-Hyung Lee
Randolph D. Roesler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MDSI Software Srl
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Publication of CA2380393A1 publication Critical patent/CA2380393A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/917Text
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Abstract

A graphical user interface is provided for creating a set of validation rules. A form is represented in a tree structure with nodes rep-resenting fields to be filled out in the form. Rules are added to the fields using a dialog box and are represented as subnodes of fields. Expressions are added to the rules as subnodes of the rules through a menu. The com-pleted tree structure is translated into a set of validation rules.

Description

SYSTEM AND METHOD FOR CREATING VALIDATION RULES
USED TO CONFIRM INPUT DATA
Field of the Invention The present invention generally relates to a system and method for validating data collected by application software, and more particularly to a graphical user interface for creating validation rules which corm the validity of data collected by application sofrware used in mobile workforce management.
Backeround of the Invention In many industries which employ a large mobile workforce, such as utilities, taxi companies, and large equipment repair services, the efficiency with which mobile workers can be scheduled and dispatched to customers can have a great impact on customer satisfaction as well as on a service provider's bottom line. From the customer satisfaction standpoint, it is not uncommon for a customer to call a cable television company, or other service provider, to request service only to be told to choose a four-hour service window on good days, or an "alt day" service window on bad days. Even when the customer is "lucky" enough to request service on a "good" day, the worker dispatched by the service provider typically will arrive well after the window has closed, or the customer will have waited, and wasted, most of the day for what should typically only be a half hour service call. This situation arises from an inability of the service provider to accurately predict when a particular SUBSTITUTE SHEET (RULE 26) worker will complete a given task and how long it will take for the worker to reach the next service location.
From the financial standpoint, ine~cient scheduling and dispatching results in fewer service calls being performed each day, potentially resulting in lower earnings per worker-hour, as well as possible additional expenditures required for hiring and training additional workers. To improve scheduling and dispatching, many service providers have implemented a documentation process for collecting information pertinent to a service request. Each business typically has its own unique set of paper service forms, each having a number of relevant fields in which the worker inputs data as the service job is being performed. As with the collection of any kind of information, certain types, formats, and/or ranges of information are expected for certain fields. For instance, a field for "arrival time" must be completed with a time of day, and would be expected to fall during or near normal work hours.
When workers complete the paper forms, the worker must remember certain rules or guidelines for filling out the fields. If the rules are followed properly, the forms are correctly filled out and the service provider is given accurate information with which to analyze its business, e.g., modify schedules, dispatch additional workers, etc.
Often, however, the worker makes mistakes when filling out the forms which are only discovered after the worker returns to a business site (e.g., a dispatch office) at the end of the day, turns in the forms for the day's service requests, and the forms are reviewed. By the time the errors are discovered, many hours or even days may have passed, making it difficult to correct the errors and perhaps invalidating any scheduling or dispatching adjustments previously made based on the incorrect information.
More recently, computerized systems have been developed which have replaced the paper forms with electronically stored and implemented forms.
Typically, in such systems, a centralized server computer including all business logic and having access to the necessary databases communicates via a wireless or other type network with a mobile client computer carried by a worker. Both paper forms and their electronic equivalents have fields for entering data desired for a particular service task, as well as a heading labeling each field and perhaps some instructional information. The mobile computer includes application sofrware, such as a mobile pen application (MPA), which electronically implements the service forms of a particular service provider to allow the worker to enter various data concerning each service job. The MPA for electronically implementing a particular form includes SUBSTITUTE SHEET (RULE 26) fields for entering data, the heading for each field of the form and any instructional information. Data entered into the fields is sent back to the centralized server computer where the worker's schedule may be updated, if necessary, based on such factors as whether a job took more or less time than anticipated, or whether an emergency service must be scheduled for a worker who is geographically near the emergency service site. The mobile computer typically also includes Global Positioning System (GPS) capabilities to allow the central computer to precisely track the geographic location of the worker.
In order to ensure the validity of the data entered by the worker, some or all of the fields will have an associated validation rule. A validation rule is simply a logical sequence of operators and operands for performing one or more tests or comparisons on data in one or more fields to make sure the data is valid. The MPA
implements a particular form using a set of validation rules to ensure correct entry of data. The validation rules are loaded into the MPA, and validation rules associated with fields in the rules file are associated with the corresponding field names in the MPA. The validation rules test the contents of each field entered by the user to ensure that the field is filled out correctly, either after the worker enters data into a the field, or after the form is transmitted back to a centralized server computer.
Either way, errors are caught before the worker leaves the service site.
Due to each service provider having its own unique set of service forms, each service provider must undergo a lengthy, ine~cient process for determining the validation rules appropriate for each form and for the MPA in which the forms are implemented. Typically, this has meant that an MPA analyst, an engineer or project manager, will go to the service provider's business site, and work with the employees of the service provider to specify, for each field of a form any rules, which may include rules of thumb, that a worker follows when filling out the fields. The MPA
developer, a programmer who writes code for implementing the validation rules, then takes the specified rules and creates a set of validation rules in MPA-compatible code which is saved as a rules file for the form. This validation rule creation process can take several weeks and require many hours from the MPA developer and from the employees of the service provider.
Consequently, what is needed is a user-friendly, computer-based system and method for quickly and easily creating sets of validation rules to thereby shorten the validation rules creation process. The system and method should be independent of the type or nature of both the form being validated as well as the particular MPA
SUBSTITUTE SHEET (RULE 26) ..4_ being implemented. As explained in the following, the present invention provides a method and apparatus that meets these criteria and solves other problems in the prior art.
Summary of the Invention The present invention is a user-friendly, computer-based system and method for quickly and easily creating sets of validation rules for forms. A
graphical user interface (GUI) is provided which may be used at a business site by the service provider's employees to develop sets of validation rules using a natural language.
The GUI of the present invention displays a representation of a form as a tree structure, with the root node representing the name of the form, and the leaf nodes for representing fields of the form. The user begins by selecting a form template, which is a template for creating and completing a set of validation rules for fields for a form. A form template is a text file including the name of the form and the names of the used fields for the form. The names in the form template are used by the GUI to display the tree representation. The number of field names is used to determine the number of leaf nodes for the tree. The system of the present invention loads in a selected form template, reads the first text string in the form template and displays it as the root node of the tree to represent the form name. Subsequent strings in the form template are read in and displayed as leaf nodes to represent field names.
Sets of validation rules are created for a form interactively, by selecting fields, adding appropriate validation rules to be implemented for the fields, and adding appropriate expressions for the validation rules. Validation rules are displayed as subnodes of fields, and expressions as subnodes of the validation rules.
One or more validation rules may be defined for each field, and one or more expressions may be defined for each validation rule. An expression is a logical sequence of operands and operators, implementing a single test or comparison, which can be evaluated as TRUE or FALSE. A validation rule, then, is a logical sequence of operands and operators, implementing one or more tests, one for each expression, which can be evaluated as TRUE or FALSE. If the validation rule evaluates as TRUE, then the data entered into the field is considered valid. If the validation rule evaluates as FALSE, on the other hand, then a data entry error is considered to have occurred, and a user-defined error message is displayed to the worker who entered the invalid data. Depending on a definition in the validation rule, the worker may be allowed to ;:ansmit the data anyway, such as when the validation rule is SUBSTITUTE SHEET (RULE 26) implementing a rule of thumb rather than a strict rule, or may force the worker to correct the entered data.
The GUI of the present invention uses a menu interface which presents, in plain English, a user with the choices that are likely to be needed to develop validation rules. The user selects from the displayed tree structure, the fields for which validation rules are to be added, then selects expressions from a menu.
The menu presents the expressions as expression templates, which are templates for creating and completing an expression. The expression template includes the test or comparison operator for the expression and indicates the type of operand or operands that must be added to complete the expression. Thus, the user interface of the present invention allows a user to create a validation rule by selecting a template and fill in the blanks.
Where multiple expressions are defined for a rule, the user interface provides a join operation to allow a user to quickly select how the expressions should be evaluated (e.g., conjunctively (AND) or disjunctively (OR)) and place parentheses around groups of expressions to define an evaluation order where three or more expressions are defined.
While a tree structure is described herein, those skilled in the art will recognize that other graphical representations may be implemented without departing from the spirit of the invention.
Brief Description of the DraWInQS
The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same becomes better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
FIGURE 1 is a block diagram of an exemplary computing environment including a mobile computer and a server computer in which the present invention is implemented;
FIGURE 2 is a schematic block diagram of the several components of the server computer shown in FIGURE 1 that are used to implement a validation rules program formed in accordance with the present invention to automatically create a set of validation rules for confirming data input by a user of the mobile computer;
FIGURE 3 is a schematic block diagram of the several components of the mobile computer shown in FIGURE 1 that are used to implement the set of validation rules created by the validation rules program;
SUBSTITUTE SHEET (RULE 26) FIGURE 4 is a flow chart illustrating the logic used by the validation rules program to create a set of validation rules;
FIGURES SA and SB are flowcharts illustrating the logic used to create a particular validation rule; and FIGURES 6-17 are various windows produced by the validation rules program for creating a set of validation rules as desired by the user.
_Detailed Description of the Preferred Embodiment FIGURE 1 illustrates a typical computing environment in which the present invention is implemented. A personal computer 10 is provided and is used to create a set of validation rules for validating data entries made to service provider forms in accordance with the present invention. More specifically, the personal computer 10 shown in FIGURE 1 is installed with a validation rules program 15 (see FIGURE 2,9~, which enables a user to create a set of form validation rules as described in more detail below. Once created, the validation rules are translated to a rules file 16 (see FIGURE 2) and communicated via a wireless network 20 to a mobile computer 30 for use in validating the data entries made by a mobile worker to an associated form.
It will be appreciated that FIGURE 1 illustrates only one example of a suitable computing environment in which the invention may be implemented.
Although not required, the validation program 15 will generally be implemented by the computer 10 as computer-executable instructions, such as program modules.
Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the validation program 15 may be practiced with other computer system configurations, multiprocessor systems, minicomputers, server computers, and mainframe computers. The validation program 15 may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
FIGURE 2 depicts several of the key components of the computer 10. It will be appreciated by those of ordinary skill in the art that the computer 10 includes many more components than those shcv.~n in FIGURE 2. However, a disclosure of an actual embodiment for practicing the present invention does not require that all of SUBSTITUTE SHEET (RULE 26) _7_ these generally conventional components be shown. The computer 10 includes a processing unit 1 I coupled to a system memory 12, an external interface 13, a user input device 17, and a display 14. The system memory 12 comprises a read-only memory, a random-access memory and a permanent storage device, such as a hard disk drive, tape drive, optical drive, floppy disk drive, or combination thereof and stores program 15 of the present invention as well as rules file 16. The rules file 16 stores the validation rules created by the validation program 15 in text format for ultimate transfer to the mobile computer via the external interface 13.
In one embodiment of the present invention, the external interface 13 comprises a wireless modem which establishes a wireless communication link with the mobile computer 30. In yet other embodiments, in which the personal -computer 10 , and mobile computer 30 are connected via a "wired" infra or internetwork, the external interface 13 comprises a network interface card specifically constructed for use with the appropriate network communication I 5 protocols, network configurations (bus, token ring, etc.) and coupling media required for the network. Finally, in yet other embodiments of the present invention, the external interface 13 may comprise serial input and output ports for connecting directly to the mobile computer 30.
Finally, the personal computer includes a user input device 17, which may comprise a keyboard, touchscreen, mouse, light pen, digitizing pad, scanner, or other such device as is well-known in the art, which is operated by the user to control the validation rules program 15.
As noted above, in a present embodiment of the invention illustrated in FIGURE 1, the personal computer 10 communicates with the mobile computer 30 via a wireless network 20. However, it will be appreciated that the personal computer 10 may be connected to the mobile computer 30 via any type of communication link without departing from the spirit and scope of the present invention, e.g., a "wired" intranetwork or intemetwork, a remote telephone/modem connection, a direct port-to-port connection, etc., as long as the personal computer 10 and mobile computer 30 are equipped with the necessary and appropriate external interfaces as mentioned above. With respect to the mobile computer 30, it will include an antenna 40 and transceiver (not shown) for transmitting and receiving radio signals to and from the personal computer 10 if communication is made via the wireless network 20.
SUBSTITUTE SHEET (RULE 26) _g_ In addition to the components mentioned above, the mobile computer 30 includes a number of other key components necessary for implementing the present invention as shown in FIGURE 3. It will be appreciated by those of ordinary skill in the art that the mobile computer 30 includes many more components than those shown in FIGURE 3. However, a disclosure of an actual embodiment for practicing the present invention does not require that all of these generally conventional components be shown. Like the personal computer 10, the mobile computer 30 includes a processing unit 31, a system memory 32, an external interface 33, a user input device 36, and a display 34. The system memory 32 comprises a conventional disk, floppy disk drive, read-only memory and random-access memory. The system memory 32 stores the mobile pen application (MPA) 35 which executes the rules file 16 created by the validation rules program 15 and communicated to the mobile computer 30 by the personal computer 10.
Now that the components of the personal computer 10 and mobile 1 S computer 30 have been described, the validation rules program 15 will be discussed in further detail. The validation rules program 15 of the present invention generates an easy-to-use graphical user interface (GUI) to allow a service provider employee to quickly create a set of validation rules for a form, without assistance from an MPA
developer. To do this, the validation rules program I S represents and displays a form and its fields as a tree structure. The tree structure for a particular form is generated from a user-selected form template which is a file containing the form name and the names for the used fields for the form. The form name is displayed as the root node of the tree, and the names of the fields are displayed as leaf nodes. The GUI
of the validation rules program includes a menuing interface for adding validation rules to fields, and for selecting expressions for implementing tests in validation rules.
Commonly-used expressions are predefined as expression templates in the validation rules program 15, and are presented in a menu for quick selection by the user.
An expression template includes an operator and blanks for the user to fill out for the one or more operands. The various expression templates are described in plain English, or another natural language.
FIGURE 4 illustrates the logic used by the validation rules program 15 to enable the user to create a set of validation rules for a particular form to be executed by a mobile pen application (MPA) on the mobile computer 30. The validation rules program 15 begins in a block 100 and proceeds to a block 110 i~ which the user selects a particular form for which the user wishes to create validation rules. As SUBSTITUTE SHEET (RULE 26) shown in more detail in FIGURE 6, the validation rules program 15 generates a create validation rules window 400 on the display 14 of the personal computer upon start-up. When the user selects a new rule file option 410 from the create validation rules window 400, the validation rules program 15 displays a listbox 420 containing the names of a number of forms available for validation rule creation. A
listbox is simply a display box having names of items which may be chosen listed therein. A user may also type in new items which will be included in the list.
Listboxes and menus, as well as their implementations are well-known in the art and will not be discussed herein, as a detailed description is not necessary for an understanding of the present invention.
While the listbox 420 will typically include the names of a number of pre-defined forms to choose from, those skilled in the art will readily appreciate that forms (and thus, their associated form templates) may be added to the listbox 420 and system memory 12 at any time and may be selected in any manner. In a typical setting, where a service provider already has a set of paper forms, a form template may be created for a paper form by creating a text file and typing in the name of the form, as well as names for fields of the form. In this manner, a service provider's paper forms may very quickly be converted into form templates. Those skilled in the art will appreciate that other methods of creating form templates may be employed without departing from the spirit of the invention.
Returning to FIGURE 4, once the user selects the desired form from the form listbox 420 (by highlighting and selecting the desired form name with the user input device 17), the form template associated with the selected form is retrieved from system memory 12 of the computer 10 and displayed in a block 120 as a tree structure 430 in the create validation rules window 400 as shown in FIGURE 7.
As noted above, the form template is a file containing the form name and the names of commonly-used fields of the form. The validation rules program 15 of the present invention reads in the first line of the form template, which holds the form name, and displays it as the root node 435 of the tree structure 430. Each of the subsequent lines of the form template, i.e., each of the field names of the form, are read in and displayed as leaf nodes 440 of the tree structure 430. It will be appreciated that tree structure 430 may be stored in system memory 12 as a list, a table, or any other well-known data structure without departing from the spirit of the invention.
Returning to FIGURE 4, after the tree structure 430 representing the fo~n template associated with the selected form is displayed; the validation rules SUBSTITUTE SNEET (RULE 26) program 15 proceeds to a block 130 in which it enables the user to create at least one rule for the selected form. The routine for creating these rules is described in more detail below in conjunction with FIGURES SA and SB. Once the validation rules for the chosen form have been completed in block 130, the validation rules program proceeds to a decision block 140 where the user determines if the set of validation rules is complete, i.e., whether the user wishes to create any more rules. It should be noted at this point that not all fields require validation rules. For instance, a form may include a fields for notes, in which a worker may enter any kind of information, or nothing at all.
If, at block 140, it is determined that the set of validation rules is complete, the user selects the Close option from the File menu and the validation rules are translated into a text format in rules file 16, and the validation rules program terminates in a block 160. It will be appreciated that in some embodiments of the present invention, the rules file 16 is automatically transferred to the mobile computer 30 via the wireless network 20. In yet other embodiments, however, the rules file 16 is transferred only upon request or at a predetermined time.
If, at block 140, the user wishes to create more validation rules, the validation rules program repeats block 130 until a complete set of validation rules has been created. In other words, the rules creation routine shown in FIGURES SA and SB
is repeated until the form is complete.
Referring to FIGURE SA, the rules creation routine begins in block 200 and proceeds to a block 210 in which the user selects a field from the tree structure 430 displayed in the create validation rules window 400 for which a new validation rule is to be added. Referring to FIGURE 8, when the user selects a field, such as fieldl name, a menu 450 is displayed to allow the user to either add a new rule to be applied to the selected field, or delete all rules applied to the selected field. It should be noted that it is not required for each field to have a validation rule. If a field is left empty it means there will be no validation executed on that field. If the user selects the add new rule option, the validation rules program 15 generates a new rule dialog box 900 on the display 14 of the personal computer 10 as shown in FIGURE 9.
The new rule dialog box 900 enables the user to define basic parameters of a validation rule and includes a form name field 910, a field name field 920, an error message field 930, a validation level field 940, and an override field 950 for defining these basic parameters. In an embodiment of the present invention, the form name and field name fields default to the names of the user-selected form and field, but may be SUBSTITUTE SHEET (RULE 26) implemented to allow selection or entry of other forms and/or fields without departing from the spirit and scope of the present invention.
The error message field 930 allows the user to enter an error message to be displayed to a mobile worker when improper data has been entered into the field in the associated form according to the validation rule to be subsequently defined by the user. In other words, if the validation rule for this field evaluates to FALSE, the error message is displayed. In one actual example shown in FIGURE 9, "entry error in fieldl" is the chosen error message. In one actual embodiment of the present invention, the error message field 930 is implemented as a listbox. Each time a new error message is entered by the user, it is added to a list of error messages displayed in the listbox for selection. Consequently, the next time that error message is used, the user may simply choose the error message from the listbox, rather than retype it in the error message field 930.
In addition to the error message field, the new rule dialog box 900 includes a validation level field 940, which is used to indicate where the validation rule is to be executed, i.e., either at a "form level" or a "field level." If the validation rule is to be executed when the worker moves off of the field such as by entering data into another field, the user selects the field level option. However, if the user does not wish for the validation rule to be executed until the form being filled out by the mobile worker has been completed and sent back to the computer 10, the user selects the form level option. In the example shown in FIGURE 9, the field level option is shown selected.
Finally, the user has the option of selecting the override field 950. If the override field 950 is checked indicating an "Allow Override" mode, the worker is allowed to transmit the form even if the data entered into the selected field failed the associated validation rule. In such cases, the MPA implementing the form will simply display the error message specified in the error message field 930 and allow the user to transmit the form back to the computer 10 anyway. If the override field 950 is left unchecked, as depicted in FIGURE 9, the MPA will not allow the user to transmit the form until the error is resolved, i.e., until the associated validation rule is satisfied. Allowing an override is useful where the validation rule is implementing a rule of thumb rather than a strict rule. The displaying of an error message prompts the worker to double-check the data. If the data is correct, even if it is atypical data, the worker is allowed to override the validation rule and transmit the data anyway.
SUBSTITUTE SHEET (RULE 26) Returning to FIGURE SA, once all desired entries have been made in the new rule dialog box 900, the tree structure 430 in the create validation rules window 400 is updated in a block 220. As shown in more detail in FIGURE 10, the tree structure 430 is updated to reflect the error message, validation level, and override mode of the new rule to be defined below the field selected for the rule. More specifically, first and second rule nodes 460 and 470 are shown as subnodes of the node for the user-selected field, fieldl name. The first rule node 460 displays the text "ON FIELD COMPLETE VALIDATE THAT" to reflect that field level was chosen as the validation level in new rule dialog box 900. The text "OTHERWISE
REPORT ("entry error in fieldl", NO OVERRIDE)" in the second rule node 470 depicts the user-entered error message and the user-selected override mode, in this case that an override was not allowed. In a present embodiment of the invention, the first and second rule nodes 460 and 470 form the beginning and end of a validation rule for a field, respectively. Expressions for the validation rule will be added between the first and second rule nodes 460 and 470.
Returning to FIGURE SA, after the basic parameters of the new validation rule, i.e., the error message, validation level and override mode, have been entered and added to the tree structure 430, the validation rules program 15 enables the user to add one or more expressions to the validation rule in a block 230. As will be described in more detail below, the data entered by the mobile worker in the corresponding field of the form associated with the present tree structure 430 will be compared against the expressions added to the rule to determine if the data input in the corresponding field is valid.
To add an expression, the user selects a rule node 460 from the tree structure 430 displayed in the create validation rules window 400 to which an expression is to be added. This may be done in a manner similar to that in which a field node is selected to add a rule. As shown in more detail in FIGURE 11, when the user selects rule node 460, an action menu 480 is generated on the display 14 by the validation rules program 15, to allow the user to specify a join type (by which multiple expressions are logically joined) and a parenthesis function (by which the order in which multiple expressions to be evaluated is defined). Join types and parenthesis functions will be described in more detail below, after addition of multiple expressions has been discussed. To add an expression to the new validation rule, the user selects an add expression option from the action menu 480 to bring up an add expression menu 490. In one actual embodiment of the present invention, the SUBSTITUTE SHEET (RULE 26) add expression menu 490 includes commonly-used expressions which are implemented as expression templates in the add expression menu 490. As noted above, expressions are the tests to be performed on data entered in one or more corresponding fields of the associate form filled out by the mobile worker using the mobile computer 30. One or more expressions, in addition to the error message, validation level and override mode, are used to make up a validation rule. An expression template includes the operator for an expression and indicates the types of operand or operands and their relationship to the operator, such that the user may simply select a expression template and fill in the associated operands) to complete an expression. In a present embodiment of the invention, two types of expression templates are implemented: ( 1 ) conditional templates; and (2) comparison templates.
Conditional templates are in the form of IFrfHEN/ELSE statements. Comparison templates, on the other hand, compare data entered into a field with a predefined value or condition, or with data in another field. Those skilled in the art will readily appreciate that other types of expressions could be implemented without departing from the spirit and scope of the present invention.
Three conditional templates 495 are provided in the add expression menu 490. The three conditional templates 495 are in the form of IF/THEN/ELSE
statements, with the first being the generic:
IF <condition> THEN <expressionl> ELSE <expression2>
where <condition> is evaluated to determine whether <expressionl> or <expression2> should be returned as the result of the expression.
<expressionl> is returned if the conditional expression, <condition>, evaluates to TRUE, and <expression2> is returned if <condition> evaluates to FALSE. The <condition>, <expressionl> and <expression2> operands are the blanks to be filled out by the user, and may be any such operands which may be required for a particular service provider's form. For instance, a service provider operating in a city bordering State A and State B may have a form which calculates a total cost including sales tax.
If State A has an 8.6% sales tax, and State B has no sales tax, in the exemplary IF/THEN/ELSE expression, <condition> could be STATE = A, <expressionl>
could then be SALES TAX = 8.6%, and <expression2> would be SALES TAX =
0%. Thus, the completed rule would be IF STATE = A THEN SALES TAX = 8.6%
ELSE SALES TAX = 0%.
The remaining two conditional templates are for implementing two additional common specific instances of the IF/THEN/ELSE statement. More specifically, SUBSTITUTE SHEET (RULE 26) IF <condition > THEN <expressionl> ELSE TRUE
causes <expressionl> to be returned as the result of the expression if <condition> is satisfied, i.e., evaluates to TRUE. Otherwise, the conditional expression returns the value TRUE.
The third specific IF~I'HEN/ELSE conditional expression is IF <condition > THEN <expressionl> ELSE FALSE
which also causes <expressionl> to be returned if <condition> is evaluated as TRUE. If <condition> is evaluated as FALSE, however, then the conditional expression returns the value FALSE.
As noted above, in addition to the three conditional templates 495, the add expressions menu 490 also includes nine comparison templates 485, which include the following:
A Field Has Data comparison template 481 is used to test whether a field contains data. Consequently, if the associated field contains data, a TRUE is returned. A FALSE is returned otherwise. Conversely, in another embodiment of the present invention, this template is implemented as a Field Has No Data comparison template. Accordingly, if the field is empty, a TRUE is returned. A
FALSE is returned otherwise.
A Form Was Transmitted comparison template 482 is used to test whether the form associated with the current set of validation rules has been transmitted by the mobile worker from the mobile computer 30 to the personal computer 10. If so, the expression returns the value TRUE. A FALSE is returned otherwise.
A Field = (List) comparison template 483 is used to test the contents of a field against one or more predefined literal values, which may be any numeric values or alphanumeric strings. Those skilled in the art will readily appreciate that where only a single literal is included in (List), the Field=Literal expression, discussed below, may be used instead. In one embodiment of the invention, the user selects this comparison expression template as well as a comparison operator. The comparison operators which are shown below in Table l, are selected from comparison listbox 610 as shown in FIGURE 16. However, it will be appreciated that the default comparison operator as shown in FIGURE 11 is the "_"
comparison operator.
SUBSTITUTE SHEET (RULE 26) Table 1 Operator Comparison Function Non-case sensitive test for equality - Case-sensitive test for equality i = Non-case sensitive test for inequality Case-sensitive test for inequality < Less than > Greater than < = Less than or equal to > = Greater than or equal to After a comparison operator is chosen from listbox 610, the user enters one or more new literal values into the (List) against which the data of the field will be compared via a listbox 580 as shown in FIGURE 16. Those skilled in the art will readily appreciate that there are numerous ways to implement the (List) into which a user may enter values such as in a table, and a straight list among others.
Additionally, with a listbox, the user may select previously entered items from the listbox to enter into the (List) for comparison. When evaluating a Field =
(List) expression, the value in the field is tested against each value in the list individually.
For example, if the "_" or "_ ="comparison operators are used, and the field is equal to any one of the values in the list, then the entire expression evaluates to TRUE, and if the "~ _" or "~ _ _" comparison operators are used, then the field cannot be equal to any value in the list or the entire expression will evaluate to FALSE.
A Field = Literal comparison template 484 is used to compare the contents of the associated field to a single numeric value or alphanumeric string predefined by the user. If the data in the field equals the literal value, a TRUE is returned. A
FALSE is returned otherwise.
A CheclcDateFormat comparison template 486 is used to validate the format of a date format field, i.e., a field for holding a date. If the format of the date in the field does not conform to the value in the date format field, FALSE is returned. This expression is used to standardize the way in which workers enter dates. A
typical default format is MM/DD/YY for representing the month, day, and year, respectively, using two digits each. Any other date format may be implemented without departing from the spirit and scope of the present invention.
SUBSTITUTE SHEET (RULE 26) A Field = Field comparison template 487 is used to compare the contents of two fields. The second field of the expression may be selected by double-ciicking on the second field from the tree, or by other well-known methods known in the art, e.g., by typing in the name of the second field, or by selecting from a listbox holding all available field names.
A Field = Format comparison template 488 is used to validate the format of the data entered in the associated field. Formats may be specified using special format characters such as those shown in Table 2 to require data to be of a particular type. The escape character "\" is used to ignore the data type for the immediately following character. For example, "\X##" checks for any two digit number following an "X" i.e., "X00" to "X99".
Table 2 CharacterExpected Data # (0-9) A (a-~ A-Z) X (a-z, A-Z, 0-9) * Any printable character Escape character A Field = Table comparison template 489 is used to test whether the data I 5 entered in the field is a member of a table. The function of this expression is similar to that of the Field = (List) comparison template except that the user does not enter values upon selecting the template. Rather, the values have been predefined in a table, and the user simply selects the proper table holding comparison values from a listbox 590 displayed by the validation rules program 15 as shown in FIGURE
17. In a present embodiment of the invention, the comparison values may be constrained to come from one or more specific rows or columns of the table, which may be selected from a listbox 600 as also shown in FIGURE 17. In a present embodiment of the invention, the table 620 may be displayed to aid the user in making a column or row selection. FIGURE 17, discussed in greater detail below, depicts an example where the Field = Table is selected as an expression for a validation rule and where values are to come from a column.
Finally, ~ Expr = Expr comparison template 501 serves as a catch-all template. If a service provider desires to implement a form requiring an expression SUBSTITUTE SHEET (RULE 26) which cannot be created with any of the other templates, the Expr = Expr template is used. This facility is used to create, for example, arithmetic expressions that are evaluated to a result that the field is compared to.
Those skilled in the art will readily appreciate that the comparison operators shown in Table 1 are applicable to each of the templates in the form of "Field = " as well as to the Expr = Expr template. Those skilled in the art will further recognize that not all comparison operators will be applicable to all expression templates at all times. For instance, only the equality and inequality comparisons are meaningful for a Field = Format expression, so the greater than and less than comparisons would not be made available to the corresponding Field = Format template. Further, those skilled in the art will recognize that case sensitivity will only be applicable to comparisons of alphanumeric strings.
Returning to FIGURE SA, after the user has created an expression for the rule by choosing an appropriate template and filling in the blanks, the tree structure 430 is 1 S updated on the display 14 of the personal computer 10 in a block 240. As shown in more detail in FIGURE 12, a first expression node 500 including the chosen expression, "FIELD HAS DATA" is shown as a subnode between the first and second rule nodes 460 and 470, respectively. In a second example, FIGURE 16 depicts a situation where Field = (List) is the selected expression. The first expression node 500 reflects this selection with the text "FIELD = (LIST),"
and a (List) listbox 580 is displayed allowing the user to either select a previously entered or predefined literal presented in the (List) listbox 580, or type in a new literal, which will be added to the (List) listbox 580.
In a third example, FIGURE 17 depicts a situation where Field = Table is the selected expression. The first expression node 500 reflects this selection with the text "FIELD = TABLE", and a select table listbox 590 is displayed allowing the user to either select a previously entered or predefined table presented in the select table listbox 590, or type in a new table name, which will be added to the select table listbox 590. Upon selecting a table, a select column listbox 600 is displayed, and the user may select a column in a similar manner as selecting the table. As noted above, once the table and column have been identified, a comparison is performed in the same manner as for the Field = (List) expression.
Returning to FIGURE SA, if, in a decision block 250, no more expressions are to be added for the rule, the create rules) routine is complete. If, however, the user wishes to add more expressions to the validation rule, the create rules routine SUBSTITUTE SHEET (RULE 26) proceeds to a block 260 in FIGURE SB where, the add expression menu 490 is displayed once again. The user then selects and completes the desired expression in substantially the same manner as discussed with respect to blocks 230 and 240.
Accordingly, the tree structure 430 is updated with the newly added expression in a block 270.
It will be appreciated that if the user adds multiple expressions to a validation rule, it is necessary to define their relationship so that the rule may be correctly translated. The user defines the relationship by setting a join type in a block 280, which is either conjunctive AND or a disjunctive OR, and which is used to indicate how multiple expressions are to be evaluated together.
Referring to FIGURE 13, the join type is selected by displaying the action menu 480 and choosing "Join," which allows the user to select whether the expressions are to be interpreted conjunctively, i.e., joined by an AND, or disjunctively, i.e., joined by an OR. For instance, if a field is to be tested for a numeric value between 5 and 13, two expressions will be required:
FIELD > 5 and FIELD < 13.
Since, in this example, both expressions must be true for the validation to pass, the two expressions should joined with an AND as:
FIELD > 5 AND FIELD < 13 When more than one expression is created for the same rule, the tree structure 430 is updated with a <join> marker 520 at the front of a second expression node 560. This provides a visual cue to the user to select a join type for these two expressions before the rule can successfully be translated. For example, as shown in FIGURE 13, if the user wishes to join the "FIELD HAS DATA" with the expression "FIELD = Literal 1," the user chooses "Join" from the action menu 480.
Accordingly, the user selects the desired join type (AND or OR) from a join type menu 510. If AND is selected, the selected option replaces the <join> marker preceding the second expression in the tree structure 430, as shown in FIGURE
14.
Returning to FIGURE SB, if the user wishes to add still more expressions to the rule, blocks 260, 270 and 280 are repeated until all expressions have been added for the rule. Once all desired expressions '~3ve been added, the routine proceeds to a decision block 300 in which it determines whether more than two expressions having SUBSTITUTE SHEET (RULE 26) different join types have been created. It will be appreciated that if there are only ovo expressions, or if there is only one join type, then the create rules) routine is complete. However, if more than two expressions have been added to a validation rule and if there are different join types defined, an expression evaluation order must be specified. This is done using the "parenthesis" option of the action menu 480 as shown in FIGURE 14. The parenthesis option allows the user to place parentheses I around expressions, so that the expressions are evaluated in a particular order according to the well-known rules of mathematical hierarchy. For example, since the expressions FIELD1 > 5 OR FIELD1 < 13 AND FIELD2 HAS DATA
0 Can be interpreted two different ways, i.e., as ( FIELD1 > 5 OR FIELD1 < 13 ~ AND FIELD2 HAS DATA
or as FIELD1 > 5 OR ( FIELD1 < 13 AND FIELD2 HAS DATA
the parenthesis function must be employed to specify the correct interpretation. In an embodiment of the present invention, a default interpretation is given as a standard, left-to-right, evaluation. To force another interpretation, the user selects the first of the two expressions to be enclosed in parentheses, by highlighting the first expression and selecting the parenthesis option from action menu 480.
Accordingly, a parenthesis menu 530 is displayed. The parenthesis menu 530 includes choices for opening or beginning parenthesis, i.e., "(" and for closing or ending parenthesis, i.e., ")". The open parenthesis should be selected by the user to place a parenthesis before the first of the expressions to be evaluated together. The user then selects the second of the two expressions and places a close parenthesis after the second of the two expressions (as shown in the example of FIGURE 14) in a similar manner as for placing the open parenthesis, and the displayed tree is updated accordingly in a block 310. While enclosing two expressions in parentheses has been described, those skilled in the art will recognize that more than two expressions may be enclosed in parentheses such as where all the join types connecting the expressions are the same, i.e., all ANDS or all ORs. FIGURE 15 depicts the updat~a tree structure 430 with an SUBSTITUTE SHEET (RULE 26) open parenthesis 540 placed before a second expression node 560, and a close parenthesis 550 placed behind a third expression node 570.
Those skilled in the art will readily appreciate that the steps of specifying evaluation order and join type may be done after two or more, or even all expressions have been added, or at any time during the create rules) routine without departing from the spirit of the invention. It should also be noted that while parentheses are used in a present embodiment of the invention, brackets, braces, or any other grouping symbols may be used for the "parenthesis" option.
Returning to block 140 of FIGURE 4, rules may be added for field2 and field3 if desired in the same manner as for fieldl. Once all fields which should have rules have been filled out, the set of validation rules is complete and the completed tree structure will be translated into a rule file to be executed by the MPA
at the mobile computer in a block 150. The validation rules program then ends in a block 160. Since the completed tree structure contains all the validation rules, the 1 ~ tree structure is rendered as a textual rules file 16, which may be compiled into a set of validation rules according to techniques well known in the art and then executed by the MPA on the mobile computer 30, or simply interpreted by the MPA.
Once the rules file is executed or interpreted by the MPA, as a worker enters data into a field, that data is checked against a corresponding rule being executed or interpreted by the MPA for that field.
While the preferred embodiment of the invention has been illustrated and described, it will be appreciated that various changes can be made therein without departing from the spirit and scope of the invention.
SUBSTITUTE SHEET (RULE 26)

Claims (35)

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
1. In a computer system having a processor couplable to a display and a memory, the memory storing a user interface enabling a user to create a set of validation rules for a form, wherein the form includes a plurality of fields for data entry, the user interface comprising:
(a) a tree structure having a root node representing a name of the form and at least one other node representing a field of the form; and (b) a rule creator for enabling the user to create a validation rule to be applied to said at least one field, wherein the validation rule includes at least one expression which defines a test to be performed on the field of the form; and wherein the tree structure is updated when the validation rule is created by adding a node representing the validation rule as a subnode of the at least one other node which represents the field.
2. The user interface of Claim 1, wherein the validation rule includes a plurality of expressions, each of which defines a test to be performed on the field of the form.
3. The user interface of Claim 2, wherein the rule creator enables the user to logically join the plurality of expressions of the validation rule.
4. The user interface of Claim 3, wherein the rule creator enables the user to define an order in which the plurality of expressions of the validation rule are to be evaluated.
5. The user interface of Claim 1, wherein the at least one expression is a comparison expression, which compares the field to a predefined value.
6. The user interface of Claim 1, wherein the at least one expression is a conditional expression, which compares the field at least one predefined condition.
7. The user interface of Claim 1, wherein the validation rule further includes at least one of an error message rule, a validation level rule and an override mode rule, wherein the error message rule indicates the error message to be displayed if the field fails the validation rule, wherein the validation level rule indicates when the validation rule to be applied against the field, and wherein the override mode rule indicates whether the validation rule may be overridden.
8. The user interface of Claim 1, wherein the rule creator enables the user to create a validation rule to be applied against each of a plurality of fields of the form.
9. A method for creating a set of validation rules for a form, wherein the form includes a name and a plurality of fields for data entry, the method comprising:
(a) representing the form as a tree structure having a root node and a plurality of leaf nodes, wherein the root node represents the name of the form, and each leaf node represents at least one of the plurality of fields of the form;
(b) selecting at least one of the plurality of fields of the form against which one or more validation rules are to be applied;
(c) creating the validation rule to be applied to said field, wherein the validation rule includes at least one expression which defines a test to be performed on said field; and (d) updating the tree structure to include the created validation rule by adding a subnode to the leaf node representing said field wherein the subnode represents the validation rule.
10. The method of Claim 9, further comprising repeating (a), (b), (c) and (d) for more than one of the plurality of fields of the form.
11. The method of Claim 10, further comprising translating the tree structure into a text file storing a textual interpretation of the validation rules represented by the tree structure.
12. The method of Claim 9, wherein creating the validation rule to be applied comprises selecting the at least one expression to be applied to the field from a predefined list of expressions.
13. The method of Claim 12, wherein creating the validation rule to be applied further comprises selecting more than one expression to be applied to the field from the predefined list of expressions.
14. The method of Claim 13, wherein creating the validation rule to be applied further comprises selecting a logical joining between the selected expressions.
15. The method of Claim 13, wherein creating the validation rule to be applied further comprises selecting an evaluation order for the selected expressions.
16. The method of Claim 12, wherein creating the validation rule to be applied further comprises selecting an error message indicating whether the field has failed the validation rule.
17. The method of Claim 12, wherein creating the validation rule to be applied further comprises selecting a validation level indicating when the validation rule is to be applied to the field.
18. The method of Claim 12, wherein creating the validation rule to be applied further comprises selecting an override mode indicating whether the validation rule can be overridden if the field has failed the validation rule.
19. The method of Claim 9, further comprising selecting a particular form for which a set of validation rules is to be created from a list of pre-existing forms.
20. A computer-readable medium having computer-executable components for enabling a user to create validation rules for a form, wherein the form includes a name and a plurality of fields for data entry, the computer-executable components comprising:
(a) a form selection component for enabling the user to select a form for which to create validation rules from a list of forms;
(b) a graphical display component for generating a graphical representation of the form to the user which includes the name of the selected form, the fields of the selected form and the validation rules created for the selected form;
and (c) a rule creation component for enabling the user to create at least one validation rule for the form, wherein said at least one validation rule is added to the graphical representation of the form by the graphical display component upon creation of the validation rule by the rule creation component.
21. The computer-readable medium of Claim 20, wherein the rule creation component enables the user to create at least one validation rule for the form by:
(a) enabling the user to select at least one of the plurality of fields of the form against which said validation rule is to be applied; and (b) enabling the user to define at least one expression which defines a test to be performed on said selected field.
22. The computer-readable medium of Claim 21, wherein the rule creation component further enables the user to create at least one validation rule for the form by enabling the user to define a plurality of expressions, wherein each expression defines a test to be performed on said, selected field.
23. The computer-readable medium of Claim 22, wherein the rule creation component further enables the user to create at least one validation rule for the form by enabling the user to define a logical joining of the plurality of expressions defined.
24. The computer-readable medium of Claim 23, wherein the rule creation component further enables the user to create at least one validation rule for the form by enabling the user to define an order in which the plurality of expressions are to be evaluated.
25. The computer-readable medium of Claim 21, wherein the rule creation component further enables the user to create at least one validation rule for the form by enabling the user to select at least one of an error message rule, a validation level rule and an override mode rule, wherein the error message rule indicates the error message to be displayed if the field fails the validation rule, wherein the validation level rule indicates when the validation rule to be applied against the field, and wherein the override mode rule indicates whether the validation rule may be overridden.
26. The computer-readable medium of Claim 21, wherein the at least one expression is a comparison expression, which compares the field to a predefined value.
27. The computer-readable medium of Claim 21, wherein the at least one expression is a conditional expression, which compares the field at least one predefined condition.
28. The computer-readable medium of Claim 20, wherein the graphical representation of the form generated by the graphical display component comprises a tree structure having a root node representing the name of the form, at least one leaf node representing each field of the form, and at least one sub-leaf node representing each validation rule created by the user.
29. An apparatus for creating validation rules for a form, wherein the form includes a name and a plurality of fields for data entry, the apparatus comprising:
(a) a processing unit;
(b) a storage medium coupled to the processing unit, the storage medium storing program code implemented by the processing unit for:
(i) selecting at least one of the plurality of fields of the form against which a validation rule is to be applied; and (ii) creating the validation rule to be applied to said field, wherein the validation rule includes at least one expression which defines a test to be performed on said field; and (c) a display coupled to the processing unit for displaying the name of the form, the fields of the form and the validation rules as a tree structure, wherein the tree structure includes a root node representing the name of the form, at least one leaf node representing each field of the form, and at least one sub-leaf node representing each validation rule created.
30. The apparatus of Claim 29, wherein the program code implemented by the processing unit creates the validation rule by defining at least one expression to be applied to said field, wherein the at least one expression defines a test to be performed on said field.
31. The apparatus of Claim 30, wherein the program code implemented by the processing unit further creates the validation rule by defining a plurality of expressions to be applied to said field, wherein each of the plurality of expressions defines a test to be performed on said field.
32. The apparatus of Claim 31, wherein the program code implemented by the processing unit further creates the validation rule by defining a logical joining for the plurality of expressions to be applied to said field.
33. The apparatus of Claim 32, wherein the program code implemented by the processing unit further creates the validation rule by defining an evaluation order for the plurality of expressions to be applied to said field.
34. The apparatus of Claim 30, wherein the program code implemented by the processing unit updates the tree structure displayed by the display upon creation of the validation rule by adding a sub-leaf node representing the validation rule to the node representing said field.
35. The apparatus of Claim 29, wherein the program code implemented by the processing unit creates a validation rule for more than one field of the form by:
(a) selecting more. than one field of the form against which a validation rule is to be applied; and (b) creating the validation rule to be applied to each of said field, wherein the validation rule includes at least one expression which defines a test to be performed on said field.
CA002380393A 1999-08-04 2000-08-03 System and method for creating validation rules used to confirm input data Abandoned CA2380393A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/368,486 US6535883B1 (en) 1999-08-04 1999-08-04 System and method for creating validation rules used to confirm input data
US09/368,486 1999-08-04
PCT/CA2000/000906 WO2001011463A2 (en) 1999-08-04 2000-08-03 System and method for creating validation rules used to confirm input data

Publications (1)

Publication Number Publication Date
CA2380393A1 true CA2380393A1 (en) 2001-02-15

Family

ID=23451429

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002380393A Abandoned CA2380393A1 (en) 1999-08-04 2000-08-03 System and method for creating validation rules used to confirm input data

Country Status (5)

Country Link
US (1) US6535883B1 (en)
EP (1) EP1210659A2 (en)
AU (1) AU6421100A (en)
CA (1) CA2380393A1 (en)
WO (1) WO2001011463A2 (en)

Families Citing this family (187)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5994207A (en) * 1997-05-12 1999-11-30 Silicon Genesis Corporation Controlled cleavage process using pressurized fluid
US6345278B1 (en) * 1998-06-04 2002-02-05 Collegenet, Inc. Universal forms engine
US7013284B2 (en) * 1999-05-04 2006-03-14 Accenture Llp Component based interface to handle tasks during claim processing
US7979382B2 (en) * 1999-05-04 2011-07-12 Accenture Global Services Limited Component based information linking during claim processing
GB2354849B (en) * 1999-09-29 2004-08-25 Ibm Method and tool for graphically defining an expression
US7519905B2 (en) * 1999-10-12 2009-04-14 Webmd Corp. Automatic formatting and validating of text for a markup language graphical user interface
US7617491B1 (en) * 2000-01-20 2009-11-10 Priceline.Com Incorporated Apparatus, system, and method for validating network communications data
AU2001233111A1 (en) 2000-02-04 2001-08-14 America Online Incorporated Optimized delivery of web application code
WO2001057720A2 (en) * 2000-02-04 2001-08-09 America Online Incorporated Automated client-server data validation
CA2404286A1 (en) * 2000-03-24 2002-09-24 Sanae Sakamoto Processing apparatus and method for electronic document
US20010047287A1 (en) * 2000-03-31 2001-11-29 Simon Jacobs Finding technique for a scheduling system
US7403901B1 (en) * 2000-04-13 2008-07-22 Accenture Llp Error and load summary reporting in a health care solution environment
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US7191394B1 (en) 2000-06-21 2007-03-13 Microsoft Corporation Authoring arbitrary XML documents using DHTML and XSLT
US6883168B1 (en) 2000-06-21 2005-04-19 Microsoft Corporation Methods, systems, architectures and data structures for delivering software via a network
US7346848B1 (en) 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US7283971B1 (en) * 2000-09-06 2007-10-16 Masterlink Corporation System and method for managing mobile workers
US8190463B2 (en) * 2000-09-06 2012-05-29 Masterlink Corporation System and method for managing mobile workers
US20020120779A1 (en) * 2000-11-14 2002-08-29 Douglas Teeple Mediation software for delivery of interactive mobile messaging and personalized content to mobile devices
US6898619B1 (en) * 2000-12-08 2005-05-24 Sun Microsystmes, Inc. System and method for dynamically disabling resubmission of HTTP requests
US7694216B2 (en) * 2000-12-19 2010-04-06 International Business Machines Corporation Automatic assignment of field labels
US20050159136A1 (en) * 2000-12-29 2005-07-21 Andrew Rouse System and method for providing wireless device access
US8112544B2 (en) * 2000-12-29 2012-02-07 International Business Machines Corporation System and method for providing customizable options on a wireless device
US20020087628A1 (en) * 2000-12-29 2002-07-04 Andrew Rouse System and method for providing wireless device access to e-mail applications
US7616971B2 (en) * 2000-12-29 2009-11-10 International Business Machines Corporation System and method for providing access to forms for displaying information on a wireless access device
US6938206B2 (en) * 2001-01-19 2005-08-30 Transolutions, Inc. System and method for creating a clinical resume
US6920493B1 (en) * 2001-03-19 2005-07-19 Networks Associates Technology, Inc. System and method for communicating coalesced rule parameters in a distributed computing environment
US7761397B2 (en) * 2001-03-21 2010-07-20 Huelsman David L Rule processing method and apparatus providing automatic user input selections
US7188091B2 (en) * 2001-03-21 2007-03-06 Resolutionebs, Inc. Rule processing system
US6948133B2 (en) * 2001-03-23 2005-09-20 Siemens Medical Solutions Health Services Corporation System for dynamically configuring a user interface display
US7072974B2 (en) 2001-03-27 2006-07-04 The Code Corporation Extensible application interface using machine-readable graphical codes
WO2002084879A2 (en) * 2001-04-13 2002-10-24 The Code Coproration System and method for encoding and decoding data and references to data in machine-readable graphical codes
US6978038B2 (en) * 2001-04-13 2005-12-20 The Code Corporation Systems and methods for pixel gain compensation in machine-readable graphical codes
US7185824B2 (en) * 2001-04-13 2007-03-06 The Code Corporation System and method for associating pre-printed machine-readable graphical codes with electronically-accessible data
US8041739B2 (en) * 2001-08-31 2011-10-18 Jinan Glasgow Automated system and method for patent drafting and technology assessment
US6697839B2 (en) * 2001-11-19 2004-02-24 Oracle International Corporation End-to-end mobile commerce modules
US8327258B2 (en) * 2001-11-19 2012-12-04 Oracle International Corporation Automated entry of information into forms of mobile applications
US20030126555A1 (en) * 2002-01-03 2003-07-03 International Business Machines Corporation Enhanced attribute prompting in browser clients
US20030163464A1 (en) * 2002-02-08 2003-08-28 Srividhya Gopalan Method and apparatus to validate a date input
US20030163396A1 (en) * 2002-02-27 2003-08-28 John Blankevoort Systems and methods for tracking products as they move through a supply chain
US20030163800A1 (en) * 2002-02-27 2003-08-28 Weiyang Zhou System and method for generating graphical codes containing a plurality of data fields
WO2003081478A1 (en) * 2002-03-20 2003-10-02 Resolutionebs, Inc. Rule processing system and method
US7062478B1 (en) * 2002-03-20 2006-06-13 Resolutionebs, Inc. Method and apparatus using automated rule processing to configure a product or service
WO2003096218A1 (en) * 2002-04-22 2003-11-20 The Code Corporation Systems and methods for facilitating automatic completion of an electronic form
US7403967B1 (en) * 2002-06-18 2008-07-22 West Corporation Methods, apparatus, and computer readable media for confirmation and verification of shipping address data associated with a transaction
US7070091B2 (en) * 2002-07-29 2006-07-04 The Code Corporation Systems and methods for interfacing object identifier readers to multiple types of applications
US7097099B2 (en) * 2002-07-29 2006-08-29 The Code Corporation Data collection device with integrated data translation
US7392933B2 (en) * 2002-07-29 2008-07-01 The Code Corporation Systems and methods for interfacing multiple types of object identifiers and object identifier readers to multiple types of applications
US7621453B2 (en) * 2002-07-29 2009-11-24 The Code Corporation System and method for controlling the distribution of data translation components to portable data collection devices
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7275216B2 (en) 2003-03-24 2007-09-25 Microsoft Corporation System and method for designing electronic forms and hierarchical schemas
US7415672B1 (en) * 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US7296017B2 (en) 2003-03-28 2007-11-13 Microsoft Corporation Validation of XML data files
US8126742B2 (en) * 2003-05-09 2012-02-28 Accenture Global Services Limited Automated assignment of insurable events
US8645547B1 (en) 2003-07-25 2014-02-04 Verizon Data Services Llc Methods and systems for providing a messaging service
US7680797B1 (en) 2003-07-25 2010-03-16 Verizon Data Services Llc Methods and systems for providing a data access layer
US20050028084A1 (en) * 2003-07-28 2005-02-03 Alan Dziejma System and method for a form validation engine
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US7464331B2 (en) * 2003-08-18 2008-12-09 Microsoft Corporation System and method for validating hierarchically-organized messages
US7657832B1 (en) * 2003-09-18 2010-02-02 Adobe Systems Incorporated Correcting validation errors in structured documents
US7552102B2 (en) * 2003-09-29 2009-06-23 Huelsman David L Rule processing method, apparatus, and computer-readable medium to provide improved selection advice
US7565337B2 (en) * 2003-09-29 2009-07-21 Huelsman David L Batch validation method, apparatus, and computer-readable medium for rule processing
US7587380B2 (en) * 2003-09-29 2009-09-08 Huelsman David L Rule processing method, apparatus, and computer-readable medium to generate valid combinations for selection
DE102004047958A1 (en) * 2003-10-01 2006-03-16 Siemens Ag Optimized medical examination schedule creating or updating method for patient, involves creating attributes database, and outputting either error free optimal examination schedule or error indication to user
US20050108625A1 (en) * 2003-11-13 2005-05-19 International Business Machines Corporation Method and system for selecting rules to validate information submitted on an electronic form
GB2424103A (en) * 2003-11-21 2006-09-13 Agency Science Tech & Res Method and system for validating the content of technical documents
US8819072B1 (en) 2004-02-02 2014-08-26 Microsoft Corporation Promoting data from structured data files
JP4179553B2 (en) * 2004-03-15 2008-11-12 インターナショナル・ビジネス・マシーンズ・コーポレーション Display control information generation method, computer for generating display control information, and program
US20050210001A1 (en) * 2004-03-22 2005-09-22 Yeun-Jonq Lee Field searching method and system having user-interface for composite search queries
US7774620B1 (en) 2004-05-27 2010-08-10 Microsoft Corporation Executing applications at appropriate trust levels
US20050289517A1 (en) * 2004-06-24 2005-12-29 International Business Machines Corporation System and methods for client and template validation
US8285856B1 (en) 2004-07-23 2012-10-09 Verizon Data Services Llc Methods and systems for integrating a messaging service with an application
US8347203B1 (en) * 2004-07-23 2013-01-01 Verizon Data Services Llc Methods and systems for defining a form navigational structure
US7325014B1 (en) * 2004-09-23 2008-01-29 Cranberry Technologies, Inc. Direct rendering of a web application from a database to a web browser
US7734559B2 (en) * 2004-09-28 2010-06-08 Huelsman David L Rule processing method and apparatus providing exclude cover removal to simplify selection and/or conflict advice
US7692636B2 (en) 2004-09-30 2010-04-06 Microsoft Corporation Systems and methods for handwriting to a screen
US20060075392A1 (en) * 2004-10-05 2006-04-06 International Business Machines Corporation System and method for reverse engineering of pattern string validation scripts
US8487879B2 (en) 2004-10-29 2013-07-16 Microsoft Corporation Systems and methods for interacting with a computer through handwriting to a screen
US7204417B2 (en) * 2004-11-03 2007-04-17 The Code Corporation Graphical code reader that is configured for efficient decoder management
US7721190B2 (en) * 2004-11-16 2010-05-18 Microsoft Corporation Methods and systems for server side form processing
US7937651B2 (en) 2005-01-14 2011-05-03 Microsoft Corporation Structural editing operations for network forms
US7725834B2 (en) 2005-03-04 2010-05-25 Microsoft Corporation Designer-created aspect for an electronic form template
US7428536B2 (en) * 2005-04-05 2008-09-23 International Business Machines Corporation Apparatus and method for providing a condition builder interface
US8010515B2 (en) 2005-04-15 2011-08-30 Microsoft Corporation Query to an electronic form
US8200975B2 (en) 2005-06-29 2012-06-12 Microsoft Corporation Digital signatures for network forms
US7725483B2 (en) * 2005-07-29 2010-05-25 Sap, Ag Method for improved processing of expression-based data
US7870162B2 (en) 2005-07-29 2011-01-11 Sap Ag Method for generating properly formed expressions
US7734625B2 (en) * 2005-07-29 2010-06-08 Sap, Ag Method for performing expression-based validation
US7979472B2 (en) * 2005-07-29 2011-07-12 Sap Ag Method for conditionally branching a validation
US8601383B2 (en) 2005-09-09 2013-12-03 Microsoft Corporation User interface for creating a spreadsheet data summary table
US8095866B2 (en) * 2005-09-09 2012-01-10 Microsoft Corporation Filtering user interface for a data summary table
KR100747466B1 (en) * 2005-10-01 2007-08-09 엘지전자 주식회사 A device management client and device management method using nodes having additional properties
US7627812B2 (en) 2005-10-27 2009-12-01 Microsoft Corporation Variable formatting of cells
US7933786B2 (en) * 2005-11-01 2011-04-26 Accenture Global Services Limited Collaborative intelligent task processor for insurance claims
EP1791056A1 (en) * 2005-11-25 2007-05-30 Sap Ag Data processing method and system
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US20070150820A1 (en) * 2005-12-22 2007-06-28 Salvo Anthony C Data-driven user interface
US7770100B2 (en) * 2006-02-27 2010-08-03 Microsoft Corporation Dynamic thresholds for conditional formats
US20080126988A1 (en) * 2006-11-24 2008-05-29 Jayprakash Mudaliar Application management tool
US20080148222A1 (en) * 2006-12-19 2008-06-19 Moxa Technologies Co., Ltd. Programmable automatic triggering system and apparatus
GB2451240A (en) * 2007-07-23 2009-01-28 1Spatial Group Ltd Spatial data validation system utilising rule tree
US7739071B2 (en) * 2007-08-30 2010-06-15 International Business Machines Corporation System validation using validation programs depicted using markup language
US20090083703A1 (en) * 2007-09-24 2009-03-26 Mednet Solutions Electronic Clinical Study Site Generation System
US8478769B2 (en) * 2008-02-22 2013-07-02 Accenture Global Services Limited Conversational question generation system adapted for an insurance claim processing system
US8515786B2 (en) * 2008-02-22 2013-08-20 Accenture Global Services Gmbh Rule generation system adapted for an insurance claim processing system
US20090217146A1 (en) * 2008-02-22 2009-08-27 Eugene Goldfarb Page navigation generation system for a customizable application
JP2010073062A (en) * 2008-09-19 2010-04-02 Ricoh Co Ltd Image processor, image processing method and program
US20110078576A1 (en) * 2009-09-30 2011-03-31 Mckesson Financial Holdings Limited Methods, apparatuses, and computer program products for facilitating management of a computing system
US8316313B2 (en) * 2009-10-14 2012-11-20 Fisher-Rosemount Systems, Inc. Method for selecting shapes in a graphical display
US20110145736A1 (en) * 2009-12-14 2011-06-16 Sap Ag Systems and Methods for Designing a Universal User Interface
US9292565B2 (en) * 2010-06-30 2016-03-22 International Business Machines Corporation Template-based recognition of food product information
US20120209800A1 (en) * 2011-02-11 2012-08-16 Microsoft Corporation Business rules
US20120310904A1 (en) * 2011-06-01 2012-12-06 International Business Machine Corporation Data validation and service
US8910063B2 (en) * 2012-03-27 2014-12-09 Cisco Technology, Inc. Assisted display for command line interfaces
US10380275B2 (en) * 2012-05-09 2019-08-13 Dassault Systemes Simulia Corp. Tolerances on simulated behavior
CN105027040B (en) 2013-01-21 2018-09-21 要点科技印度私人有限公司 text input system and method
IN2013CH00469A (en) 2013-01-21 2015-07-31 Keypoint Technologies India Pvt Ltd
US10386827B2 (en) 2013-03-04 2019-08-20 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics platform
US10649424B2 (en) 2013-03-04 2020-05-12 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US10678225B2 (en) 2013-03-04 2020-06-09 Fisher-Rosemount Systems, Inc. Data analytic services for distributed industrial performance monitoring
US10649449B2 (en) 2013-03-04 2020-05-12 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US9823626B2 (en) 2014-10-06 2017-11-21 Fisher-Rosemount Systems, Inc. Regional big data in process control systems
US9804588B2 (en) 2014-03-14 2017-10-31 Fisher-Rosemount Systems, Inc. Determining associations and alignments of process elements and measurements in a process
US9665088B2 (en) 2014-01-31 2017-05-30 Fisher-Rosemount Systems, Inc. Managing big data in process control systems
US10223327B2 (en) 2013-03-14 2019-03-05 Fisher-Rosemount Systems, Inc. Collecting and delivering data to a big data machine in a process control system
US10909137B2 (en) 2014-10-06 2021-02-02 Fisher-Rosemount Systems, Inc. Streaming data for analytics in process control systems
US10866952B2 (en) 2013-03-04 2020-12-15 Fisher-Rosemount Systems, Inc. Source-independent queries in distributed industrial system
US9558220B2 (en) * 2013-03-04 2017-01-31 Fisher-Rosemount Systems, Inc. Big data in process control systems
US10282676B2 (en) 2014-10-06 2019-05-07 Fisher-Rosemount Systems, Inc. Automatic signal processing-based learning in a process plant
US9397836B2 (en) 2014-08-11 2016-07-19 Fisher-Rosemount Systems, Inc. Securing devices to process control systems
US10152031B2 (en) 2013-03-15 2018-12-11 Fisher-Rosemount Systems, Inc. Generating checklists in a process control environment
US10296668B2 (en) 2013-03-15 2019-05-21 Fisher-Rosemount Systems, Inc. Data modeling studio
US10817662B2 (en) 2013-05-21 2020-10-27 Kim Technologies Limited Expert system for automation, data collection, validation and managed storage without programming and without deployment
US9563617B2 (en) * 2013-09-23 2017-02-07 Oracle International Corporation Custom validation of values for fields of submitted forms
JP6249770B2 (en) * 2013-12-27 2017-12-20 キヤノン株式会社 Character input device
GB2522338B (en) 2014-01-03 2020-12-16 Fisher Rosemount Systems Inc Reusable graphical elements with quickly editable features for use in user displays of plant monitoring systems
US10915970B1 (en) 2014-03-12 2021-02-09 Intuit Inc. Computer implemented methods systems and articles of manufacture for communicating and resolving electronic tax return errors and inconsistent data
US9760953B1 (en) 2014-03-12 2017-09-12 Intuit Inc. Computer implemented methods systems and articles of manufacture for identifying tax return preparation application questions based on semantic dependency
US10387969B1 (en) 2014-03-12 2019-08-20 Intuit Inc. Computer implemented methods systems and articles of manufacture for suggestion-based interview engine for tax return preparation application
US10769122B2 (en) * 2014-03-13 2020-09-08 Ab Initio Technology Llc Specifying and applying logical validation rules to data
US9910883B2 (en) 2014-04-07 2018-03-06 International Business Machines Corporation Enhanced batch updates on records and related records system and method
US10867355B1 (en) 2014-07-31 2020-12-15 Intuit Inc. Computer implemented methods systems and articles of manufacture for preparing electronic tax return with assumption data
US11430072B1 (en) 2014-07-31 2022-08-30 Intuit Inc. System and method of generating estimates used to calculate taxes
US9916628B1 (en) 2014-07-31 2018-03-13 Intuit Inc. Interview question modification during preparation of electronic tax return
US10204134B2 (en) 2014-08-14 2019-02-12 International Business Machines Corporation Automatic detection of problems in a large-scale multi-record update system and method
US10970793B1 (en) 2014-08-18 2021-04-06 Intuit Inc. Methods systems and articles of manufacture for tailoring a user experience in preparing an electronic tax return
US10977743B1 (en) 2014-08-18 2021-04-13 Intuit Inc. Computer implemented methods systems and articles of manufacture for instance and suggestion differentiation during preparation of electronic tax return
US10540725B1 (en) 2014-08-18 2020-01-21 Intuit Inc. Methods systems and articles of manufacture for handling non-standard screen changes in preparing an electronic tax return
US11861734B1 (en) 2014-08-18 2024-01-02 Intuit Inc. Methods systems and articles of manufacture for efficiently calculating a tax return in a tax return preparation application
US10168691B2 (en) 2014-10-06 2019-01-01 Fisher-Rosemount Systems, Inc. Data pipeline for process control system analytics
US10796381B1 (en) 2014-10-31 2020-10-06 Intuit Inc. Systems and methods for determining impact correlations from a tax calculation graph of a tax preparation system
US9922376B1 (en) 2014-10-31 2018-03-20 Intuit Inc. Systems and methods for determining impact chains from a tax calculation graph of a tax preparation system
US10169826B1 (en) 2014-10-31 2019-01-01 Intuit Inc. System and method for generating explanations for tax calculations
US10387970B1 (en) 2014-11-25 2019-08-20 Intuit Inc. Systems and methods for analyzing and generating explanations for changes in tax return results
US11222384B1 (en) 2014-11-26 2022-01-11 Intuit Inc. System and method for automated data estimation for tax preparation
US10235722B1 (en) 2014-11-26 2019-03-19 Intuit Inc. Systems and methods for analyzing and determining estimated taxes
US10296984B1 (en) 2014-11-26 2019-05-21 Intuit Inc. Systems, methods and articles of manufacture for determining relevancy of tax topics in a tax preparation system
US10235721B1 (en) 2014-11-26 2019-03-19 Intuit Inc. System and method for automated data gathering for tax preparation
US10157426B1 (en) 2014-11-28 2018-12-18 Intuit Inc. Dynamic pagination of tax return questions during preparation of electronic tax return
US10572952B1 (en) * 2014-12-01 2020-02-25 Intuit Inc. Computer implemented methods systems and articles of manufacture for cross-field validation during preparation of electronic tax return
US10872384B1 (en) 2015-03-30 2020-12-22 Intuit Inc. System and method for generating explanations for year-over-year tax changes
US10140666B1 (en) 2015-03-30 2018-11-27 Intuit Inc. System and method for targeted data gathering for tax preparation
US10796382B1 (en) 2015-03-30 2020-10-06 Intuit Inc. Computer-implemented method for generating a customized tax preparation experience
US9990678B1 (en) 2015-03-31 2018-06-05 Intuit Inc. Systems methods and articles of manufacture for assessing trustworthiness of electronic tax return data
US11113771B1 (en) 2015-04-28 2021-09-07 Intuit Inc. Systems, methods and articles for generating sub-graphs of a tax calculation graph of a tax preparation system
US10685407B1 (en) 2015-04-30 2020-06-16 Intuit Inc. Computer-implemented methods, systems and articles of manufacture for tax topic prediction utilizing prior tax returns
US10664924B1 (en) 2015-04-30 2020-05-26 Intuit Inc. Computer-implemented methods, systems and articles of manufacture for processing sensitive electronic tax return data
US10664925B2 (en) 2015-06-30 2020-05-26 Intuit Inc. Systems, methods and articles for determining tax recommendations
US10607298B1 (en) 2015-07-30 2020-03-31 Intuit Inc. System and method for indicating sections of electronic tax forms for which narrative explanations can be presented
US10402913B2 (en) 2015-07-30 2019-09-03 Intuit Inc. Generation of personalized and hybrid responses to queries submitted from within tax return preparation system during preparation of electronic tax return
US10503483B2 (en) 2016-02-12 2019-12-10 Fisher-Rosemount Systems, Inc. Rule builder in a process control network
WO2017214665A1 (en) * 2016-06-14 2017-12-21 Ip Now Pty Ltd Improvements in or relating to forms
US11176620B1 (en) 2016-06-28 2021-11-16 Intuit Inc. Systems and methods for generating an error report listing errors in the preparation of a payroll tax form
WO2018022023A1 (en) * 2016-07-26 2018-02-01 Intuit Inc. Computer-implemented systems and methods for preparing compliance forms to meet regulatory requirements
US10796231B2 (en) 2016-07-26 2020-10-06 Intuit Inc. Computer-implemented systems and methods for preparing compliance forms to meet regulatory requirements
US10872315B1 (en) 2016-07-27 2020-12-22 Intuit Inc. Methods, systems and computer program products for prioritization of benefit qualification questions
US10762472B1 (en) 2016-07-27 2020-09-01 Intuit Inc. Methods, systems and computer program products for generating notifications of benefit qualification change
US11055794B1 (en) 2016-07-27 2021-07-06 Intuit Inc. Methods, systems and computer program products for estimating likelihood of qualifying for benefit
US10769592B1 (en) 2016-07-27 2020-09-08 Intuit Inc. Methods, systems and computer program products for generating explanations for a benefit qualification change
US11087411B2 (en) 2016-07-27 2021-08-10 Intuit Inc. Computerized tax return preparation system and computer generated user interfaces for tax topic completion status modifications
US10733366B2 (en) * 2016-09-19 2020-08-04 Kim Technologies Limited Actively adapted knowledge base, content calibration, and content recognition
US10664926B2 (en) 2016-10-26 2020-05-26 Intuit Inc. Methods, systems and computer program products for generating and presenting explanations for tax questions
US11138676B2 (en) 2016-11-29 2021-10-05 Intuit Inc. Methods, systems and computer program products for collecting tax data
US11068468B2 (en) 2019-03-29 2021-07-20 Adp, Llc Extensible validation framework
US20210406828A1 (en) * 2020-06-24 2021-12-30 Mitchell International, Inc. Vehicle repair estimating tool with near-real-time compliance

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2054026A1 (en) * 1990-10-31 1992-05-01 William Monroe Turpin Goal oriented electronic form system
US5619688A (en) * 1993-09-02 1997-04-08 Microsoft Corporation Method and system for constructing database queries using a field selection grid
US5485618A (en) * 1993-12-15 1996-01-16 Borland International, Inc. Methods and interface for building command expressions in a computer system
US6014138A (en) * 1994-01-21 2000-01-11 Inprise Corporation Development system with methods for improved visual programming with hierarchical object explorer
US5487141A (en) * 1994-01-21 1996-01-23 Borland International, Inc. Development system with methods for visual inheritance and improved object reusability
US5584024A (en) * 1994-03-24 1996-12-10 Software Ag Interactive database query system and method for prohibiting the selection of semantically incorrect query parameters
US5815152A (en) * 1995-04-18 1998-09-29 Logical Software Solutions Corporation Method and apparatus for defining and evaluating a graphic rule
US5966695A (en) * 1995-10-17 1999-10-12 Citibank, N.A. Sales and marketing support system using a graphical query prospect database
US5710901A (en) 1995-12-29 1998-01-20 Tci Summitrak Of Texas, Inc. Method and apparatus for validating data entered by a user
US5784583A (en) 1996-09-09 1998-07-21 International Business Machine Corp. Intuitive technique for building graphical menus
US5864819A (en) 1996-11-08 1999-01-26 International Business Machines Corporation Internal window object tree method for representing graphical user interface applications for speech navigation
US6212672B1 (en) * 1997-03-07 2001-04-03 Dynamics Research Corporation Software development system with an executable working model in an interpretable intermediate modeling language
US6208985B1 (en) * 1997-07-09 2001-03-27 Caseventure Llc Data refinery: a direct manipulation user interface for data querying with integrated qualitative and quantitative graphical representations of query construction and query result presentation
US6934696B1 (en) 2000-09-15 2005-08-23 Bently Nevada, Llc Custom rule system and method for expert systems

Also Published As

Publication number Publication date
AU6421100A (en) 2001-03-05
WO2001011463A2 (en) 2001-02-15
EP1210659A2 (en) 2002-06-05
US6535883B1 (en) 2003-03-18
WO2001011463A3 (en) 2002-04-11

Similar Documents

Publication Publication Date Title
US6535883B1 (en) System and method for creating validation rules used to confirm input data
CN111815168B (en) Information system engineering supervision project quality management system
US6801926B1 (en) Platform-independent programmable batch processing engine
US5410646A (en) System and method for creating, processing, and storing forms electronically
US5734837A (en) Method and apparatus for building business process applications in terms of its workflows
US20090204881A1 (en) Method and system for knowledge-based filling and verification of complex forms
US6647390B2 (en) System and methods for standardizing data for design review comparisons
US6072493A (en) System and method for associating services information with selected elements of an organization
US7320016B2 (en) Method for visually programming instruction set for process
US20050108625A1 (en) Method and system for selecting rules to validate information submitted on an electronic form
CN111815281A (en) Information system project supervision project bid management system
US20060004612A1 (en) Systems and methods for configuring and processing insurance information
US20020194059A1 (en) Business process control point template and method
US20140081814A1 (en) Accounting journalization file data standardization system
US11138534B1 (en) Apparatus and method for integrating construction project specifications and related submittal documentation
JP2002063323A (en) Operation process designing support system, activity support system, and operation process total support system
JP5261643B2 (en) Accounting journal file data standardization system and its program
KR20070083786A (en) Business process management system and method
Analyzer User manual
US20010039521A1 (en) Budget information and analysis system and method
JP3276735B2 (en) Input assist method
JP2003150765A (en) Job site accounting system and job site accounting providing method
JP2001052083A (en) Electronic form system and electronic form program storage medium
Acharya Online bus reservation system project report.
JP4403826B2 (en) Integrated document management program, integrated document management method, and integrated document management apparatus

Legal Events

Date Code Title Description
EEER Examination request
FZDE Discontinued