[Next] [Previous] [Up] [Top]

4.2.6 CRITIQUE MESSAGE GENERATION

4.2.6.1 The "Feature_Diagnosis" Hypothesis

Once Checklisting has been complete, and marks have been made to each feature object's checklist, message generation is initiated by forcing the evaluation of the Feature_Diagnosis hypothesis. The Feature_Diagnosis hypothesis is found in the rules listed in Table 11.

Table 11 Feature_Diagnosis Rules


Diagnosis_Rib_Unacceptably_Thick

Diagnosis_Rib_Too_Short

Diagnosis_Rib_Too_High

Diagnosis_Rib_Thick

Diagnosis_Rib_Draft_Problem

Diagnosis_Rib_Bottom_Unacceptably_Thin

Diagnosis_Part_Volume

Diagnosis_Boss_Unejectable

Diagnosis_Boss_Sink_Potential

Diagnosis_Boss_Core_Unejectable

Diagnosis_Boss_Core_Pin_Too_Long

Diagnosis_Boss_Bottom_Plane_Not_Perpendicular

The rule Diagnosis_Rib_Thick of Figure 36 illustrates two concerns of generating messages, that of reducing the number of diagnostic messages and that of customizing messages for the individual feature. The rule, like all other Diagnosis rules, first examines a feature's checklist to see if a particular item or items are Known (as opposed to Unknown). It then finds whether the value of the known parameters are True or not.

Were the rule not to check whether an item were Known, Nexpert Object is built in such a way as to ask the user directly what the value is (True or False) when the "Yes" conditions are examined. The conditions asking if a value is KNOWN or UNKNOWN allow only those features with Known checklist values to be used for further querying.

Figure 36 A Feature_Diagnosis Rule

(@RULE= Diagnosis_Rib_Thick

(@LHS= (Is (<|RIB|>.x_thck) (KNOWN))

(Is (<|RIB|>.x_unac_thck) (UNKNOWN))

(Yes (<|RIB|>.x_thck)) )

(@HYPO= Feature_Diagnosis)

(@RHS= (Do (2040) (<|RIB|>.x_dfct_code))

(Do ("Ribs may be too thick. Top width exceeds 3/4 wall thickness.") (<|RIB|>.x_message_1))

(Do ("Top width is [feature_top_width]. Wall thickness is [feature_wall_thickness].") (<|RIB|>.x_message_2))

(Execute ("Attach_Diagnosis") (@ATOMID=<|RIB|>;)) )

(Execute ("Write_Diagnostics") (@ATOMID=<|CRITIQUED|>;)) )

[Next] [Previous] [Up] [Top]