(@VERSION= 020) (@OBJECT= color (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= cover_of_vegetation (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= crossed_nicholls (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= current_task (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= H_Calcite (@PROPERTIES= Value @TYPE=Boolean; ) ) (@OBJECT= H_Feldspar (@PROPERTIES= Value @TYPE=Boolean; ) ) (@OBJECT= H_granite (@PROPERTIES= Value @TYPE=Boolean; ) ) (@OBJECT= H_limestone (@PROPERTIES= Value @TYPE=Boolean; ) ) (@OBJECT= H_Quartz (@PROPERTIES= Value @TYPE=Boolean; ) ) (@OBJECT= hardness (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= megatexture (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= parallele_nicols (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= permeability (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= porosity (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= quartz (@PROPERTIES= Value @TYPE=Boolean; ) ) (@OBJECT= texrure (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= texrure_outdoor (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= texture (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= texture_outdoor (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= vegetation (@PROPERTIES= Value @TYPE=String; ) ) (@OBJECT= water_pass (@PROPERTIES= Value @TYPE=Boolean; ) ) (@RULE= outdoor (@LHS= (Is (current_task) ("outdoor")) (Is (color) ("white","grey")) (Is (texrure_outdoor) ("rough")) (Is (cover_of_vegetation) ("medium")) (Is (porosity) ("present")) ) (@HYPO= H_Calcite) (@RHS= (Execute ("message") (@STRING="@TEXT=is your sample looks like this?,\ @OK";)) (Show ("outd.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Execute ("message") (@STRING="@TEXT=your mineral is a calcite,\ @OK";)) (Execute ("message") (@STRING="@TEXT=your rock is probably a limestone,\ @OK";)) (Do (H_Calcite) (H_limestone)) ) ) (@RULE= microscope (@LHS= (Is (current_task) ("microscopic")) (Is (texture) ("crystals")) (Is (parallele_nicols) ("black and white")) (Is (megatexture) ("veins")) (Is (crossed_nicholls) ("color")) ) (@HYPO= H_Calcite) (@RHS= (Show ("micr.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Execute ("message") (@STRING="@TEXT=your mineral is calcite,\ @OK";)) (Execute ("message") (@STRING="@TEXT=your rock is probably a limestone,\ @OK";)) (Do (H_Calcite) (H_limestone)) ) ) (@RULE= hand_specimen (@LHS= (Is (current_task) ("hand speciment")) (Is (color) ("white","grey","pink")) (Is (texture) ("grains")) (Is (hardness) ("medium")) (Is (permeability) ("high")) ) (@HYPO= H_Calcite) (@RHS= (Execute ("message") (@STRING="@TEXT=is your sample looks like this?,\ @OK";)) (Show ("hasp.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Execute ("message") (@STRING="@TEXT=your mineral is calcite,\ @OK";)) (Execute ("message") (@STRING="@TEXT=your rock is probably a limestone,\ @OK";)) (Do (H_Calcite) (H_limestone)) ) ) (@RULE= R6 (@LHS= (Is (current_task) ("microscopic")) (Is (texrure) ("crystals","aggregate")) (Is (parallele_nicols) ("black and white","grey")) (Is (megatexture) ("none")) (Is (crossed_nicholls) ("grey","white","yellow")) ) (@HYPO= H_Feldspar) (@RHS= (Execute ("message") (@STRING="@TEXT=is you sample looks like this?,\ @OK";)) (Show ("fldms.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Execute ("message") (@STRING="@TEXT=your sample has feldspar,\ @OK";)) (Execute ("message") (@STRING="@TEXT=your rock is probably a granite,\ @OK";)) ) ) (@RULE= R4 (@LHS= (Is (current_task) ("outdoor")) (Is (color) ("white","yellow","grey")) (Is (texrure_outdoor) ("medium","smooth")) (Is (cover_of_vegetation) ("medium")) (Is (porosity) ("medium")) ) (@HYPO= H_Feldspar) (@RHS= (Execute ("message") (@STRING="@TEXT=is your sample looks like this?,\ @OK";)) (Show ("qfot.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Do (H_Feldspar) (H_granite)) (Execute ("message") (@STRING="@TEXT=your rock is probably a granite,\ @OK";)) (Execute ("message") (@STRING="@TEXT=your mineral is a feldspar,\ @OK";)) ) ) (@RULE= R5 (@LHS= (Is (current_task) ("hand speciment")) (Is (color) ("white","grey","yellow")) (Is (texrure) ("aggregate")) (Is (hardness) ("medium")) (Is (permeability) ("medium")) ) (@HYPO= H_Feldspar) (@RHS= (Execute ("message") (@STRING="@TEXT=is your speciment looks like this?,\ @OK";)) (Show ("fldhs.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Do (H_Feldspar) (H_granite)) (Execute ("message") (@STRING="@TEXT=your mineral is feldspar,\ @OK";)) (Execute ("message") (@STRING="@TEXT=your rock is probably a granite,\ @OK";)) ) ) (@RULE= R7 (@LHS= (Yes (H_Feldspar)) (Yes (H_Quartz)) ) (@HYPO= H_granite) ) (@RULE= R8 (@LHS= (Yes (H_Calcite)) ) (@HYPO= H_limestone) ) (@RULE= R9 (@LHS= (Is (current_task) ("outdoor")) (Is (color) ("transparent","white","grey","pink")) (Is (texture_outdoor) ("rough")) (Is (cover_of_vegetation) ("low")) (Is (porosity) ("low")) ) (@HYPO= H_Quartz) (@RHS= (Execute ("message") (@STRING="@TEXT=is your sample looks like this?,\ @OK";)) (Show ("qfot.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Do (H_Quartz) (H_granite)) (Execute ("message") (@STRING="@TEXT=your rock is probably granite,\ @OK";)) ) ) (@RULE= R10 (@LHS= (Is (current_task) ("hand speciment")) (Is (color) ("white","colorless","pink","grey")) (Is (texrure) ("grais","crystals","aggregate")) (Is (hardness) ("high")) (Is (permeability) ("low")) ) (@HYPO= H_Quartz) (@RHS= (Execute ("message") (@STRING="@TEXT=is your sample looks like this?,\ @OK";)) (Show ("qhs.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Do (quartz) (H_granite)) (Execute ("message") (@STRING="@TEXT=the mineral is a quartz,\ @OK";)) (Execute ("message") (@STRING="@TEXT=the rock is probably o granite,\ @OK";)) ) ) (@RULE= R11 (@LHS= (Is (current_task) ("microscopic")) (Is (texrure) ("crystals","grains","mixed")) (Is (parallele_nicols) ("black and white","grey")) (Is (megatexture) ("veins","aggregate","mixed")) (Is (crossed_nicholls) ("black and white","grey")) ) (@HYPO= H_Quartz) (@RHS= (Execute ("message") (@STRING="@TEXT=is your sample looks like this?,\ @OK";)) (Show ("qtmc.bmp") (@KEEP=FALSE;@WAIT=TRUE;)) (Execute ("message") (@STRING="@TEXT=the mineral is a quartz,\ @OK";)) (Execute ("message") (@STRING="@TEXT=the rock is probably a granite,\ @OK";)) ) )