Don't think procedurally, just write the *rule* for a missing post ;-)
rule "missing fence post"
when
FencePost( $d: distanceFromStart )
FencePost( distanceFromStart == $d + 2*FencePost.GAP )
not FencePost( distanceFromStart == $d + FencePost.GAP )
then
System.out.println( "Missing: " + ($d + FencePost.GAP) );
end
-W
On 9 February 2012 16:41, mikeg <mike(a)thegoldners.com> wrote:
I need to write a rule to identify a missing element in a group of
facts.
For example, let us say I want to ensure that my fence has a fence post
every 8 feet. My fact declaration is as follows:
declare FencePost
identifier : String
distanceFromStart: Long
end
If I add the following facts into my session:
FencePost("a", 0)
FencePost("x", 8)
FencePost("e", 24)
I want a rule that will notify the user that there is a missing fence post
between "x" and "e".
I've been looking into using "collect" into a TreeSet/TreeMap to get a
collection sorted on the "distanceFromStart", but I cannot figure out how
to
compare adjacent elements in the collection.
Any ideas?
--
View this message in context:
http://drools.46999.n3.nabble.com/How-do-I-write-a-rule-to-detect-a-missi...
Sent from the Drools: User forum mailing list archive at
Nabble.com.
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users