Rule generation system adapted for an insurance claim processing system

A rule generation system facilitates the dynamic generation of rules for an insurance claim processing computer system. The rule generation system includes various modules and graphical user interfaces that provide a streamlined mechanism for creating new rules for the insurance claim processing architecture. The rule generation system may include various levels of usability that distinguish between an advanced user of the rule generation system and basic user that uses the generated rules. The rule generation system may also include graphical user interfaces directed to adding, editing, removing, or maintaining rules for the insurance claim processing computer system.

BACKGROUND

1. Technical Field

This insurance application relates to processing insurance claims, and in particular, to a rule generation system for an insurance claim processing computer system.

2. Related Art

In processing insurance claims from an insurance customer, an insurance claim agent typically asks a variety of questions to the insurance customer. An insurance claim processing center typically employs an insurance claim processing computer system for processing insurance claims from insurance customers. The insurance claim processing computer system may be used by various employees at the claim processing center such as insurance claim agents. The insurance claim processing computer system may be operative to display various graphical user interfaces that an insurance claim agent uses when asking questions to an insurance customer and when the insurance claim agent receives answers to those questions.

In some circumstances, the insurance claim processing center desires to order the presentation of questions and various graphical user interfaces. However, an insurance claim processing computer system is usually extremely complex and requires an individual, such as a computer program developer, who has a skill set that includes the computer programming language in which the insurance claim processing computer system was written. Hence, the insurance claim processing center incurs additional burdens, including fees to the computer program developer and lag time, each time the insurance claim processing center desires to change the order or display of the graphical user interfaces. In addition, when an insurance claim processing center does not have the personnel with the technical skill set to add or create questions using the insurance claim processing computer system, the insurance claim processing center realizes additional expenses in training or hiring the personnel with the requisite skill set.

Moreover, making modifications to existing insurance claim processing computer systems requires disabling access to and shutting down the systems connected to the insurance claim processing computer system. Hence, when the insurance claim processing center desires to change the order or display of the graphical user interfaces, the insurance claim processing center must shut down the entire insurance claim processing computer system. This shutting down process results in downtime of the insurance claim processing center, which translates into lost revenue and lost worker productivity.

SUMMARY

A rule generation system dynamically generates rules for an insurance claim processing computer system. The dynamically generated rules may be used as part of the insurance claim processing computer system for presenting graphical user interfaces or other communication interfaces. The rule generation system includes various modules and graphical user interfaces that provide a streamlined mechanism for creating new rules and modifying pre-existing rules for the insurance claim processing computer system. In addition, the rule generation system minimizes the need to learn a complicated computer language or syntax each time a conversational question is created. The rule generation system may include various levels of usability that distinguish between a question programmer that programs questions for the rule question generation system and an insurance claim agent.

In general, a rule may be considered an evaluative expression. A user may use the rule generation system to generate or modify different categories of evaluative expressions. Examples of evaluative expressions include navigation evaluative expressions, display evaluative expressions, and discrepancy message evaluative expressions. An evaluative expression may have one or more evaluative expression parameters representing one or more conditional statements that correspond to the evaluative expression category of the evaluative expression. In addition, different categories of evaluative expressions may have different evaluative expression parameters. For example, a navigation evaluative expression may have different evaluative expression parameters than a display evaluative expression or a discrepancy message evaluative expression. The rule generation system may use one or more graphical user interfaces to assign values to the different categories of evaluative expressions.

In one implementation, the rule question generation system includes a memory storage device in communication with various system components, such as a processor. The memory storage device stores an evaluative expression database that has been configured with an evaluative expression framework. The evaluative expression framework may encompass different categories of evaluative expressions.

The evaluative expression database may employ various tables to implement the evaluative expression framework. By way of example, the evaluative expression database may employ an evaluative expression table, an evaluative expression support table, an evaluative expression text table, an evaluative expression association table, and a common evaluative expression table. The evaluative expression database may employ more or less tables depending on the evaluative expression framework.

The memory storage device may also store executable instructions that define evaluative expression modules for generating, editing, or modifying evaluative expressions. In one implementation, the executable instructions define an evaluative expression parameter module, an evaluative expression generator module, a common evaluative expression module, an evaluative expression parameter module, and an advanced evaluative expression module. The executable instructions may be operative to define more or less modules. Each of the modules may be associated with one or more graphical user interfaces.

DETAILED DESCRIPTION

System Overview

While the embodiments described herein relate to insurance claim processing, the modules and other systems described may be adopted for any system that uses databases, Internet technologies, graphical user interfaces, or other communication interfaces.

In general, an insurance claim processing computer system uses graphical user interfaces to present questions to an insurance claim agent or an insurance customer. The questions may be part of an insurance application of the insurance claim processing computer system, such as a first notice of loss insurance application or an underwriting insurance application. Although the questions may be any type of question, the questions may relate to the specific insurance application. For example, in a first notice of loss insurance application, the questions may relate to an insurance claim.

The graphical user interfaces may be displayed as part of a web page, which is usually a file of information made available for viewing on the World Wide Web and displayable in an Internet browser or other computer program. The web page may be sub-divided into sections, referred to as “containers” in the present insurance application. The insurance claim processing computer system may populate the containers with questions.

The web pages are presented to an insurance claim agent or insurance customer as part of an organized structure of the insurance application, wherein the organized structure includes a series of sequential nodes and each node represents a web page. The web page may be displayed in a window of a computer program, such as an Internet web browser. In general, the term “window” refers to a portion of a computer monitor that contains its own document or message. In window-based computer programs, the screen may be divided into several windows, each of which has its own boundaries and may contain a different document, or a different view of the same document. A window may also be a modal window, which may require user input or other action before another window is displayed. In alternative implementations, the nodes may be non-sequential or a node may represent a window.

The organized structure may include nodes relating to any part of the insurance application. For example, in a first notice of loss application, an organized structure may include nodes relating to the witnesses of an accident, the insurance policy information of an insurance customer, or other aspect of an insurance claim. With regard to the previous example, an insurance claim agent may encounter one or more nodes in processing an insurance claim.

To maintain the organization of the web pages, nodes, containers, and questions, the insurance claim processing computer system may employ various evaluative expressions, also known as rules, directed to each of these elements. For example, the insurance claim processing computer system may have rules relating to the display of questions, to the navigation of web pages, and to evaluating whether answers to the questions conflict with expected answers or previously given answers.

Because the insurance claim processing computer system may have many rules, maintaining these rules and creating additional rules is often a daunting task. Hence, a rule generation system assists in the creation and maintenance of these rules.

FIG. 1shows an example of the rule generation system102. The rule generation system102includes several components for adding, maintaining, expiring or deleting evaluative expressions used by the insurance claim processing computer system. In one implementation, the rule generation system102includes a display104, a network interface106, a processor108, and various input/output devices110, such as keyboards, mice, hard drives, floppy drives, optical disk drives, or other input/output devices. The rule generation system102also includes a memory storage device112that stores executable instruction sets114that are executable by the processor108. The memory storage device112also stores an evaluative expression database116that implements an evaluative expression framework118, which defines different categories of evaluative expressions.

The rule generation system102may generate many different categories of the evaluative expressions. As previously discussed, the different categories of evaluative expressions may relate to the web pages of the insurance claim processing computer system, navigating through the web pages of the insurance claim processing computer system, determining whether discrepancies exist in the insurance claim processing computer system, or other aspects. In one example, the different categories of evaluative expressions may include, but are not limited to, page display rules, navigation rules, and discrepancy rules. However, in other examples, the rule generation system102also may generate, modify, or otherwise maintain other categories of evaluative expressions.

In one implementation, page display rules determine whether an element of the insurance claim processing computer system, such as a question for an insurance customer, should be visible or not visible on a web page. For example, if the page display rule evaluates to a predetermined result, such as Boolean true, the element is visible on the web page; otherwise, if the page display rule evaluates to a different predetermined result, such as Boolean false, the element is not visible on the web page.

Navigation rules define the order in which web pages are displayed. For example, a navigation rule may determine which web page should be navigated to when leaving the current web page. However, another navigation rule may determine the order in which the web pages are displayed.

Discrepancy rules may determine whether there are discrepancies in the insurance claim processing computer system. Examples of discrepancy rules include evaluative discrepancy rules and node result discrepancy report rules. In general, evaluative discrepancy rules determine whether data discrepancies exist in the insurance claim processing computer system, and node result discrepancy report rules determine whether there are node discrepancies in the insurance claim processing computer system. The rule generation system102may also support other categories of discrepancy rules.

In addition to the various categories of rules, the rule generation system102may support different types of evaluative expressions within those categories. In one implementation, the rule generation system102supports at least two evaluative expression types: a common rule type and an advanced rule type. The common rule type may define rules that have commonly-used parameters or commonly-used evaluative expressions. A common rule may define evaluative expression parameter categories and assign predetermined evaluative expression parameter values to the various evaluative expression parameter categories. In contrast, the advanced rule type may be one or more system-configured or user-configured rules that have a custom set of parameters or a custom set of evaluative expressions. The rule generation system102may be further operative to generate a rule that includes rules from both the common rule type and the advanced rule type. In this implementation, common rule types and advanced rule types are examples of different types of rules. The rule generation system102also may be operative to support different types of rules other than common rule types and advanced rule types.

The rule generation system102may be in communication with multiple insurance claim processing center employee client computers122-126through a network120. The insurance claim processing center employee client computers122-126may include a developer client computer122, a question programmer client computer124and an insurance claim agent client computer126. The client computers122-126may have different categories of access levels for accessing the rule generation system102. For example, the developer client computer122may have the highest tier access level, the question programmer client computer124may have a mid-tier access level, and the insurance claim agent127may have the lowest tier access level.

