> 1) The State Interface which is inside the TokenEvaluationEnging > interface (TokenEvaluationEngine.java, SESAT query API) has two > interesting functions/signatures: getKnownPredicates and > getPossiblePredicates. What's the difference between these two?
Predicates are stored as meta-data within each Clause. Each Clause is immutable and used within a flyweight pattern implementation. That is the one clause could be used simultaneously across many queries, in different positions within the queries, across different request. Therefore any predicate which is dependent on position within the query (or dependent on any other property external to the clause) can not be "known" to be true. But it could be "possible". For example MAGIC predicates only are true when they are the first word in the query. But when the clause is constructed it has no relation to the query requesting it to be created. The "possible" predicates must be checked, evaluated, again with the query also supplied. You should be able to see this pattern in various places. ~mck -- "Physics is the universe's operating system." Steven R Garman | www.semb.wever.org | www.sesat.no | www.sesam.no | _______________________________________________ Kernel-development mailing list [email protected] http://sesat.no/mailman/listinfo/kernel-development
