リファレンス dateとboolean

また小物を確認。Date型のフィールドを記述する例はこちら。

rule "you are born now!!"
    when
    	$p : Person(birthDay >= "20090310")
    then     
        System.out.println("うまれたー");
end

で、実はこの書式でリテラルで記述するにはおまじないが必要です。

System.setProperty("drools.dateformat", "yyyyMMdd");

が必要です。しかもKnowledgeBuilderでKnowledgeBaseを取得(構築)する前に宣言しないと意味がありません。Knowledgeのtreeノードを構成するから当然といえば当然です、fileAllRulesの直前でやっても意味なし。

次にbooleanの記述方法。これは例のとおりなんですが

rule "you rich!"
    when
    	$p : Person(hasMoney == true)
    then     
        System.out.println("小遣い1週間5000円です");
end

という具合でtrue or falseで書きます、ていうかそれでしかダメです。0,1はダメ。ま、これぐらいですかね。