The different access levels may grant different categories of access to the rule generation system102. For example, the highest tier access level may grant access to modify the executable instruction sets114, the evaluative expression framework118, or any other components104-118of the conversational question generation system102. In contrast, the mid-tier access level may restrict access to activities relating to evaluative expressions, such as generating the different categories of rules, modifying one or more rules, or removing rules from the evaluative expression database116. Finally, the lowest tier access level may restrict access to displaying rules and providing parameters to the various categories of rules.

Furthermore, the different access levels may be further subdivided into additional access levels. For example, the mid-tier access level may distinguish between basic users and advanced users. In general, the rule generation system102assigns a basic user to be a business analyst with limited exposure to technology, and assigns an advanced user to be an individual who has a solid understanding of the supporting technology of the insurance claim processing computer system. In one implementation, the rule generation system102permits an advanced user to set any property of a rule when creating and editing a rule. In contrast, the rule generation system102limits the basic user such that the basic user may only enter a subset of the properties of a rule. In addition, the lowest tier access level and the highest tier access level may distinguish between different categories of users accessing the rule generation system102.

Table Structures

FIG. 2shows an example of various modules212-220implemented by the executable instruction sets114ofFIG. 1in communication with the evaluative expression database116, and shows additional details regarding the evaluative expression framework118. In general, the evaluative expression framework118supports the various categories of rules. In one implementation, the evaluative expression framework118includes database tables202-210that contain parameter values for multiple different categories of rules. In the example ofFIG. 2, the evaluative expression framework118includes an evaluative expression table202, an evaluative expression support table204, an evaluative expression text table206, an evaluative expression association table208, and a common evaluative expression table210. In other examples, the evaluative expression framework118may include additional or fewer categories of rules to achieve the functionality described herein.

In general, the common evaluative expression table210includes criteria that govern the order and contents in which an insurance claim processing computer system places and displays information to a user. The placing and displaying of information may be further based on the type of insurance application that uses the common rule. For example, a common rule may be assigned to a first notice of loss insurance application or may be assigned to an underwriting insurance application. Assignment to other insurance applications is also possible. The common evaluative expression table210includes multiple evaluative expression entries that define the parameters for a rule of a common rule type. Table 1 below shows one implementation of the evaluative expression table210. Table 1 includes a column for entry names, the category of data stored by the entry, whether the entry is initially set to a null value, whether the entry is used as a primary key, and whether the entry is used as a foreign key. In general, the term “primary key” refers to an entry or field that serves as a unique identifier of a specific row in a table. In general, the term “foreign key” refers to an entry or field that identifies a column or a set of columns in one (referencing) table that refers to a column or set of columns in another (referenced) table. Alternative arrangements of the common evaluative expression table210are also possible. For example, the common evaluative expression table210may include more or less entries than shown in Table 1.

Each of the entries of the common evaluative expression table210may correspond to an evaluative expression parameter for a rule associated with a common rule type. The N_CNV_COMM_RULE_ID entry represents a common rule identifier parameter that is a unique identifier for a common rule. The common rule identifier parameter for the N_CNV_COMM_RULE_ID entry may be generated by the rule generation system102or by the insurance claim processing computer system.

The N_INSURANCE APPLICATION_ID entry represents a common rule insurance application identifier parameter whose value is a unique identifier for the insurance application to which the common rule is assigned. For example, the N_INSURANCE APPLICATION_ID entry may indicate that the common rule is assigned to a first notice of loss insurance application of the insurance claim processing center. As another example, the N_INSURANCE APPLICATION_ID entry may indicate that the common rule is assigned to an underwriting insurance application of the insurance claim processing center.

The C_CATEGORY entry represents a common rule code/decode category parameter. In general, the common rule code/decode category parameter represents a predetermined value for a category of related items. For example, the predetermined value of the common rule code/decode category parameter may be a numerical value of “18,” which may represent the countries of the world. The common rule code/decode category parameter may have one or more associated common rule code/decode category item parameters. A common rule code/decode category item parameter may represent a predetermined value for a specific item from a category of related items. For example, the common rule code/decode category item parameter value may be the numerical value of “001,” which, in combination with the common rule code/decode category parameter value of “18,” would represent the United States of America. In this example, the C_CATEGORY entry would store the numerical value “001.” However, in other examples, the common rule code/decode category item parameter value of “001,” may represent another item based on the parameter value of the common rule code/decode category parameter. In addition, when the common rule is displayed, an evaluative expression communication interface may also display one or more category items associated with the common rule code/decode category parameter as selectable parameter values for the common rule. Examples of common rules that may be displayed according to the C_CATEGORY entry include the states of the United States of America, the countries of the world, Lines of Business, Type of Loss, and other related items.

The N_DISPLAY_COL entry represents a common rule display parameter whose value is used by an insurance application of the insurance claim processing computer system to determine which code/decode column to display. The code/decode columns may include the C_CATEGORY entry, a business processing entry that is an alphanumeric representation of a category item associated with the C_CATEGORY entry, a short description entry that is a short description of the business processing entry, and a long description entry that is a long description of the business processing entry. Other code/decode columns are also possible. The N_DISPLAY_COL entry may be assigned any number of numerical values. For example, a value of “1” may cause the display of the contents of the business processing entry, a value of “2” may cause the display of the contents of the short description entry, and a value of “3” may display the contents of the long description entry.

In addition, the combination of a common rule code/decode category parameter value and business processing entry may cause the rule generation system102to display a predetermined value, such as the value of the short description entry or the value of the long description entry, to the user.

The N_CODE_SORT_COL entry represents a common rule sort parameter whose value determines the code/decode column to sort. In one implementation, the rule generation system102is configured to display items in order of the business processing entry, the short description entry, the long description entry, or any other entry. For example, a value of “1” may cause sorting on the contents of the business processing entry, a value of “2” may cause sorting on the contents of the short description entry, and a value of “3” may cause sorting on the contents of the long description entry.

The N_CTGY_SORT_SEQ entry represents a common rule position parameter whose value identifies the position in an evaluative expression communication interface where the code/decode values associated with the code/decode category parameter values are displayed.

The C_GROUP_RMU_KEY entry represents a common rule RMU parameter whose value is the RMU key for display of the group header information. In general, an RMU key is a look-up value for a dynamic link library that returns a literal representation of a key.

The M_QUES_XML_NM entry represents a common rule name parameter whose value is a text representation of the rule name. The common rule name parameter may be used in searching for the rule by the insurance claim processing computer system.

The D_EFFECTIVE entry represents a common rule effective parameter whose value indicates the effective calendar date of the common rule. Similarly, the D_EXPIRATION entry represents a common rule expiration parameter whose value indicates the expiration date of the common rule. In one implementation, the D_EFFECTIVE entry indicates the calendar day on which the insurance claim processing computer system should begin using or displaying a common rule, and the D_EXPIRATION entry indicates the calendar day on which the insurance claim processing computer system should stop using or displaying a common rule.

The common evaluative expression table210may also have computer system entries that represent parameters whose values are generated by the insurance claim processing computer system. For example, the C_RCD_DEL entry, the D_CREATE_TS entry, the D_LAST_UPDT_TS entry, the N_LAST_MOD entry, the N_LAST_UPDT entry, and the N_SYSTEM_MOD entry are examples of entries that have parameter values that are automatically generated by the insurance claim processing computer system. In other implementations, the common evaluative expression table210may have more than or less than the number of computer system entries shown in Table 2.

The C_RCD_DEL entry represents a deleted parameter whose value identifies whether a common rule is marked as deleted. In one implementation, the common rule is logically deleted from the evaluative expression database116and not physically deleted from the evaluative expression database116. However, in other implementations, the common rule may be physically deleted from the evaluative expression database116.

The D_CREATE_TS entry represents an added calendar date parameter whose value indicates a calendar date for when the common rule was added to the table. The D_LAST_UPDT_TS entry represents an updated calendar date parameter whose value indicates when the common rule was last updated. The N_LAST_MOD entry represents a user parameter whose value indicates the user who last updated or created the common rule in the evaluative expression database116. The N_LAST_UPDT entry represents a parameter whose value changes every time a record is modified. In one implementation, the N_LAST_UPDT is updated by the insurance claim processing computer system and is used by optimistic locking. The N_SYSTEM_MOD entry represents a parameter whose value indicates the rule generation system102that updated the common rule.

In addition to a common evaluative expression table210, the evaluative expression framework118may also include an evaluative expression association table208. In one implementation, the evaluative expression association table208operates as a linking table between the tables202-210by providing rule association types for rules in the various evaluative expression categories. The entries of the evaluative expression association table208describe the rule association type for a rule.

Table 2 shows an example of one implementation of the evaluative expression association table208. Alternative arrangements of the evaluative expression association table208are also possible. For example, the evaluative expression association table208may include more or less entries than shown in Table 2. The evaluative expression association table208may also have entries similar or identical to the entries found in the common evaluative expression table210. For purposes of brevity, where the evaluative expression association table208has entries similar to the common evaluative expression table210, a discussion of those entries has been omitted.

The N_CONV_RULE_ASN_ID entry represents a system rule association identifier parameter whose value is a unique numerical value. The system rule association identifier parameter value may be generated by the rule generation system102or another system, such as the insurance claim processing computer system.

The N_CONV_TEXT_ID entry represents a system rule text identifier parameter whose value is a unique value that identifies a message text. The system rule text identifier parameter value may be generated by the rule generation system102or another system, such as the insurance claim processing computer system.

The N_RULE_SEQ entry represents a rule sequence parameter whose value indicates the order in which one or more rules should be evaluated.

The PAGETYPE_ID entry represents a web page type identifier parameter whose value is a unique value that identifies the web page to which a rule is associated. For example, a web page type identifier parameter value of “INSUREDVEHTLE” represents that the web page of the insured vehicle total loss evaluator is associated with the rule. The web page type identifier parameter value may be generated by the rule generation system102or another system, such as the insurance claim processing computer system.

The N_QUESTION_ID entry represents a question identifier parameter whose value is a unique value that identifies a question in the insurance claim processing computer system. The question identifier parameter value may be generated by the rule generation system102or another system, such as the insurance claim processing computer system.

The N_INSURANCE APPLICATION_ID entry represents an insurance application identifier parameter whose value is a unique identifier that identifies an insurance application in the insurance claim processing computer system. Examples of insurance applications in the insurance claim processing computer system include a first notice of loss insurance application and an underwriting insurance application.

The C_RULE_ASSOC_TYP entry represents a rule association type parameter whose value is a code/decode value identifying the evaluative expression category of the rule. The rule association type parameter value may be a predefined value, such as a numerical value that identifies whether a rule is a display rule, a navigation rule, or a discrepancy rule. For example, display rules may be associated with the value of “1,” navigation rules may be associated with the value of “2,” and discrepancy rules may be associated with the value of “3.” Other values are also possible depending on the number and type of evaluative expression categories implemented in the rule generation system102.

The M_CONTAINER_NM entry represents a rule container parameter whose value indicates the identification number of the container where a rule is located. In general, a container is a sub-section of a web page. In one implementation, the rule container parameter is assigned a value when the C_RULE_ASSOC_TYP entry identifies that the rule is a display rule.

The T_CONV_RULE entry represents a multiple rule name parameter. The T_CONV_RULE entry stores multiple rule names from the M_RULE_NM entry of the evaluative expression table202. The rule generation system102or the insurance claim processing computer system refers to the T_CONV_RULE entry to combine the evaluative expressions represented by each of the rule names into one complete evaluative expression. Rule generation system102or the insurance claim processing computer system evaluates and expands the complete evaluative expression at run time.

The N_NAV_RULE_TRUE entry represents a rule navigation parameter whose value indicates the web page in the insurance claim processing computer system where the insurance claim processing computer system should navigate to when the navigation rule associated with the rule navigation parameter evaluates to a predetermined value, such as Boolean true. In some implementations, a web page may have multiple navigation rules. Where a web page has multiple navigation rules, the insurance claim processing computer system uses the first rule navigation parameter of a navigation rule that evaluates to the predetermined value, such as Boolean true, to determine the web page to which the insurance claim processing computer should navigate. A keyword may be assigned to the N_NAV_RULE_TRUE entry to also indicate the web page to which the insurance claim processing computer system should navigate. An example of a keyword is “NAVNEXT,” which would indicate to the insurance claim processing computer system that the insurance claim processing computer system should navigate to the next sequential web page after the current web page.

The N_NAV_RULE_FALSE entry represents a rule navigation parameter whose value indicates the web page in the insurance claim processing computer system where the insurance claim processing computer system should navigate to when the navigation rule associated with the rule navigation parameter evaluates to a predetermined value, such as Boolean false. In some implementations, a web page may have multiple navigation rules. Where a web page has multiple navigation rules, the insurance claim processing computer system may use the last rule navigation parameter of a navigation rule that evaluates to the predetermined value, such as Boolean false, to determine the web page to which the insurance claim processing computer should navigate. A keyword may be assigned to the N_NAV_RULE_FALSE entry to also indicate the web page to which the insurance claim processing computer system should navigate. An example of a keyword is “NAVNEXT,” which would indicate to the insurance claim processing computer system that the insurance claim processing computer system should navigate to the next sequential web page after the current web page.

The M_CONV_QUESTION TEXT_NM_UC entry represents an uppercase container name parameter whose value is the name of the container on which the rule appears. The insurance claim processing computer system may use the uppercase container name parameter to facilitate name searches in the evaluative expression database116.

Furthermore, the evaluative expression framework118may also include the evaluative expression text table206. In one implementation, the evaluative expression text table206contains entries for the text of discrepancy messages associated with discrepancy rules. The evaluative expression text table206may also support the internationalization of discrepancy messages.

Table 3 shows an example of one implementation of the evaluative expression text table206. Alternative arrangements of the evaluative expression text table206are also possible. For example, the evaluative expression text table206may include more or less entries than shown in Table 3. The evaluative expression text table206may also have entries similar or identical to the entries found in the other tables202-210. For purposes of brevity, where the evaluative expression text table206has entries similar to the tables202-210, a discussion of those entries has been omitted.

In one implementation, the entries of the evaluative expression text table206correspond to a text parameter of a rule. The parameter values for the text parameters may be provided by any number of actors or systems. For example, the text parameter values may be provided by an insurance claim agent, provided by an insurance customer using a graphical user interface, or another provided by system in communication with the rule generation system102.

The N_CONV_TEXT_ID entry represents a system text identifier parameter whose value is a unique numerical value. The system text association identifier parameter value may be generated by the rule generation system102or another system, such as the insurance claim processing computer system.

The N_SEQUENCE_NUM entry represents a sequence number parameter whose value is a sequence number when the message text of a rule is greater than a predetermined rule text character limit. In one implementation, the rule text character limit is 4000 characters. In this implementation, when the number of characters in the rule text of a rule is less than 4000 characters, the N_SEQUENCE_NUM parameter value is 0. However, when the number of characters in the rule text of a rule is less than 4000 characters, the N_SEQUENCE_NUM parameter value starts at a predetermined value, such as the number 1, and as additional rows of rule text are added, the N_SEQUENCE_NUM parameter value is incremented by a predetermined value, such as being incremented by 1, and the incremented parameter value is associated with the added rule text.

The C_LOCALE entry represents a rule language parameter whose value is a predefined value that indicates the language of the rule text. The C_LOCALE entry enables the use of multiple languages for a rule. A rule may have multiple C_LOCALE entries. In one implementation, the C_LOCALE entry indicates a number and the number is associated with a language. For example, the number “001” may be associated with “English” and the number “245” may be associated with French. In this example, a rule that is associated with multiple C_LANGUAGE entries is displayable in multiple languages. The language of the rule text may be selected based on input provided by a user, based on a selection by the rule generation system102, or based on selection by the insurance claim processing computer system.

The C_UPPERCASE_IND entry represents an uppercase indicator parameter whose value is assigned a logic value, such as a Boolean true value or a Boolean false value. In one example, a Boolean true value indicates that the text associated with a rule is displayable in uppercase alphanumeric characters, and a Boolean false value indicates that the text associated with a rule is displayable in both lowercase and uppercase alphanumeric characters. The insurance claim processing computer system may refer to the C_UPPERCASE_IND entry when performing text searches for rules in the evaluative expression database116.

The T_MSG_TEXT entry represents a rule message text parameter whose value is a text message associated with a rule. For example, the rule message text parameter may be a text message associated with a discrepancy message or other rule.

The M_CONV_TEXT_NM represents a rule text name parameter whose value is a unique identifying name of the rule text associated with the rule. The rule text name parameter value may be used by the rule generation system102, by the insurance claim processing computer system, or any other system, for searching and selecting the rule text associated with the rule.

The C_DISC_MSG_IND entry represents a discrepancy message indicator parameter that indicates whether the text is used for a discrepancy rule or for a question.

Additionally, the evaluative expression framework118may also include the evaluative expression support table204. In one implementation, the evaluative expression support table204contains entries that support creating a common rule, an advanced rule, or a combination of the rule types.

Table 4 shows an example of one implementation of the evaluative expression support table204. Alternative arrangements of the evaluative expression support table204are also possible. For example, the evaluative expression support table204may include more or less entries than shown in Table 4. The evaluative expression support table204may also have entries similar or identical to the entries found in the other tables202-210. For purposes of brevity, where the evaluative expression support table204has entries similar to the tables202-210, a discussion of those entries has been omitted.

The N_CONV_RULE_LIB_ID entry is a primary support key parameter whose value is both a primary key of the evaluative expression support table204and a foreign key to the evaluative expression table202.

The T_COMMON_RULE entry is a common rule parameter whose value is the common portion of a rule. Where a rule does not have a common portion, the value of the common rule parameter may be a null value. The T_COMMON_RULE entry may refer to one or more entries, such as the T_RULE entry, of the evaluative expression table202.

The T_ADVANCED_RULE entry is an advanced rule parameter whose value is the advanced portion of a rule. Where a rule does not have an advanced portion, the value of the advanced rule parameter may be a null value. The T_ADVANCED_RULE entry may refer to one or more entries, such as the T_RULE entry, of the evaluative expression table202.

Furthermore, the evaluative expression framework118may also include the evaluative expression table202. In one implementation, the evaluative expression table202contains entries that define the parameters for a rule. The entries of the evaluative expression table202may refer to other entries of the tables204-210, or the entries of the tables204-210may refer to entries in the evaluative expression table202. A rule defined by the entries of the evaluative expression table202may be a common rule, an advanced rule, or combination rule that includes both a common rule and an advanced rule.

Table 5 shows an example of one implementation of the evaluative expression table202. Alternative arrangements of the evaluative expression table202are also possible. For example, the evaluative expression table202may include more or less entries than shown in Table 5. The evaluative expression table202may also have entries similar or identical to the entries found in the other tables204-210. For purposes of brevity, where the evaluative expression table202has entries similar to the tables204-210, a discussion of those entries has been omitted.

The N_CONV_RULE_ID entry represents a rule identifier parameter whose value is a unique identifier for a rule. The rule identifier parameter may be used as the primary key for the evaluative expression table202. The rule identifier parameter value may be generated by the rule generation system102or by another system, such as the insurance claim processing computer system.

The N_ORG_ENTY_ID entry represents an organization entity identification parameter whose value is a foreign key to the organization entity identification number of the employee who created the conversational question.

The M_RULE_NM entry represents a rule name parameter whose value is a unique set of alphanumeric characters that identify the name of the rule. The rule generation system102may provide that the rule name parameter value be in a preconfigured format. For example, rule generation system102may provide that the rule name parameter value start with “?^” and end with “^?,” such as in “?^BusinessRuleName1^?”. The M_RULE_NUM entry may be referenced by other tables204-210, such as the evaluative expression association table208.

The T_RULE entry represents an expression parameter whose value is the text expression of the rule. The expression parameter value may be written in the XML Path Language (“XPATH”) or other expression language. In addition, the format of the expression parameter value may be based on the evaluative expression category associated with the rule. For example, display rules and navigation rules may have a type of formatting for the expression parameter, while discrepancy rules may have another type of formatting. The expression parameter value may also be assigned a predetermined value, such as a Boolean value of “true” or “false,” to indicate that the rule should always evaluate to the predetermined value, such as to always evaluate as true or to always evaluate as false. Assigning a predetermined value to the expression parameter may provide organization of the web pages displayed by the rule generation system102or the insurance claim processing computer system, such as by eliminating questions or web pages from the system in an orderly fashion, or setting up questions or rules that do not affect the current insurance application.

The executable instruction sets114ofFIG. 2implement various modules that are used to populate the evaluative expression database116according to the evaluative expression framework118. In one implementation, the executable instructions sets114implement an evaluative expression parameter module212, a common evaluative expression module214, an advanced evaluative expression module216, a discrepancy evaluative expression module218, and an evaluative expression generator module220. However, in other examples, the executable instruction sets114may implement more or fewer modules that encompass the functionality described herein.

The evaluative expression parameter module212is also in communication with the common evaluative expression module214. The common evaluative expression module214is operative to receive common evaluative expression parameters for a rule. In general, rules of the insurance claim processing computer system may have parameters in common, and the common evaluative expression module214may be operative to define these parameters. In addition, the common evaluative expression parameters may be based on previously configured questions of the insurance claim processing computer system. Furthermore, the common evaluative expression parameters may vary by insurance application. In one implementation, during operation, the common evaluative expression module214communicates with the evaluative expression database116to determine the current insurance application, and displays the commonly-used parameters associated with the current insurance application. Examples of common evaluative expression parameters include FNOL Loss Type (Property, Auto, Liability, etc.), FNOL Cause of Loss (Collision, Comprehensive, Theft, etc.), Loss Location Country (USA, Canada, etc.), Loss Location State (New Jersey, Newfoundland, etc.). Other common evaluative expression parameters are also possible.

The evaluative expression parameter module212is also in communication with the advanced evaluative expression module216. The advanced evaluative expression module216is operative to define an advanced rule using a combination of advanced rule parameters and advanced rule operands. In one implementation, the advanced evaluative expression module216receives the advanced rule parameters as part of a manual entry procedure by a user, such as an insurance claim agent. In another implementation, the advanced evaluative expression module216implements an advanced parameter user input form that assists a user in formulating an advanced rule. The advanced parameter user input form helps a user define advanced rule parameters including, but not limited to, advanced rule attributes, advanced rule parameter values, advanced rule answer values, and advanced rule operands. The guided procedure then generates an advanced rule from the input provided by the user. The advanced evaluative expression module216may be operative to edit the received advanced rule parameters and advanced rule parameter values after the advanced rule is generated based on user-provided input.

Discrepancy rules that are configured as advanced rules may have additional advanced rule parameters. Where a user starts the process of creating a discrepancy rule using the advanced evaluative expression module216, the advanced evaluative expression module216also may receive a node count parameter value and a node attribute parameter value manually entered by a user or other system through a communication interface.

The evaluative expression parameter module212also communicates with the discrepancy evaluative expression module218. The discrepancy evaluative expression module218is operative to receive rule discrepancy parameters manually entered by a user. The discrepancy evaluative expression module218is further operative to display or modify the discrepancy messages associated with a discrepancy rule. For example, the discrepancy evaluative expression module218may be operative to display a message associated with a discrepancy rule when the discrepancy is evaluated to a predetermined value, such as Boolean true. The discrepancy evaluative expression module218also may be operative to associate discrepancy rules with questions of the insurance claim processing computer system using input provided by a user. The user may use a control, such as a graphically displayed button, to search for and attach a new discrepancy rule or change the message that is associated with the rule. The user may also associate a discrepancy rule with a previously configured question.

During operation, after the rule parameter values have been received for a rule, the evaluative expression parameter module212communicates with the evaluative expression generator module220to generate the rule. The evaluative expression parameter module212may communicate any number of rule parameter values to the evaluative expression generator module220including common rule parameter values, advanced rule parameter values, display rule parameter values, navigation rule parameter values, discrepancy rule parameter values, or other parameter values. The evaluative expression generator module220receives the rule parameter values from the evaluative expression parameter module212and generates a rule from these rule parameter values. In one implementation, the evaluative expression generator module220communicates with the evaluative expression database116to populate the entries of the tables202-210with the rule parameter values received from the evaluative expression parameter module212.

Detail Rule Parameter Interface

The modules212-220may implement one or more evaluative expression communication interfaces for receiving rule parameters. In one implementation, the evaluative expression parameter module212implements one or more evaluative expression communication interfaces as graphical user interfaces displayable in a web browser or other computer display program.FIG. 3shows one example of a display-detail-evaluative-expression communication interface300implemented by the evaluative expression parameter module ofFIG. 2.

As shown inFIG. 3, the display-detail-evaluative-expression communication interface300displays the details regarding a rule. The display-detail-evaluative-expression communication interface300may display the details regarding any of the categories of rules, including display rules, navigation rules, and discrepancy rules.

Selecting one of the interface selection controls312-316causes the display of one of several different evaluative expression communication interfaces. For example, selecting the detail parameter selection control312communicates to the evaluative expression parameter module212to display the detail rule parameter interface. The detail rule parameter interface generally displays details about a selected rule and where the selected rule is used in an insurance application. As another example, selecting the common rule selection control314communicates to the common evaluative expression module214to display one or more common-parameter-evaluative-expression communication interfaces. As a further example, selecting the advanced parameter selection control316communicates to the advanced evaluative expression module216to display one or more advanced-parameter-evaluative-expression communication interfaces. Other communication interfaces are also displayable, including discrepancy-message-evaluative-expression communication interfaces. Hence, a user may switch between the common-parameter-evaluative-expression communication interfaces, advanced-parameter-evaluative-expression communication interfaces, and discrepancy-message-evaluative-expression communication interfaces using the interface selection controls314-316.

The detail rule parameter interface also includes various display sections. In one implementation, the detail rule parameter interface includes a rule detail display section318and a location display section320. The rule detail display section318screen displays various rule parameters about a selected rule. The rule parameters may define one or more properties about a selected rule, such as the name of the rule, the application to which the rule belongs, whether the rule is a display, navigation, or discrepancy rule, when the rule should go into effect, when the rule should be no longer used, the user who created the rule and when the rule was created. In one implementation, during operation, the rule generation system102automatically generates a rule identifier parameter value for the rule, and automatically determines the user who created the rule and when the rule was created.

Table 6 shows an example of rule parameters displayed in the display section320and their associated entries in the evaluative expression table202. Table 6 lists the rule parameter, a brief description of the rule parameter, and the evaluative expression table entry from the evaluative expression table202associated with the rule parameter.

TABLE 6Rule Parameter NameBrief DescriptionEvaluative Expression EntryRule NameThe rule name.M_RULE_NMInitial focus in Add New or Create Like mode.Rule NumberThe rule identification number assigned by the insurance claimC_RULE_NBRprocessing computer system.Rule TypeThe rule category associated with the rule.C_RULE_NBRApplicationThe name of the application that the rule is used in.C_RULE_ASSOC_TYPEffective DateThe calendar on which the rule becomes effective.C_RULE_ASSOC_TYPInitial focus in Edit mode.Expiration DateThe calendar date on which the rule expires.D_EFFECTIVEInitiated byThe name of the user who created the rule.M_EXPIRATIONInitiated DateThe calendar date that the rule was initiated.N_ORG_ENTITY_IDLast Modified byThe name of the user that last modified the rule.D_CREATE_TSLast Modified dateThe calendar date that the rule was last modified.M_RULE_NM

The location display section320of the detail rule parameter interface displays rule parameters that relate to where in the insurance claim processing computer system the rule is used. The rule parameters displayed in the location display section320may be based on the evaluative expression category associated with the rule. For example, a display rule may have a different set of rule parameters displayed in the location display section320than a navigation rule. Similarly, a navigation rule may have a different set of rule parameters displayed in the location display section320than a discrepancy rule. However, it is also possible that rules of different evaluative expression categories, such as display rules and navigation rules, share similar or identical rule parameters that are displayed in the location display section320.

The location display section320may also include various links to parts of the insurance claim processing computer system where the rule is used. In one implementation, the links are implemented as hyperlinks. The links provided for the rule may vary depending on the category of the rule. For example, the location display section320may display one set of links for a display rule, another set of links for a navigation rule, and yet a further set of links for a discrepancy rule. As one example of links that are displayed, the location display section320may display links to each web page that is associated with a selected navigation rule. Alternatively, or in addition, the location display section320may display links for displaying windows that are associated with a selected navigation rule. As explained with reference toFIG. 8, as another example, where the selected rule is a discrepancy rule, the location display section320displays the process names that are associated with the discrepancy rule and further assists the user in associating a process to a discrepancy rule.

Table 7 shows an example of rule parameters displayable in the location display section320. Table 7 lists the rule parameters, a brief description of the rule parameter, and the evaluative expression category associated with the rule parameter.

TABLE 7EvaluativeRule ParameterExpressionNameBrief DescriptionCategoryQuestion TextThe text of the question that usesDisplaythe rule as a display rule.Question NameThe Question XML Name used as aDisplayhyperlink to a question details webpage for the listed questionContainer NameThe name of the container thatDisplayholds the question in the samerecord. The container name links toa web page for customizing thecontainer.Page NodeThe XML path (page node name) ofDisplaythe web page on which the questionappears.Page NameA hyperlink displaying the pageNavigationdisplay literal for the page that thenavigation rule is associated to.Navigation RuleDisplays where to navigate to if aNavigationTruerule is true.Navigation RuleDisplays where to navigate to if aNavigationFalserule is false.Process NameThe name of the process that willDiscrepancytrigger the running a discrepancywhen the process is completed.

The detail rule parameter interface also includes various controls302-310. The controls302-310control the detail rule parameter interface and may be configured for creating, editing, and viewing rule parameter values of a selected rule. One or more controls302-310may also be operative to instruct the evaluative expression parameter module212to display additional or alternative evaluative expression communication interfaces including a new-rule-evaluative-expression communication interface, an edit-display-evaluative-expression communication interface, an edit navigation evaluative expression communication interface, an edit-discrepancy-evaluative-expression communication interface, or other interfaces. The display-detail-evaluative-expression communication interface300may be configured for a view mode, such as shown inFIG. 3. Other evaluative expression communication interfaces, such as the new-rule-evaluative-expression communication interface may be associated with an add mode. Examples of other modes include an edit mode or other modes. Additional controls may be displayed in the detail rule parameter interface based on the mode of the evaluative expression communication interface. For example, a reset control element (not shown inFIG. 3) may be displayed when an evaluative expression communication interface is displayed that is associated with an edit mode.

In addition, using the controls302-310, a user may delete a rule, generate a new rule, generate a new rule using existing rule parameter values, expire a rule, etc. Any number of controls may be included in the display-detail-evaluative-expression communication interface300for modifying or manipulating rules. Table 8 lists an example of displayable controls in the detail rule parameter interface, a brief description of the controls, and the modes of the detail rule parameter interface associated with the controls.

TABLE 8Control NameBrief DescriptionModeAdd NewSelecting this control launches a new instance of the detailViewrule parameter interface in add mode.Create LikeSelecting this control while viewing a preconfigured ruleViewlaunches a new instance of the detail rule parameterinterface in add mode and uses the current rules criteria as astarting point to create a new rule.ExpireSets the rule's expiration to the current date.ViewDeleteDeletes an inactive unassociated rule from the evaluativeViewexpression tables.ResetResets the form to its last saved state.Add, EditMessage box requests confirmation of action if changes hadbeen made.Displayed in edit mode.BackReturns the system to previously viewed page.AddMessage box requests confirmation of action if changes hadbeen made.Displayed in edit mode.SaveSaves the data to the evaluative expression database.Add, EditDefault control in Edit mode.Validates syntax of advanced rules, if present.EditEnables the user to edit an existing rule.ViewDefault button in view mode

FIG. 3also shows that the display-detail-evaluative-expression communication interface300is associated with a view mode. In the view mode, the detail rule parameter interface of the display-detail-evaluative-expression communication interface300displays the controls of an add control302, a create-like control304, an expire control306, a delete control308, and an edit control310. In alternative implementations, the detail rule parameter interface may display other controls.

The add control302is operative to instruct the evaluative expression parameter module212to start the process of creating a new rule. The evaluative expression parameter module212then displays a new-rule-evaluative-expression communication interface associated with an add mode. The new-rule-evaluative-expression communication interface is further explained with reference toFIG. 6.

The create-like control304is operative to instruct the evaluative expression parameter module212to start the process of creating a new rule having rule parameter values similar to an existing rule. In general, the create-like control304is used in conjunction with a previously selected pre-existing rule. For example, the pre-existing rule may be selected by a user using the detail rule parameter interface. In one implementation, selecting the create-like control304causes the evaluative expression parameter module212to communicate with the evaluative expression database116to retrieve rule parameter values from the entries of the evaluative expression tables202-210for the previously selected pre-existing rule. The evaluative parameter module212then copies each of the rule parameter values associated with the previously configured rule and stores the copied rule parameter values in the memory storage device112. After copying each of the rule parameter values to the memory storage device112, the evaluative parameter module212then retrieves each copied parameter value and populates the evaluative expression tables202-210with the copied rule parameter values. The evaluative parameter module212then displays the copied rule parameter values using the detail rule parameter interface. In one implementation, after selecting the create-like control304, the detail rule parameter interface may prompt the user to provide a different rule parameter name value from the rule parameter value of the previously selected pre-existing rule.

The expire control306is operative to instruct the evaluative expression parameter module212to expire a rule. In one implementation of expiring a rule, the evaluative expression parameter module212sets the expiration date of the rule to the current calendar date. Alternatively, a user may provide an expiration date parameter value, which would instruct the evaluative expression parameter module212to expire the rule on the calendar date provided by the expiration date parameter value. The evaluative expression parameter module212may set the expiration date by communicating with the evaluative expression database112and modifying one or more of the evaluative expression tables202-210.

In some implementations of the rule generation system102, the evaluative expression parameter module212may prevent or prohibit the expiration of rules. For example, the evaluative expression parameter module212may prohibit the expiration of a rule where the rule is associated with a container, question, or other element of the insurance claim processing computer system. In prohibiting the expiration of a rule where the rule is associated with a container, the evaluative expression parameter module212may examine the associated M_CONTAINER_NM entry of the rule to determine whether the associated M_CONTAINER_NM entry is populated with a rule container parameter value. Where the associated M_CONTAINER_NM entry is populated with a rule container parameter value, the evaluative expression parameter module212may prohibit the expiration of the rule. In prohibiting the expiration of a rule where the rule is associated with a question, the evaluative expression parameter module212may examine the associated N_QUESTION_ID entry to determine whether the associated N_QUESTION_ID entry is populated with a question identifier parameter value. Where the associated N_QUESTION_ID entry is populated with a question identifier value, the evaluative expression parameter module212may prohibit the expiration of the rule.

The delete control308is operative to instruct the evaluative expression parameter module212to delete a rule. Depending upon the configuration of the insurance claim processing computer system, deleting a rule may be a logical deletion or a physical deletion. For example, a logical deletion includes marking one or more entries in the evaluative expression tables202-210that a rule has been deleted. A physical deletion may include removing one or more rows from the evaluative expression tables202-210associated with the rule. In a logical deletion, the evaluative expression parameter module212may populate one or more entries of the tables202-210with a value to indicate that the rule has been deleted. For example, in logically deleting a rule, the evaluative expression parameter module212may populate the C_RCD_DEL entry of the tables202-210. Alternatively, the evaluative expression parameter module212may communicate a delete command to the insurance claim processing computer system, which may then perform the logical deletion of the selected rule. In a physical deletion, the evaluative expression parameter module212may communicate a delete command to the insurance claim processing computer system, which may then perform the physical deletion of the selected rule.

The rule generation system102may also have safeguards in place relating to the deletion of a rule. For example, the rule generation system102may prevent or prohibit the deletion of a rule where the rule is an active rule; that is, the rule generation system102may prevent the deletion of a rule if the rule is in use by the insurance claim processing computer system or if the rule is still associated with containers, questions, or other entities. In prohibiting the deletion of a rule where the rule is associated with a container, the evaluative expression parameter module212may examine the associated M_CONTAINER_NM entry of the rule to determine whether the associated M_CONTAINER_NM entry is populated with a rule container parameter value. Where the associated M_CONTAINER_NM entry is populated with a rule container parameter value, the evaluative expression parameter module212may prohibit the deletion of the rule. In prohibiting the deletion of a rule where the rule is associated with a question, the evaluative expression parameter module212may examine the associated N_QUESTION_ID entry to determine whether the associated N_QUESTION_ID entry is populated with a question identifier parameter value. Where the associated N_QUESTION_ID entry is populated with a question identifier value, the evaluative expression parameter module212may prohibit the deletion of the rule.

FIGS. 4-5show other examples of evaluative expression communication interfaces implemented by the evaluative expression parameter module212when viewing different categories of rules.FIG. 4shows an example of a navigation-detail-evaluative-expression communication interface400that displays the details of a navigation rule using a detail rule parameter interface.FIG. 5shows an example of a discrepancy-detail-evaluative-expression communication interface500that displays the details of a discrepancy rule using a detail rule parameter interface. As shown inFIG. 4and inFIG. 5, the evaluative expression parameter module212displays different rule parameters depending on the category of the selected rule.

FIG. 6shows an example of a new-rule-evaluative-expression communication interface600implemented by the evaluative expression parameter module212for adding a new rule. In one implementation, during operation, a user provides various rule parameter values including a rule name parameter value, a rule type parameter value, an application parameter value, an activate date parameter value, an expiration data parameter value, and other values. In providing a rule name parameter value, the rule name parameter value may be an XML name. The evaluative expression parameter module212may perform one or more checks to determine whether a valid name was provided. For example, the evaluative expression parameter module212may use pattern-matching, regular expressions, a previously configured syntax, or other techniques to determine whether a valid name was provided for the rule name parameter value.

Referring toFIGS. 2,3, and6, the rule type parameter value may affect the display of the location display section320and the advanced evaluative expression communication interface of the advanced evaluative expression module216.

The evaluative expression parameter module212may have one or more preconfigured safeguards for the various rule parameters. The preconfigured safeguards may be stored as part of the executable instruction sets114, as part of the programming for the evaluative expression parameter module212, or stored in the memory storage device112and retrievable by the evaluative expression parameter module212. For example, when a new rule is added, the effective data parameter value for the rule may have a default calendar date of the following calendar date. Similarly, the expiration date may have a default date of a future calendar date. When adding a rule, the expiration date may be set to system default expiration date. In addition, during operation, the evaluative expression parameter module212may determine whether the expiration date parameter value is a calendar date prior to the current date. Similarly, the evaluative expression parameter module212may determine whether the effective date parameter value is a calendar date that occurs after the current date.

Some or all of the rule parameter values may be provided by the rule generation system102or the insurance claim processing computer system. For example, the rule generation system102may provide the “initiated by” parameter value and the initiated date parameter value. The “initiated by” parameter value may by the username or some other identifier of the current user adding the rule. The initiated date parameter value may be the date on which the rule was added or created.

FIGS. 7-8show examples of evaluative expression communication interfaces implemented by the evaluative expression parameter module212for editing different categories of rules.FIG. 7shows an example of an edit-display-evaluative-expression communication interface700for editing the properties of a display rule. In one implementation, the properties that are editable for a display rule include the effective date parameter value and the expiration date parameter value. However, in other implementations, alternative or additional parameters are also editable.

Although not shown, an edit navigation evaluative expression communication interface may be configured similarly to an edit-display-evaluative-expression communication interface. In one implementation, the properties that are editable for a navigation rule include an effective date parameter value and an expiration date parameter value. However, in other implementations, alternative or additional parameters are also editable.

FIG. 8shows an example of an edit-discrepancy-evaluative-expression communication interface800implemented by the evaluative expression parameter module212ofFIG. 2for editing the details of a discrepancy rule. In one implementation, the editable rule parameters for a discrepancy rule include the effective date parameter, the expiration date parameter, and the process name rule parameter. In other implementations, alternative or additional rule parameters are also editable.

Common Rules

Briefly referring back toFIG. 3, a user may view the common rules associated with a selected rule or may add common rules to a newly added rule using the common rule selection control314.FIG. 9shows an example of a display-common-evaluative-expression communication interface900implemented by the common evaluative expression module214ofFIG. 2for displaying common rules as common evaluative expression parameters. The display-common-evaluative-expression communication interface900displays various common rules902-908and evaluative expression communication interface controls910-912. The evaluative expression communication interface controls include a back control910and an edit control912. In this example, the common rules include an FNOL Cause of Loss common rule902, a Loss Location country common rule904, an FNOL Loss Type common rule906, and a Loss Location state908. In other examples, the common rules may include rules relating to countries, states, the type of accident, the cause of an accident, or other common rules.

Each of the common rules902-908includes common rule parameter values. In the example ofFIG. 9, the currently selected rule fromFIG. 3is associated with the four common rules902-908and one or more of their associated common rule parameter values. The common evaluative expression module214may read from one or more of the evaluative expression tables202-210to determine which common rules to display. For example, the common evaluative expression module214may retrieve the parameter value stored in the T_RULE entry of the evaluative expression table202or the T_COMMON_RULE entry of the evaluative expression support table204.

The evaluative expression module214is also operative to implement an add-common-evaluative-expression communication interface for adding common rules to a newly created rule or a previously configured rule.FIG. 10shows an example of an add-common-evaluative-expression communication interface1000for adding common rules and associated common rule parameters to a newly created rule or a previously configured rule. The add-common-evaluative-expression communication interface1000may include any number of controls, including a reset control1002and a save control1004. In one implementation, the common rules displayed on the evaluative expression communication interface1000are based on the insurance application associated with the rule and the evaluative expression tables202-210.

Using the evaluative expression communication interface1000, a user may select one or more parameter values from a common rule for associating with the selected rule. Where the user selects multiple parameter values from a common rule, the evaluative expression module214logically couples the common rule parameter values together, such as with a Boolean “OR” statement, and groups the common rule parameter values within parenthesis to create an evaluative expression string. The evaluative expression string may then be used as an XPath query or other query. An example of creating an evaluative expression string using a logical OR of multiple common rule parameter values is: (\\LossLocationState=‘Alabama’ OR \\LossLocationState=‘Alaska’ OR \\LossLocationState=‘Arizona’ OR \\LossLocationState=‘Arkansas’).

In addition, a user may select more than one common rule for associating with the selected rule. Where the user selects multiple common rules, the evaluative expression module214logically couples the common rule parameter values for the various common rules, such as with a Boolean “AND” statement, to create an evaluative expression string. The evaluative expression string may then be used in a predetermined query format, such as an XPath query or some other query format. An example of creating an evaluative expression string using a logical AND of multiple common rule parameter values is \\FNOLLossType=‘Automobile’ AND (\\FNOLCauseOfLoss=‘Collision’ OR \\FNOLCauseOfLoss=‘Comprehensive’) AND (\\LossLocationState=‘Alabama’ OR \LossLocationState=‘Alaska’ OR \\LossLocationState=‘Arizona’ OR \\LossLocationState=‘Arkansas’) AND \\LossLocationCountry=‘United States’. Other combinations of logical operators are also possible.

During operation, after the user has selected the common rules and common rule parameter values, the user may then associate the common rules and common rule parameter values with the selected rule. For example, by selecting the save control1004, the user indicates to the common evaluative expression module214to save the common rules associated with the selected rule. In one implementation, the common evaluative expression module214communicates the parameters and parameter values selected by the user to the evaluative expression generator module220. The evaluative expression generator module220may then communicate the parameter values selected by the user to the evaluative expression tables202-210. For example, the evaluative expression generator module220may populate the T_RULE entry of the evaluative expression support table204with the parameter values received from the common evaluative expression module214. Alternatively, or in addition, the evaluative expression generator module220may append the selected parameter values to a preexisting parameter value stored by the T_RULE entry of the evaluative expression support table204. In yet a further addition or alternative, the evaluative expression generator module220populates or appends values to other entries, such as the T_COMMON_RULE entry.

Advanced Rules (Navigation and Display Rules)

In addition to associating common rules, a user may also view or associate advanced rule parameters to a previously configured rule or a newly created rule. Using the advanced parameter selection control316(FIG. 3), a user may view or edit the advanced rule parameters for a rule, including display rules, navigation rules, and discrepancy rules. However, the rule generation system102may use the access level of a user to restrict or prevent the user from manipulating the advanced rule parameters for every category of a rule. For example, the rule generation system102may be operative to permit an advanced user to edit the advanced rule parameters for each of the rule categories. As another example, the rule generation system102may be operative to permit basic users to only edit the advanced rule parameters for display rules. Hence, using the access level of a user, the rule generation system102may be operative to grant different levels of access to the advanced rule parameters for the various rule categories.

FIGS. 11-15show various examples of building an advanced rule for a display rule using an advanced evaluation expression communication interface1100implemented by the advanced evaluative expression module216ofFIG. 2.FIG. 11shows an advanced evaluative expression communication interface1100for the display rule that includes a rule expression display section1102and an add rule display section1104. The rule expression display section1102is operative to display the advanced portion of a rule and may receive text input from a user. The add rule display section1104is operative to assist the user in building the advanced portion of the rule. The add rule display section1104may be in communication with the rule expression display section1102, such that selections made in the add rule display section1104appear in the rule expression display section1102.

The rule expression display section1102includes various controls for manipulating and verifying a rule. In one implementation, the rule expression display section1102includes a view full expression control1106, a clear control1108, and a validate expression control1110. The view full expression control1106is operative to instruct the advanced evaluative expression module216to display the entire rule, including the common portion and the advanced portion. In displaying the entire rule, the advanced evaluative expression module216may communicate with the evaluative expression tables202-210to retrieve one or more parameter values from the entries of the evaluative expression tables202-210, such as the T_RULE entry, the T_COMMON_RULE entry, or the T_ADVANCED_RULE entry. The clear control1108is operative to instruct the advanced evaluative expression module216to remove all of the advanced rules associated with the selected rule. The validate expression control1110is operative to instruct the advanced evaluative expression module216to validate the advanced rule displayed in the rule expression display section1102. The evaluative expression module216may validate the displayed advanced rule by determining whether the syntax of the advanced rule is correct or whether the advanced rule conforms to expected rules of a previously configured grammar. In one implementation, the syntax of the advanced rule may be validated by comparing the advanced rule, such as an XPath query, with a previously configured document, such as an XML document. Where the advanced rule does not conform to the XML document, the evaluative expression module216may display an error stating that the syntax is incorrect and that the advanced rule is invalid.

The add rule display section1104assists the user in building an advanced rule. The illustrated example of the add rule display section1104includes various expression controls, including parenthesis controls, a logical AND control, a logical OR control, a COMPLETE control. In other examples, any other logic may be selected or otherwise implemented with the add rule display section1104. The logical AND control, the logical OR control, and the COMPLETE control are operative to instruct the advanced evaluative expression module216to validate the criteria selected from the add rule display section1104, manipulate the selected criteria into a previously configured syntax, such as XPath, and append the criteria to the existing rule displayed in the view expression display section1102. During operation in this example, selection of the AND control causes the word AND to append to the end of the rule, the OR control causes the word OR to append to the end of the rule, and the COMPLETE control does not append any keywords to the end of the rule. Table 9 lists the controls for the add rule display section1004and provides a brief description of each.

TABLE 9Control NameBrief Description(Appends a “(” to the rule expression.)Appends a “)” to the rule expression.AndValidates and Creates the expression from the entered data in the Add Rules section,appends an “And” keyword and adds it to the Rule Expression text box.OrValidates and Creates the expression from the entered data in the Add Rules section,appends an “Or” keyword and adds it to the Rule Expression text box.CompleteValidates and Creates the expression from the entered data in the Add Rules sectionand appends it to the Rule Expression text box.In one implementation, the Complete control is configured to determine whether anyopen parenthesis or brackets remain in the rule and to close those open parenthesis orbrackets.

The add rule display section1104may also display one or more operators and operands for adding to the advanced portion of the rule. The displayed operators and operands may vary depending on the selected rule category. For example, a navigation rule or a display rule may have different operators and operands than a discrepancy rule. Table 10 lists an example of various display operators and operands, a brief description of each, and the category associated with the operator or operand.

TABLE 10Control NameBrief DescriptionRule CategoryStarting Page NodeAllows the user to select the page display name toDiscrepancybe used as the starting point when entering aNode Evaluation Discrepancy Report Rule.AddAdds the selected Starting Page Node to the RuleDiscrepancyExpression textbox when entering a NodeEvaluation Discrepancy Report Rule.Operand Type (1)Allows the user to select what type of operand isDisplay, Navigation,required to create the rule evaluation.DiscrepancyOperand (1)Displays the Question Text when a user hasDisplay, Navigation,selected a question type operand or displays aDiscrepancydropdown of the page node names when the userselects a node type operand.Select (Operand 1)Allows the user to search for a question.Display, Navigation,DiscrepancyOperand 1A combobox displaying all selectable nodes in theDisplay, Navigation,(Combobox)node count or node attribute evaluation.DiscrepancyEvaluate all instances of a question.When checked, the system evaluates all instancesDisplay, Navigation,of a question instead of a specific instance.DiscrepancyOperatorAllows the user to select the logical operator forDisplay, Navigation,the rule.DiscrepancyOperand Type (2)Provides the user with choice of Question orDisplay, Navigation,Value.DiscrepancyOperand (2)If the user has selected question as the secondDisplay, Navigation,operand the Operand (2) display the QuestionDiscrepancyText.Select (Operand 2)Enables the user to search for a question for theDisplay, Navigation,second operand.DiscrepancyValueProvides input for user to enter a value for the rightDisplay, Navigation,hand side of the operator.Discrepancy

The advanced evaluative expression module216may implement various safeguards for creating an advanced rule for a display rule or a navigation rule. The preconfigured safeguards may be stored as part of the executable instruction sets114, as part of the programming for the advanced evaluative expression module216, or stored in the memory storage device112and retrievable by the advanced evaluative expression module216. For example, the Operand Type (1) parameter may be pre-assigned a value, such as “Question,” when the selected rule is a display rule or a navigation rule. When creating the advanced portion of a navigation rule or a display rule, the advanced evaluative expression module216may further use absolute pathing to add the selected question to the advanced portion of the rule. In other configurations, the advanced evaluative expression module216may use relative pathing to add the selected question to the advanced portion of the rule. In general, absolute pathing is evaluating a rule starting with the highest node of the path and evaluating each node that matches the path. In contrast, relative pathing generally refers to evaluating a rule starting with a starting page node. With relative pathing, the rule generation system102starts its evaluation from the starting page node and evaluates inwards instead of evaluating the entire path.

The advanced evaluative expression module216may also have safeguards relating to the Operator parameter. For example, the advanced evaluative expression module216may determine whether the displayed operator choices are consistent with the type of evaluation. Where the user has selected numeric comparison, the advanced evaluative expression module216may determine that the valid operators are “+,” “−,” “=,” “<=,” “>=,” or “< >.” Where the user has selected a string comparison or a code value, the advanced evaluative expression module216may determine that the valid operators are “< >” and “=.” The advanced evaluative expression module216may determine that other valid operators are also possible.

Where the Operand Type (1) parameter value is “Question” and the Operand Type (2) parameter value is selected as “Value,” the advanced evaluative expression module216may prompt the user to provide a numerical value for the Operand (2) parameter value. In addition, when the Operand Type (2) parameter value is selected as “Value,” the available input for the parameter value matches the associated datatype of the question. The advanced evaluative expression module216may communicate with the insurance claim processing computer system to determine the datatype of the question. The datatype of a question may be any datatype including, but not limited to, String, integer, Boolean, or other datatype. As one example, where the selected question datatype is an integer, then a textbox that only accepts integers is displayed to the user. As another example, where the selected question datatype is a code/decode value, then a drop-down box displaying the available code/decode values is displayed to the user. Other values for the Operand Type (2) parameter are also possible. In addition, where the user selects “Question” as the parameter value for the Operand Type (2) parameter, the user may search for a question to be used as the Operand (2) parameter value. The rule generation system102may then perform a question value to question value comparison.

FIGS. 11-15show an example of selecting advanced rule parameters for a display rule to aid the reader.FIG. 11shows that no operators, operands, or values have been selected for the advanced portion of the display rule.FIG. 12shows that the parameter value for the Operand Type (1) parameter is “Question” and that the parameter value for the Operand (1) parameter is “Is the vehicle drivable?”FIG. 13shows that the parameter value for the Operator parameter is “=” and that the parameter value for the Operand Type (2) parameter is “Value.”FIG. 14shows an example of selecting “Question” for the parameter value of the Operand Type (2) parameter. Finally,FIG. 15shows the advanced portion of the rule in the rule expression display section1102using the parameter values fromFIGS. 12-13.

FIG. 16shows an example of an edit-discrepancy-evaluative-expression communication interface1600implemented by the evaluative expression parameter module ofFIG. 2. The edit-discrepancy-evaluative-expression communication interface1600is associated with an edit mode and displays a detail rule parameter interface for configuring the rule parameters of a node discrepancy report rule. After configuring the rule parameters of a node discrepancy report rule, a user may then configure the common rule parameters, or may proceed to the advanced rule parameters. For purposes of brevity, the details regarding the common rule parameters is hereby omitted, as the common rule parameters for a discrepancy rule may be similar or identical to the common rule parameters for a navigation or display rule.

However, a discrepancy rule may have a different set of advanced rule parameters compared with a navigation rule or a display rule.FIGS. 17-23show an example of building an advanced rule portion of a discrepancy rule using an advanced evaluative expression communication interface1100implemented by the advanced evaluative expression module ofFIG. 2. For the example shown inFIG. 17-23, the discrepancy rule is a node discrepancy report rule. As earlier discussed, a node discrepancy report rule is a rule that determines whether node discrepancies exist in the insurance claim processing computer system.

FIG. 17shows the advanced evaluative expression communication interface1100where no operands or operators have been selected for building a discrepancy rule. In particular the advanced evaluative expression communication interface1100is an example of configuring the advanced evaluative expression communication interface1100for a node result discrepancy rule. However, other configurations of the advanced evaluative expression communication interface1100are also possible.

Initially, when a user creates a node result discrepancy rule, the user is given the option to select a starting page node. As shown inFIG. 17, the advanced evaluative expression communication interface1100initially starts with a starting page node parameter and an Operand Type (1) parameter. Selecting the add control causes the advanced evaluative expression parameter module216to begin the evaluation of the advanced portion of the rule.

In contrast to a navigation rule or a display rule, a discrepancy rule is configurable with different operands from the Operand Type (1) parameter. Table 11 lists the examples of various parameter values for the Operand Type (1) parameter for a discrepancy rule. However, the parameter values for the Operand Type (1) may include more than or less than the parameter values shown in Table 11.

TABLE 11Parameter ValueBrief DescriptionQuestionThe Question operand evaluates a questions value toeither the value for that question as previouslyanswered or the value of another question.Comparing question to question may be used whenthe questions are of similar data type.Example: //WasAnyonesvehicleDamaged=’Y’Question AnswerThe Question Answer Count operand evaluates theCountnumber of times a question was answered with aspecific value.Example: Count(//IsIndivInjured[.=’Y’])=0)Question CountThe Question Count operand evaluates the number oftimes a question was presented during a conversation.Example: Count(//KeyFacts/WhatTypeofAccident)=0Node AttributeThe Node Attribute operand evaluates the value of aspecific attribute for a node in XML.Example: ./DamageDetails/@id=”Node CountThe node count evaluated how many times a specificnode appears in the XML node tree.Example: Count(./TotalLossEval) = 0

In creating a node result discrepancy rule, the rule generation system102is operative to track the page node name of the page node, such as through the use of the evaluative expression database116or through the insurance claim processing computer system. The rule generation system102uses tracking to help the advanced evaluative expression module216determine the type of pathing, relative or absolute, to use when generating the evaluative expression of the advanced portion of the rule. For example, the rule generation system102may detect that the selected question for the advanced portion of the rule is located on a child node of the starting node given in the Starting Node Page parameter. In this example, the advanced evaluative expression module216uses relative pathing to write the advanced portion of the rule because the node on which the question exists is a child node, and the rule generation system102uses the starting node from the Starting Node Page parameter in evaluating the rule. In contrast, where the rule generation system102detects that the selected question for the advanced portion of the rule exists on a node other than a child node of the starting node, the advanced evaluative expression module216uses the absolute path of question to generate the advanced portion of the rule. Similar determinations may be made where the Operand Type (1) parameter is selected to be Question Count, Question Answer Count, Node Count and Node Attribute evaluations.

Although the advanced evaluative expression module216may use different types of pathing for a node result discrepancy rule, the advanced evaluative expression module216may be operative to use one type of pathing for other types of rules. For example, the advanced evaluative expression module216may use absolute pathing for creating the advanced portion of an evaluative discrepancy report rule. Other types of pathing for other types of rules are also possible.

The advanced evaluative expression module216may also be operative to help a user search for a question in the insurance claim processing computer system for use in the advanced portion of the rule. In one implementation, where a user selects Question, Question Count or Question Answer Count as the parameter value for the Operand Type (1) parameter, the advanced evaluative expression module216displays a Select control1902(FIG. 19) on the advanced evaluative expression communication interface1100that helps the user to search for a Question. Selecting the Select control1902may display another or alternative communication interface that displays the questions in the insurance claim processing computer system or a search option for searching through the questions in the insurance claim processing computer system.

The rule generation system102may be operative to evaluate all instances of a question rather than a single instance of the question. In one implementation, the advanced evaluative expression module216displays an option via the advanced evaluative expression communication interface1100for indicating that the rule generation system102should evaluative all instances of a selected question. Where the user selects to evaluate all instances of a question, the advanced evaluative expression module216may append a syntax indicator for absolute pathing to the beginning of the evaluative expression of the advanced portion of the rule. For example, the advanced evaluative expression module216may append the characters “//” to the beginning of the advanced portion of the rule.

Selecting other types of operands for the Operand Type (1) parameter may present additional options to the user. For example, there may be additional options associated with the Node Count operand or the Node Attribute operand. In one implementation, where the user selects the Node Count operand or the Node Attribute operand, the advanced evaluative expression module216is operative to display on the advanced evaluative expression communication interface1100a drop-down list of all of the page node names in the insurance claim processing computer system.

After providing the operands and operators using the advanced evaluative expression communication interface1100, the user may then save the advanced rule by selecting a Save control. In one implementation, selecting the Save control causes the advanced evaluative expression module216to communicate the advanced portion of the rule to the evaluative expression generator module220. The evaluative expression generator module220may then communicate the advanced portion of the rule to one or more evaluative expression tables202-210. For example, the evaluative expression generator module220may append the advanced portion of the rule to the T_RULE entry associated with the rule, or may populate the T_ADVANCED_RULE entry associated with the rule. However, the evaluative expression generator module220may also populate other entries of the evaluative expression tables202-210. Moreover, the rule generation system102may be operative to prohibit or prevent the user from using the Save control until the rule is provided with a common portion, an advanced portion, or both.

FIGS. 18-20also show an example of building an advanced portion of a node discrepancy report rule.FIG. 18shows the advanced evaluative expression communication interface1100where the user has selected a starting page node for the advanced portion of the node discrepancy report rule.FIG. 19shows the advanced evaluative expression communication interface1100where the user selected the Question operand as the parameter value for the Operand Type (1) parameter.FIG. 20shows the advanced evaluative expression communication interface1100where the user selected the “=” operator for the Operator parameter and the Value operand for the Operand Type (2) parameter.FIG. 20further shows that the parameter values for the Value parameter correspond to the type of answers expected for the selected questions.FIG. 21shows that the user has added the criteria fromFIGS. 18-20to the advanced portion of the node discrepancy report rule.FIG. 21also shows that the user has selected a logical AND operator.

FIGS. 22-23show the user building a second advanced portion of the node discrepancy report rule ofFIGS. 17-21.FIG. 22shows that user has selected the Node Count operand for the Operand Type (1) parameter, that the parameter values for the Operand parameter correspond to the page node names in the insurance claim processing computer system, and that the Operand Type (2) parameter value is Value. Finally,FIG. 23shows that the user has added the second advanced portion to the node discrepancy report rule. As previously discussed, the advanced evaluative expression module216is operative to build upon previously configured advanced portions of rules, and in the example shown inFIG. 23, the advanced evaluative expression module216has read from the parameter values selected by the user and appended those parameter values to the first advanced portion previously created. AlthoughFIGS. 17-23provide an example of a user building an advanced rule with only two advanced portions, a user may add up to an infinite amount of advanced portions to a rule. Conversely, a rule may only have one or no advanced portion. The configuration possibilities for an advanced rule are unlimited.

Discrepancy Messages

FIGS. 24-25show examples of evaluation expression communication interfaces2400-2500implemented by the discrepancy evaluative expression module218ofFIG. 2. In general, the discrepancy evaluative expression module218is operative to associate text messages with a discrepancy rule, such as an evaluative discrepancy report rule or a node discrepancy report rule.FIG. 24shows an example of an evaluative expression communication interface2400implemented by the discrepancy evaluative expression module218for associating text messages with a discrepancy rule.

In one implementation, the evaluative expression communication interface2400includes three display sections: a discrepancy question display section2402, a discrepancy text display section2404, and a discrepancy locale display section2404. In one implementation, a question generally has three parts: a question name, a text name, and a text message. The discrepancy question display section2402is operative to display the question name of the question associated with the discrepancy rule. The discrepancy text display section2404is operative to display the name of the text message. The discrepancy locale display section2404is operative to display the text message associated with the discrepancy rule. Where the text message is displayable in more than one language, the discrepancy text display section2404displays the text discrepancy message in its various languages. Table 12 shows the various parameters displayed in the evaluative expression communication interface2400and their associated entries in the evaluative expression tables202-210.

Using the Select controls of the evaluative expression communication interface2400, a user may search for either the name of the question or the name of the text message associated with a question. For example, selecting the Select control of the discrepancy question display section2402allows the user to search for the question name of a question, select the question name of the question, and associate the question with the discrepancy rule. Associating the question with the discrepancy rule also associates the text message associated with the question with the discrepancy rule. As another example, selecting the Select control of the discrepancy text display section2404allows the user to search for the text name of a text message, and associate the text message with the discrepancy rule. Associating the text message with the discrepancy rule also associates the question associated with the text message with the discrepancy rule. While numerous text messages may be associated with a discrepancy rule, the discrepancy evaluative expression module218may restrict the number of text messages to one text message per discrepancy rule. Similarly, the discrepancy evaluative expression module218may require that at least one text message is associated with a discrepancy rule. However, the number of text messages associated with a discrepancy rule may be zero or unlimited.

In general, the text messages are stored in the evaluative expression database116. When the evaluative expression module218associates a text message with a discrepancy rule, the evaluative expression module218communicates with one or more tables202-210to store the association between the text message and the discrepancy rule.

The evaluative expression module218receives the selection of the text message. In general, the text message may be identified by a system identifier, numerical or otherwise. The evaluative expression module218then communicates the text message system identifier to the evaluative expression tables202-210to associate the text message with the discrepancy rule. For example, the evaluative expression module218may store the text message system identifier as a parameter value for the N_CONV_TEXT_ID entry of the evaluative expression association table208. The N_CONV_TEXT_ID entry of the evaluative expression association table208may then be used as a foreign key to the N_CONV_TEXT_ID entry, or other entries, of the evaluative expression text table206. The evaluative expression module218may also store the question name of the question associated with the text message in one of the evaluative expression tables202-210. Alternatively, a question may have a system identifier and the evaluative expression module218stores the question system identifier in one or more evaluative expression tables202to associate the question with the discrepancy rule.

The discrepancy evaluative expression module218is also operative to display an evaluative expression communication interface for viewing the discrepancy message details of a discrepancy rule.FIG. 25shows an evaluative expression communication interface2500implemented by the discrepancy evaluative expression module218for viewing the message details of a selected discrepancy rule. In displaying the message details of a selected discrepancy rule, the discrepancy evaluative expression module218is operative to retrieve the parameter values displayed by the display sections2402-2406from the evaluative expression tables202-210and the evaluative expression database116.

FIG. 26shows an example of logic flow2600for generating an evaluative expression using the rule generation system102ofFIG. 1. Initially, the evaluative expression framework118is implemented (2602). The evaluative expression parameter module212then receives the rule detail parameter values for a new rule (2604). Similarly, the common evaluative expression module214receives common rule parameter values (2606) for creating the common portion of a rule, or the advanced evaluative expression module216receives advanced rule parameter values (2608) for creating the advanced portion of a rule.

The rule generation system102then determines whether the created rule is a discrepancy rule (2610). Where the new rule is a discrepancy rule, the discrepancy evaluative expression module218receives discrepancy message parameter values from the user (2612). The discrepancy evaluative expression module218then stores the discrepancy message detail parameter values in the evaluative expression database116, such as in the entries of one or more evaluative expression tables202-210. Thereafter, the rule generation system102proceeds to store the rule parameter values (rule detail parameter values, common rule parameters, and advanced rule parameter values) in the evaluative expression database116. However, where the rule generation system102determines that the created rule is not a discrepancy rule, the rule generation system102may proceed to store the rule parameter values (rule detail parameter values, common rule parameters, and advanced rule parameter values) in the evaluative expression database116.

The elements illustrated in the Figures interoperate as explained in detail above. In implementing the system described above, one or more technologies may be used. However, the technologies are merely exemplary and alternative technologies may be used as well. For example, the system may be implemented in one or more computer programming languages. Examples of computer programming languages include ASP, C, and PHP. The system may also use various computer programming frameworks including the .NET framework available from Microsoft Corporation located in Redmond, Wash. The system may also use various database technologies including Microsoft SQL Server, also available from the Microsoft Corporation. In addition, the system may use markup languages, such as XML for transmitting data structures and additional data type definitions, HTML, DHTML, or other markup languages.

All of the discussion, regardless of the particular implementation described, is exemplary in nature, rather than limiting. For example, although selected aspects, features, or components of the implementations are depicted as being stored in memories, all or part of systems and methods consistent with the innovations may be stored on, distributed across, or read from other machine-readable media, for example, secondary storage devices such as hard disks, floppy disks, and CD-ROMs or other forms of ROM or RAM either currently known or later developed.

Furthermore, although specific components of innovations were described, methods, systems, and articles of manufacture consistent with the innovation may include additional or different components. For example, a processor may be implemented as a microprocessor, microcontroller, insurance application specific integrated circuit (ASIC), discreet logic, or a combination of other categories of circuits or logic. Similarly, memories may be DRAM, SRAM, Flash or any other category of memory. Flags, data, databases, tables, entities, and other data structures may be separately stored and managed, may be incorporated into a single memory or database, may be distributed, or may be logically and physically organized in many different ways. Programs may be parts of a single program, separate programs, or distributed across several memories and processors. The framework used herein may be any diagram, plan, scheme, organizational pattern, structure, schema, or combinations thereof. The framework may further describe one or more databases to a database management system, including the aspects of a database, such as attributes, fields, domains, and parameters of the attributes or fields.

While various embodiments of the innovation have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the innovation. Accordingly, the innovation is not to be restricted except in light of the attached claims and their equivalents.