JESS: shadow facts and backward chaining

2008-10-20 Thread Skeptic 2000
 
Hi,
 
Does backward chaining works with shadow facts ? (generally) 
 
Is there some known limitations ?
 
If anyone has some examples to share, I would appreciate it.
 
Thanks.
 
_



JESS: Jess and JessDE vs Shadow facts

2008-10-01 Thread Skeptic 2000
Hi,
I'm currently looking to add Scala objects in Jess.It's working with Jess when 
I do a run. (Scala add the getter methods in the .class file)However, it's not 
working in JessDE even if a BeanInfo class file is also generated (in the same 
directory) by Scala (trough annotations).
 
I can join some sample files if needed, but I remember seeing a different 
behavior with shadow facts like this before using Scala.
 
Thanks.
 
_



JESS: jessDE performance

2008-09-30 Thread Skeptic 2000
 
Hi,
 
It seems to me that jessDE performances are not as good as they were (I'm using 
the latest version).
Is it something under work ?Can I do something to reduce the lag when I'm 
writing rules ? (I suspect it comes from the high number of templates I have).
 
Thanks.
_



RE: JESS: using annotations

2008-07-16 Thread Skeptic 2000
 
Yeah, I knew about BeanInfo classes, but after using them for a while, I'm not 
too satisfied (usability).
 
Of course I could write some code that produce a Deftemplate, but what I'm 
interested in is a solution that include JessDE working accordingly.
 
That's why I was thinking about replacing the default Bean introspection 
mechanism, but I'm not even sure it would work for JessDE. 
Thanks again.



> From: [EMAIL PROTECTED]> To: jess-users@sandia.gov> Subject: Re: JESS: using 
> annotations> Date: Wed, 16 Jul 2008 10:04:27 -0400> > Jess 7.1 still supports 
> JDK 1.4, so annotations aren't available. > Future Jess versions will support 
> Java 5+ .> > I like the fact that Jess supports the JavaBeans spec; it's nice 
> to be > able to refer people to that for details. It's one less "invention" > 
> that needs to be maintained by us.> > It's not true, of course, that you're 
> restricted to following naming > conventions, as JavaBeans includes the 
> BeanInfo concept for describing > variances from the conventions.> > In any 
> case, the jess.Deftemplate class has a complete public API; > you should be 
> able write a Userfunction in Java which turned classes > into Deftemplates 
> following annotations using whatever scheme you > like. If you do this, and 
> describe it in our Wiki, then other people > could use it too!> > > On Jul 
> 15, 2008, at 11:54 PM, Skeptic 2000 wrote:> > >> > Hi,> >> > Have you 
> considered using annotations instead of naming scheme to > > create 
> deftemplates associated to shadow facts ?> >> > Do you think it would be 
> difficult thing to "hack" ?> >> > Thanks.> >> >> > 
> -> Ernest 
> Friedman-Hill> Informatics & Decision Sciences, Sandia National Laboratories> 
> PO Box 969, MS 9012, Livermore, CA 94550> http://www.jessrules.com> > > > > > 
> > > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_



JESS: using annotations

2008-07-15 Thread Skeptic 2000
Hi,
Have you considered using annotations instead of naming scheme to create 
deftemplates associated to shadow facts ?
 
Do you think it would be difficult thing to "hack" ?Thanks.
 
_



RE: JESS: introspection of shadow facts from 7.0 to 7.1

2008-07-15 Thread Skeptic 2000
 
I just noticed that much of them are still working.The ones that are giving me 
errors are the one used in a defquery.
 
I'll try to build a simple example.
Thanks.



> From: [EMAIL PROTECTED]> To: jess-users@sandia.gov> Subject: Re: JESS: 
> introspection of shadow facts from 7.0 to 7.1> Date: Tue, 15 Jul 2008 
> 11:24:45 -0400> > Hmmm. You can certainly still redefine functions. Can you 
> show me an > example of what's going wrong?> > On Jul 15, 2008, at 10:32 AM, 
> Skeptic 2000 wrote:> > >> > Hi,> >> > Another "problem" encountered during 
> the 7.0->7.1 migration.> >> > I used to add empty user function defs in the 
> .clp file and add > > those functions programmatically.> >> > Now Jess seems 
> to ignore the re-definition and call the empty shell.> >> > It's a known 
> issue ?> >> > Thanks for help.> >> >> >> > > From: [EMAIL PROTECTED]> > > To: 
> jess-users@sandia.gov> > > Subject: Re: JESS: introspection of shadow facts 
> from 7.0 to 7.1> > > Date: Mon, 14 Jul 2008 18:04:27 -0400> > >> > > On Jul 
> 14, 2008, at 10:30 AM, Skeptic 2000 wrote:> > >> > > >> > > > Hi,> > > >> > > 
> >> > > > I updated from 7.0p1 to 7.1 recently and JessDE doesn't recognize> > 
> > > the stuff specified in my BeanInfo classes anymore (it still works> > > > 
> at runtime).> > > >> > > >> > > > Is there some official changes in the 
> introspection mechanisms?> > > >> > >> > >> > > Jess itself behaves the same 
> way as always in this area, but the> > > JessDE is being a better Eclipse 
> citizen right now; unfortunately > > this> > > means that some things don't 
> work as well. This should improve in > > the> > > next few point releases.> > 
> >> > > There are some things the new JessDE does much better than the old;> > 
> > for example, working with projects located outside the workspace > > works> 
> > > now.> > >> > > -> 
> > > Ernest Friedman-Hill> > > Informatics & Decision Sciences, Sandia 
> National Laboratories> > > PO Box 969, MS 9012, Livermore, CA 94550> > > 
> http://www.jessrules.com> > >> > >> > >> > >> > >> > >> > > 
> > > > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED] > > '> 
> > > in the BODY of a message to [EMAIL PROTECTED], NOT to the list> > > (use 
> your own address!) List problems? Notify [EMAIL PROTECTED] > > .> > > 
> > > >> >> 
> >> > -> Ernest 
> Friedman-Hill> Informatics & Decision Sciences, Sandia National Laboratories> 
> PO Box 969, MS 9012, Livermore, CA 94550> http://www.jessrules.com> > > > > > 
> > > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_



RE: JESS: introspection of shadow facts from 7.0 to 7.1

2008-07-15 Thread Skeptic 2000
 
Hi,
Another "problem" encountered during the 7.0->7.1 migration.
 
I used to add empty user function defs in the .clp file and add those functions 
programmatically.
 
Now Jess seems to ignore the re-definition and call the empty shell.
It's a known issue  ?
 
Thanks for help.



> From: [EMAIL PROTECTED]> To: jess-users@sandia.gov> Subject: Re: JESS: 
> introspection of shadow facts from 7.0 to 7.1> Date: Mon, 14 Jul 2008 
> 18:04:27 -0400> > On Jul 14, 2008, at 10:30 AM, Skeptic 2000 wrote:> > >> > 
> Hi,> >> >> > I updated from 7.0p1 to 7.1 recently and JessDE doesn't 
> recognize > > the stuff specified in my BeanInfo classes anymore (it still 
> works > > at runtime).> >> >> > Is there some official changes in the 
> introspection mechanisms?> >> > > Jess itself behaves the same way as always 
> in this area, but the > JessDE is being a better Eclipse citizen right now; 
> unfortunately this > means that some things don't work as well. This should 
> improve in the > next few point releases.> > There are some things the new 
> JessDE does much better than the old; > for example, working with projects 
> located outside the workspace works > now.> > 
> -> Ernest 
> Friedman-Hill> Informatics & Decision Sciences, Sandia National Laboratories> 
> PO Box 969, MS 9012, Livermore, CA 94550> http://www.jessrules.com> > > > > > 
> > > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_



JESS: introspection of shadow facts from 7.0 to 7.1

2008-07-14 Thread Skeptic 2000
 
Hi,
 
 I updated from 7.0p1 to 7.1 recently and JessDE doesn't recognize the stuff 
specified in my BeanInfo classes anymore (it still works at runtime).
 
 
Is there some official changes in the introspection mechanisms?
 
Thanks for help.
_



JESS: observing partial activation of rules

2008-07-12 Thread Skeptic 2000
 
Hi,
I'm curious how this : 
http://ctat.pact.cs.cmu.edu/docs/ctat_2_1/cog_tutor_jess_tools.html#why_not can 
be achieved.It is something that require a modification of Jess ? I don't see 
how to find that information using the public API.
 
Thanks for help.
 
 
_
Envoie un sourire, fais rire, amuse-toi! Employez-le maintenant!
http://www.emoticonesgratuites.ca/?icid=EMFRCA120

JESS: batch & require

2008-02-13 Thread Skeptic 2000
 
Hi,I'm having a problem when I batch two different .clp files that require the 
same third .clp file.
 
File1.clp
Some defclasses
 
File2.clp
require file1Some rules using file1 defclasses
 
File3.clp 
require file 1
Some other rules using file1 defclasses
rete.batch(file2);
rete.batch(file3);
 
=> Problems when creating templates from defclass.
If it doesn't ring a bell, I'll give more details.Thanks.
_



JESS: shadow fact + multislot

2007-11-20 Thread Skeptic 2000
 
Hi,
Would it be possible to have a shadow fact with a multislot ?
(I know a shadow fact can have an array-based property, but that wouldn't work 
with multislot pattern matching, what I'm looking for)Thanks
_
Envoie un sourire, fais rire, amuse-toi! Employez-le maintenant!
http://www.emoticonesgratuites.ca/?icid=EMFRCA120

RE: JESS: adding shadow facts in Jess

2007-08-09 Thread Skeptic 2000
 
 
Oops, I simply forgot the ( ) around the new and the Jess editor didn't see an 
error there.
JFL


From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: JESS: adding shadow facts in 
JessDate: Thu, 9 Aug 2007 15:30:58 -0400


 Hi, I'm trying to figure why the ruel2 doesn't fire : 
(defclass SFA ca.usherbrooke.astus.prototype.pedagogue.SFA)

 
(deftemplate x
(slot y)
)
 

(defrule rule1
(x) 
=>
(printout t "rule1 fired")
(add new SFA)
)
 

(defrule rule2
(SFA)
=>
(printout t "rule2 fired")
)
 

(reset)

(assert (x (y 1)))
(run) Here is the SFA class, but it's probably irrelevant. 
public class SFA {

private int a;
private int b;

public SFA() {
a = 3;
b = 4;
}

public int getA() {
return a;
}

public int getB() {
return b;
}
}

Soyez parmi les premiers à essayer Windows Live Mail. 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: adding shadow facts in Jess

2007-08-09 Thread Skeptic 2000
 
Hi,
 
I'm trying to figure why the ruel2 doesn't fire :
 
(defclass SFA ca.usherbrooke.astus.prototype.pedagogue.SFA)

 
(deftemplate x
(slot y)
)
 

(defrule rule1
(x) 
=>
(printout t "rule1 fired")
(add new SFA)
)
 

(defrule rule2
(SFA)
=>
(printout t "rule2 fired")
)
 

(reset)

(assert (x (y 1)))

(run)
 
Here is the SFA class, but it's probably irrelevant.
 
public class SFA {

private int a;
private int b;

public SFA() {
a = 3;
b = 4;
}

public int getA() {
return a;
}

public int getB() {
return b;
}

}
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

RE: JESS: dealing with shadow facts having null properties

2007-08-03 Thread Skeptic 2000
 
Well, I'm really sorry...JFL



> From: [EMAIL PROTECTED]> Subject: Re: JESS: dealing with shadow facts having 
> null properties> Date: Fri, 3 Aug 2007 15:23:03 -0400> To: 
> jess-users@sandia.gov> > Look closely at your stack trace: it says "Message: 
> Called method > threw an exception." If you called getCause() on the 
> JessException, > it would return a NullPointerException, and if you looked at 
> that > NPE's stack trace, you'd see it was thrown by the getA() method of > 
> your Test class. Here are the relevant lines from your code:> > private 
> Integer a = null;> ...> public int getA() {> return a;> }> > Note that the 
> type of variable "a" is Integer, but getA() is > returning an int. That means 
> that, due to auto-unboxing, the Java > compiler is going to emit code as if 
> you had written something like> > public int getA() {> return a.intValue();> 
> }> > > and since "a" is null, this line throws a NullPointerException. It's > 
> not Jess's fault if your getter methods throw NPEs when called!> > > > > > On 
> Aug 3, 2007, at 2:51 PM, Skeptic 2000 wrote:> > >> > Hi and thanks a lot for 
> helping, the details are here :> >> > That's the ShadowFact :> >> > public 
> class Test {> >> >> >> >> > private Integer a = null;> >> > private Integer b 
> = 4;> >> >> >> >> > public Test() {> >> >> >> > }> >> >> >> >> > public int 
> getA() {> >> > return a;> >> > }> >> >> >> >> > public int getB() {> >> > 
> return b;> >> > }> >> >> > }> >> > That's the .CLP file :> >> > (defclass 
> Test xxx.yyy.zzz.Test)> >> >> > (defrule testrule> >> > (Test (a ?a) (b ?b))> 
> >> > =>> >> > (printout t "testrule ok")> >> > )> >> > That's the java code 
> :> >> > void functionX() {> > ...> > jessEngine.add(new Test());> > ...> > }> 
> >> > That's the exception :> >> > Jess reported an error in routine 
> DefinstanceList.updateMultipleSlots.> >> > Message: Called method threw an 
> exception.> >> > at 
> jess.DefinstanceList.getSlotValueFromObject(DefinstanceList.java: > > 371)> 
> >> > at jess.DefinstanceList.setAllSlotValuesFromObject > > 
> (DefinstanceList.java:353)> >> > at 
> jess.DefinstanceList.createNewShadowFact(DefinstanceList.java:332)> >> > at 
> jess.DefinstanceList.definstance(DefinstanceList.java:111)> >> > at 
> jess.Rete.definstance(Rete.java:1903)> >> > at 
> jess.Rete.definstance(Rete.java:1883)> >> > at jess.Rete.add(Rete.java:2023)> 
> > ...> >> >> > JFL> >> >> >> >> >> > > From: [EMAIL PROTECTED]> > > Subject: 
> Re: JESS: dealing with shadow facts having null properties> > > Date: Fri, 3 
> Aug 2007 10:48:15 -0400> > > To: jess-users@sandia.gov> > >> > > I can't 
> reproduce anything like this; can you show me a stack trace> > > (run 
> jess.Main with -stacktrace to see a full error trace).> > >> > > On Aug 2, 
> 2007, at 6:12 PM, Skeptic 2000 wrote:> > >> > > >> > > > When I add a shadow 
> fact with a property having a null value, I > > get> > > > an exception (in 
> updateMultiSlot IRRC).> > > >> > > > JFL> > > >> > > > > From: [EMAIL 
> PROTECTED]> > > > > Subject: Re: JESS: dealing with shadow facts having null 
> > > properties> > > > > Date: Thu, 2 Aug 2007 15:57:55 -0400> > > > > To: 
> jess-users@sandia.gov> > > > >> > > > > Jess has been able to handle null 
> properties for a long time; > > 6.1p8> > > > > can handle them, as can the 
> current versions. What problem > > are you> > > > > having, exactly?> > > > 
> >> > > > > On Aug 2, 2007, at 2:19 PM, Skeptic 2000 wrote:> > > > >> > > > > 
> >> > > > > > Hi,> > > > > >> > > > > > I need to add in the working memory 
> some shadow facts with> > > > > > properties whose values are null. 
> 

RE: JESS: dealing with shadow facts having null properties

2007-08-03 Thread Skeptic 2000
 
Hi and thanks a lot for helping, the details are here :
 
That's the ShadowFact :
public class Test {

 
private Integer a = null;
private Integer b = 4;

 
public Test() {

 
}

 
public int getA() {
  return a;
}

 
public int getB() {
  return b;
}

}
 
That's the .CLP file :
 
(defclass Test xxx.yyy.zzz.Test)

(defrule testrule
(Test (a ?a) (b ?b))
=>
(printout t "testrule ok")
)
 
That's the java code :
 
void functionX() {
...
jessEngine.add(new Test());
...
}
 
That's the exception :
 
Jess reported an error in routine DefinstanceList.updateMultipleSlots.
Message: Called method threw an exception.
at jess.DefinstanceList.getSlotValueFromObject(DefinstanceList.java:371)
at jess.DefinstanceList.setAllSlotValuesFromObject(DefinstanceList.java:353)
at jess.DefinstanceList.createNewShadowFact(DefinstanceList.java:332)
at jess.DefinstanceList.definstance(DefinstanceList.java:111)
at jess.Rete.definstance(Rete.java:1903)
at jess.Rete.definstance(Rete.java:1883)
at jess.Rete.add(Rete.java:2023)
...
 
JFL



> From: [EMAIL PROTECTED]> Subject: Re: JESS: dealing with shadow facts having 
> null properties> Date: Fri, 3 Aug 2007 10:48:15 -0400> To: 
> jess-users@sandia.gov> > I can't reproduce anything like this; can you show 
> me a stack trace > (run jess.Main with -stacktrace to see a full error 
> trace).> > On Aug 2, 2007, at 6:12 PM, Skeptic 2000 wrote:> > >> > When I add 
> a shadow fact with a property having a null value, I get > > an exception (in 
> updateMultiSlot IRRC).> >> > JFL> >> > > From: [EMAIL PROTECTED]> > > 
> Subject: Re: JESS: dealing with shadow facts having null properties> > > 
> Date: Thu, 2 Aug 2007 15:57:55 -0400> > > To: jess-users@sandia.gov> > >> > > 
> Jess has been able to handle null properties for a long time; 6.1p8> > > can 
> handle them, as can the current versions. What problem are you> > > having, 
> exactly?> > >> > > On Aug 2, 2007, at 2:19 PM, Skeptic 2000 wrote:> > >> > > 
> >> > > > Hi,> > > >> > > > I need to add in the working memory some shadow 
> facts with> > > > properties whose values are null. Currently, my workaround 
> is to> > > > use a "NullObject" to prevent Jess from crashing upon finding a> 
> > > > null value.> > > >> > > > Is it the recommended way to do it ?> > > >> 
> > > > JFL> > > >> > > > Soyez parmi les premiers à essayer Windows Live 
> Mail.> > >> > > -> > 
> > Ernest Friedman-Hill> > > Advanced Software Research Phone: (925) 294-2154> 
> > > Sandia National Labs FAX: (925) 294-2234> > > PO Box 969, MS 9012 [EMAIL 
> PROTECTED]> > > Livermore, CA 94550 http://www.jessrules.com> > >> > > 
> > > > To 
> unsubscribe, send the words 'unsubscribe jess-users > > [EMAIL PROTECTED]'> > 
> > in the BODY of a message to [EMAIL PROTECTED], NOT to the list> > > (use 
> your own address!) List problems? Notify owner-jess- > > [EMAIL PROTECTED]> > 
> > > > >> 
> >> >> > Soyez parmi les premiers à essayer Windows Live Mail.> > 
> -> Ernest 
> Friedman-Hill> Advanced Software Research Phone: (925) 294-2154> Sandia 
> National Labs FAX: (925) 294-2234> PO Box 969, MS 9012 [EMAIL PROTECTED]> 
> Livermore, CA 94550 http://www.jessrules.com> > 
> > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

RE: JESS: dealing with shadow facts having null properties

2007-08-02 Thread Skeptic 2000
 
When I add a shadow fact with a property having a null value, I get an 
exception (in updateMultiSlot IRRC).
 
JFL
> From: [EMAIL PROTECTED]> Subject: Re: JESS: dealing with shadow facts having 
> null properties> Date: Thu, 2 Aug 2007 15:57:55 -0400> To: 
> jess-users@sandia.gov> > Jess has been able to handle null properties for a 
> long time; 6.1p8 > can handle them, as can the current versions. What problem 
> are you > having, exactly?> > On Aug 2, 2007, at 2:19 PM, Skeptic 2000 
> wrote:> > >> > Hi,> >> > I need to add in the working memory some shadow 
> facts with > > properties whose values are null. Currently, my workaround is 
> to > > use a "NullObject" to prevent Jess from crashing upon finding a > > 
> null value.> >> > Is it the recommended way to do it ?> >> > JFL> >> > Soyez 
> parmi les premiers à essayer Windows Live Mail.> > 
> -> Ernest 
> Friedman-Hill> Advanced Software Research Phone: (925) 294-2154> Sandia 
> National Labs FAX: (925) 294-2234> PO Box 969, MS 9012 [EMAIL PROTECTED]> 
> Livermore, CA 94550 http://www.jessrules.com> > 
> > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: dealing with shadow facts having null properties

2007-08-02 Thread Skeptic 2000
 
Hi,
 
I need to add in the working memory some shadow facts with properties whose 
values are null. Currently, my workaround is to use a "NullObject" to prevent 
Jess from crashing upon finding a null value.Is it the recommended way to do it 
?JFL
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: Java 1.5 enums

2007-07-27 Thread Skeptic 2000
 
Hi,
 
As shown on JessWiki, I use the import functions to get my enum "class" in Jess 
:(import xx.yy.zz.MyEnum)
 
then I try to match a slot of a shadow fact to one of the enum field :
(defrule rule1(MyShadowFact (OBJECT ?o) (property1 MyEnum.xyz))
=> ...)
 
What I'm doing wrong ?Thanks.
 
JFL
 
 
 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

RE: JESS: exchanging values between ess and Java via UserFunction

2007-05-17 Thread Skeptic 2000
Hi,> > doesn't know the exact type... so I use the javaObjectValue method to > 
> Value has a type() method which tells you what kind of Value you've got. > 
javaObjectValue() won't create an object -- it will only return an exusting > 
object, if there is one (for resolved values, only for types RU.STRING, > 
RU.SYMBOL, RU.JAVA_OBJECT.)
Then I can switch on the type returned to do the Jess->Java transfer correctly.
> >> > Second Problem : A second UserFunction return a integer value by doing 
> >> > :> > int x = ... ;> > return new Value(x);> > My first reaction was that 
> >> > the Value constructor that takes only an int isn't > public -- have you 
> >> > modified the source? You should be using the two-argument > one that 
> >> > lets you specify a type. But now, on re-reading, I see what's > probably 
> >> > happening: *autoboxing* in Java 5 and up. You're passing only an int > 
> >> > to the Value constructor, and there *is* no constructor that takes only 
> >> > an > int. There is one that takes only an Object, though, so Java is 
> >> > helpfully > converting your int to an Integer, and then Jess is creating 
> >> > a Value of type > JAVA_OBJECT. Grrr. > > Although Java 5 blurred the 
> >> > distinction between int and Integer, Jess still > treats them as 
> >> > distinct types. You should be using > > return new Value(x, 
> >> > RU.INTEGER);> > and then everything should work fine.
Oops, I should have said that I had already figured that Java 5 features were 
probably linked to the problem.
Any plan to fix the disparities between int and Integer in Jess ? (Probably not 
for backward compatibilty?)
 
Again, thanks for all those quick and complete answers, many commercial 
products(!) doesn't have such a good "customer service".
 
 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: exchanging values between ess and Java via UserFunction

2007-05-16 Thread Skeptic 2000
 
Hi,
I'm having some trouble with value exchange between Jess and Java via 
UserFunctions that are implemented in Java.First problem : A first UserFunction 
receives 1 argument from Jess and doesn't know the exact type, so I use the 
javaObjectValue method to extract in a Object variable. Problem occurs when the 
value sent from Jess is a simple integer, for example the result of (+ 3 5).
 
Second Problem : A second UserFunction return a integer value by doing : 
int x = ... ;
return new Value(x);
 
But my rule that compares this result with a simple integer doesn't work :
 
(test (eq 0 calltotheuserfunction))
My current solutions are :
 
1)  (new Integer (+ 3 5))
 
2) (test (eq 0 (calltotheuserfunction intValue)))
 
But I don't like to add this "Java syntax" in my rules, is there a better way 
to fix those problems ?Thanks again !
 
 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: How to correctly fire the same rule for the "same facts"

2007-05-15 Thread Skeptic 2000
 
 
Hi, this simple example show a problem I still have when designing Jess 
rules.What I should do to avoid this situation in which two instances of Y will 
be created.
 
If what I try to do is not clear, please say so.
Thanks.
 
CLP file :
 
(deftemplate X (slot a))
 
(deftemplate Y   (slot s))
 
(defrule sum-X?x1 <- (X (a ?a1))?x2 <- (X (a ?a2))(not (test (eq 
?x1 ?x2)))=>(assert (Y (s (+ ?a1 ?a2(printout t "y asserted " ?a1 " 
" ?a2 crlf))
 
(reset)
 
(assert (X (a 3)))(assert (X (a 5)))
 
(run)
 
Result :
 
Jess, the Rule Engine for the Java Platform
Copyright (C) 2006 Sandia Corporation
Jess Version 7.0p1 12/21/2006
 

y asserted 5 3
y asserted 3 5
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: user functions and warning messages in plugin

2007-04-23 Thread Skeptic 2000
 
Hi,
If I add my user-functions trough Java instead of directly in the .clp files, 
how I can get rid of the warning messages in the plug-in ?Thanks for help.
 
JFL
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: mark vs modify

2007-02-26 Thread Skeptic 2000
 
Hi,
 
Does a resetToMark after a mark is done undo the modify applied to the facts or 
only remove newly added facts ?If yes, how this apply to shadow facts ?Thanks
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

RE: JESS: < strange behavior

2007-02-14 Thread Skeptic 2000
> > Hi,> >> > I have a rule looking something like :> >> > (defrule wcooo ; 
> > exemple pour un while> > (MyShadowfact (OBJECT ?o))> > (test (< (str-length 
> > (?o methodreturningastring "param")) 3))> > =>> > (printout t "rulefired" 
> > (str-length (?o methodreturningastring > > "param")) crlf))> >> > And I 
> > strangly get the rulefired message with values like 4, 5, 6, ...> >> > 
> > Remember that pattern-matching is driven by facts being asserted, > 
> > retracted, or modified. In particular, the test above will be > evaluated 
> > only when the object is first put into working memory, or > when a change 
> > event or modify call causes it to be reevaluated. My > guess is that your 
> > method methodreturningastring returns a value > which changes over time 
> > without Jess being notified in any way about > the change. You will need to 
> > tell Jess when this value changes -- for > example, by using the 
> > Rete.updateObject() method
 
If I do an updateObject but :
1) none of the properties of the bean have changed
2) the methodreturningastring now returns a different value
 
Does the pattern matching occurs ? (the answer seems to be no)
 
JF
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: how to get the "rule text" from a defrule

2007-01-31 Thread Skeptic 2000
 
Hi,
 
With Jesp I can easily get the defrule of each of my rules in my .clp files and 
display their names in a Swing application. What I would like to do next is to 
display the actual text of the rule in this same application, can it be easily 
done ?Thanks.
 



> From: [EMAIL PROTECTED]> Subject: Re: JESS: is jess a declaritive language?> 
> Date: Tue, 30 Jan 2007 22:03:15 -0500> To: jess-users@sandia.gov> > Well, 
> rules themselves are definitely a declarative programming > concept. But Jess 
> also offers an imperative language, and in fact the > right-hand-sides of 
> rules consist of imperative code.> > So in fact, Jess, and systems like it, 
> are hybrid declarative/ > imperative.> > On Jan 30, 2007, at 5:03 PM, Matthew 
> J Hutchinson wrote:> > > Hi everyone,> >> > I'm trying to categorize Jess in 
> terms of the different programming > > language paradigms. Is Jess 
> "declaritive"?> >> > Thanks,> > Matt> >> > 
> -> Ernest 
> Friedman-Hill> Advanced Software Research Phone: (925) 294-2154> Sandia 
> National Labs FAX: (925) 294-2234> PO Box 969, MS 9012 [EMAIL PROTECTED]> 
> Livermore, CA 94550 http://www.jessrules.com> > 
> > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

RE: JESS: < strange behavior

2007-01-19 Thread Skeptic 2000
 
I always do a jess.updateObject(myShadowFact) before the jess.run() call but 
I'll look again at it.
Thanks.



> From: [EMAIL PROTECTED]> Subject: Re: JESS: < strange behavior> Date: Fri, 19 
> Jan 2007 09:42:21 -0500> To: jess-users@sandia.gov> > > On Jan 19, 2007, at 
> 12:00 AM, Skeptic 2000 wrote:> > >> > Hi,> >> > I have a rule looking 
> something like :> >> > (defrule wcooo ; exemple pour un while> > 
> (MyShadowfact (OBJECT ?o))> > (test (< (str-length (?o methodreturningastring 
> "param")) 3))> > =>> > (printout t "rulefired" (str-length (?o 
> methodreturningastring > > "param")) crlf))> >> > And I strangly get the 
> rulefired message with values like 4, 5, 6, ...> >> > Remember that 
> pattern-matching is driven by facts being asserted, > retracted, or modified. 
> In particular, the test above will be > evaluated only when the object is 
> first put into working memory, or > when a change event or modify call causes 
> it to be reevaluated. My > guess is that your method methodreturningastring 
> returns a value > which changes over time without Jess being notified in any 
> way about > the change. You will need to tell Jess when this value changes -- 
> for > example, by using the Rete.updateObject() method.> > 
> -> Ernest 
> Friedman-Hill> Advanced Software Research Phone: (925) 294-2154> Sandia 
> National Labs FAX: (925) 294-2234> PO Box 969, MS 9012 [EMAIL PROTECTED]> 
> Livermore, CA 94550 http://www.jessrules.com> > 
> > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: using mathematicals functions on a shadow fact

2007-01-19 Thread Skeptic 2000
 
Hi, in a LHS i'm getting a value from a shadowfact method and I want to compare 
that value using > to a fixed number, something like :
(test (> (?x domethod "param") 3)
I get the error that 3 is not a java object, so I tried to replace 3 with : new 
Integer 3, but I get the same message.
How can I achieve this ?Thanks !
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: < strange behavior

2007-01-19 Thread Skeptic 2000
Hi, 
 
I have a rule looking something like :
 
(defrule wcooo ; exemple pour un while
(MyShadowfact (OBJECT ?o))
(test (< (str-length (?o methodreturningastring "param")) 3))
=>
(printout t "rulefired" (str-length (?o methodreturningastring "param")) crlf))
 
And I strangly get the rulefired message with values like 4, 5, 6, ...
Can someone help ?Thanks





> From: [EMAIL PROTECTED]> Subject: Re: JESS: Decorators> Date: Thu, 18 Jan 
> 2007 10:43:47 -0500> To: jess-users@sandia.gov> > Do the decorators actually 
> enlarge the API of the defclassed class? > In that case, you'll only be able 
> to match those additional > properties using Java method calls. Otherwise, 
> things would work out > fine; you could even just defclass the interface, if 
> that's how > things are structured. Otherwise, can you give us a concrete 
> example > to discuss?> > On Jan 18, 2007, at 9:17 AM, Krasnigor, Scott L 
> (N-AST) wrote:> > > I am curious what the implications are of defclassing a 
> class with > > many decorators associated with it? I need to be able to match 
> > > various attributes of the class that are part of the decorators. Is > > 
> there a correct/best way to handle this case? Any advice would be > > 
> appreciated. Thanks.> >> >> >> > Scott> >> >> >> >> > 
> -> Ernest 
> Friedman-Hill> Advanced Software Research Phone: (925) 294-2154> Sandia 
> National Labs FAX: (925) 294-2234> PO Box 969, MS 9012 [EMAIL PROTECTED]> 
> Livermore, CA 94550 http://www.jessrules.com> > 
> > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

RE: JESS: calling a method on a matched shadow fact

2007-01-15 Thread Skeptic 2000
Hi,
In the LHS of a rule, could I bind to a variable a object that is returned from 
a method called on a matched fact ?
 
 
(rule x 
(theShadowfact ?o)
(... ?o getXYZ ... )
 
The purpose of doing this is to have a variable on which to do some tests 
without having to call getXYZ for each one of them.
 
Thanks



> From: [EMAIL PROTECTED]> Subject: Re: JESS: calling a method on a matched 
> shadow fact> Date: Fri, 3 Nov 2006 00:46:42 -0500> To: jess-users@sandia.gov> 
> > On Nov 2, 2006, at 1:29 PM, Skeptic 2000 wrote:> > > >> > Let's say I have 
> something like :> >> > (defclass xyz x.y.com.XYZ)> >> > (defrule "x"> > 
> ?x<-(xyz)> > =>> > (...)> >> > In the RHS, I would like to call a method that 
> is not a bean get/ > > set on the matched 'xyz', what would be the proper 
> way? (If > > possible, this method would take a string as argument)> >> > ?x 
> is a jess.Fact object; it has a slot named OBJECT containing the > actual XYZ 
> object. So you could say> > ((?x getSlotValue OBJECT) theMethodName "the 
> argument")> > Alternatively, you could bind the OBJECT slot on the LHS, and 
> then > you'd have a variable on which you could call the method directly.> > 
> -> Ernest 
> Friedman-Hill> Advanced Software Research Phone: (925) 294-2154> Sandia 
> National Labs FAX: (925) 294-2234> PO Box 969, MS 9012 [EMAIL PROTECTED]> 
> Livermore, CA 94550 http://www.jessrules.com> > 
> > To 
> unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'> in 
> the BODY of a message to [EMAIL PROTECTED], NOT to the list> (use your own 
> address!) List problems? Notify [EMAIL PROTECTED]> 
> > 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: run vs rununtilhalt

2007-01-09 Thread Skeptic 2000
 
Hi,
 
I have some java code that create ShadowFact and some rules that modify them at 
creation and when they are modified on the Java side. 
 
I'm trying to compare two way of doing this :
 
First, doing a engine.runUntilHalt() and doing my java code that handle the 
shadowfact after.
Second, after each manipulation on the Java side, doing a engine.run().
 
On performance side, what is the difference between the two ?
 
You can probably guess that I want to do this because I need to be sure that 
Jess has runned out before doing some extra Java code. I don't want to go in 
details here of why I need this behavior, but I'm pretty sure that it don't go 
agains't the Jess spirit.
Thanks
 
 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: A problem with accumulate

2006-12-02 Thread Skeptic 2000
 
Hi,I have a serious problem with accumulate, I wanted to use it on some shadow 
facts, but I noticed that I can't have more than one "contained CE".I would 
need to use a "Time-varying method" (OBJECT) and a test-CE in the matching part 
of the Accumulate...
 
Something like (modifed from the manual):
 
?c <- (accumulate (bind ?list (new java.util.ArrayList)) (?list 
add ?o)  ?list  
  (employee (OBJECT ?o))(test 
(?o xyzMethod "arg1")) ; <- that can't work if I understand correctly :(  =>  
(printout t (?c toString)  crlf))
This causes me some serious trouble, so I'll hope there is a way to deal with 
it.
 
Thanks again !
 
_
Soyez parmi les premiers à essayer Windows Live Mail.
http://ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d

JESS: Removing a shadow fact

2006-11-27 Thread Skeptic 2000


Let's say I have somthing like this in Java:

ShadowFactClass x1 = new ShadowFactClass();
ShadowFactClass x2 = new ShadowFactClass();
ShadowFactClass x3 = new ShadowFactClass();

rete.add(x1); rete.add(x2); rete.add(x3)

.

Somewhere else in the code I woule like to remove from the working memory of 
one those three shadow facts, what would be the proper way ? (in this place, 
I have access both to the rete engine and the x1,x2,x3 variables)


Thanks again

_
Ne perdez pas de temps dans les files d’attente… magasinez en ligne.  
http://magasiner.sympatico.msn.ca


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: First try with backward-chaining

2006-11-13 Thread Skeptic 2000


Hi,

I tried for the first time to use backward-chaining and I can't figure out 
why this simple example don't work :


(deftemplate x
   (declare (backchain-reactive TRUE))
   (slot a)
   (slot b)
)

(defrule printX
 (x (b 12))
 =>
 (printout t "yeah!")
)

(defrule createX
 (need-x (b ?y))
  =>
 (assert (x (a 3) (b ?y)))
)

(run)

Thanks !

_
Ne perdez pas de temps dans les files d’attente… magasinez en ligne.  
http://magasiner.sympatico.msn.ca



To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: calling a method on a matched shadow fact

2006-11-02 Thread Skeptic 2000


Hi,

Let's say I have something like :

(defclass xyz x.y.com.XYZ)

(defrule "x"
 ?x<-(xyz)
=>
(...)

In the RHS, I would like to call a method that is not a bean get/set on the 
matched 'xyz', what would be the proper way? (If possible, this method would 
take a string as argument)


Thanks,

JFL


From: "Ernest Friedman-Hill" <[EMAIL PROTECTED]>
Reply-To: jess-users@sandia.gov
To: jess-users@sandia.gov
Subject: Re: JESS: Symplified syntax jess 7
Date: Thu, 2 Nov 2006 13:03:08 -0500

Only simple expressions as described in the manual are handled in  this 
release. Parenthesized expressions are not implemented -- yet.


On Nov 2, 2006, at 5:36 AM, Negoita, Cristian wrote:


The simplified rule should look like below:


(defrule Rule-KDF-BDF-Promo-1

(Input

   {bestandFirma <> 5 && ((promotionalCode  == 
'M' || promotionalCode == 'X') && kontoFirma == 5)}


)

=>...

But his expression cannot be parsed by Jess.


-
Ernest Friedman-Hill
Advanced Software Research  Phone: (925) 294-2154
Sandia National LabsFAX:   (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://www.jessrules.com


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




_
Voyez vos amis en faisant un appel vidèo dans Windows Live Messenger 
http://imagine-msn.com/messenger/launch80/default.aspx?locale=fr-ca



To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: adding (not creating) rules from Java

2006-10-31 Thread Skeptic 2000


Hi,

I want to have a Java program that can add rules to a Rete object at 
runtime. The rules would be entered as a String and once added, I would need 
a way to refer to them on the Java side. What would be the proper way to do 
it ?


Thanks,

JFL

_
Achetez ce que vous voulez, quand vous voulez sur Sympatico / MSN Magasiner 
http://magasiner.sympatico.msn.ca/content/shp/?ctId=101,ptnrid=176,ptnrdata=081805



To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




Re: JESS: Test on a list from a JavaBean

2006-10-24 Thread Skeptic 2000


Oops,  I was about to reply saying "forget it, it's from the Java's API".

In fact, now that I understand that I can call any java method from the 
matching facts, all my problems should be solved.


Thanks again,

JFL


From: "Ernest Friedman-Hill" <[EMAIL PROTECTED]>
Reply-To: jess-users@sandia.gov
To: jess-users@sandia.gov
Subject: Re: JESS: Test on a list from a JavaBean
Date: Tue, 24 Oct 2006 22:09:34 -0400

On Oct 24, 2006, at 8:14 PM, Skeptic 2000 wrote:


Thanks, I missed the contains, it's not in the Jess functions list,  where 
it comes from ?


It's a method in the java.util.Collections interface, yes? We're  calling 
it on ?theList, which is a java.util.List.






From: "Ernest Friedman-Hill" <[EMAIL PROTECTED]>

Something like this?

(defrule theRule
(theFact (theProperty ?theList&:(?theList contains "xyz")))
=> ...


On Oct 24, 2006, at 2:15 PM, Skeptic 2000 wrote:



Hi,

In my rules, I need to tests some shadows fact which have as one  of  
their properties a List.


For example, let's say it's a List of String and I my test is to   check 
that the string "xyz" is part of the list.


What would be the most proper way to do this ?


-
Ernest Friedman-Hill
Advanced Software Research  Phone: (925) 294-2154
Sandia National LabsFAX:   (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://www.jessrules.com


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




_
Voyez vos amis en faisant un appel vidèo dans Windows Live Messenger 
http://imagine-msn.com/messenger/launch80/default.aspx?locale=fr-ca



To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




Re: JESS: Test on a list from a JavaBean

2006-10-24 Thread Skeptic 2000


Thanks, I missed the contains, it's not in the Jess functions list, where it 
comes from ?


JFL


From: "Ernest Friedman-Hill" <[EMAIL PROTECTED]>
Reply-To: jess-users@sandia.gov
To: jess-users@sandia.gov
Subject: Re: JESS: Test on a list from a JavaBean
Date: Tue, 24 Oct 2006 15:13:30 -0400

Something like this?

(defrule theRule
(theFact (theProperty ?theList&:(?theList contains "xyz")))
=> ...


On Oct 24, 2006, at 2:15 PM, Skeptic 2000 wrote:



Hi,

In my rules, I need to tests some shadows fact which have as one of  their 
properties a List.


For example, let's say it's a List of String and I my test is to  check 
that the string "xyz" is part of the list.


What would be the most proper way to do this ?


-
Ernest Friedman-Hill
Advanced Software Research  Phone: (925) 294-2154
Sandia National LabsFAX:   (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://www.jessrules.com


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




_
Découvrez Live Search de votre PC ou de votre appareil mobile dès 
aujourd’hui. http://www.live.com/?mkt=fr-ca



To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: Test on a list from a JavaBean

2006-10-24 Thread Skeptic 2000


Hi,

In my rules, I need to tests some shadows fact which have as one of their 
properties a List.


For example, let's say it's a List of String and I my test is to check that 
the string "xyz" is part of the list.


What would be the most proper way to do this ?

Thanks,

JFL

_
Essayez la nouvelle génération de recherche avec Live Search. 
http://www.live.com/?mkt=fr-ca



To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: Function in LHS

2006-09-14 Thread Skeptic 2000


Reading the Zen of Jess on the Wiki, I spoted that one :

"Anger - Calling functions on LHS of a rule

Anger is what Dr. Friedman-Hill will choke back when you put (> 3.1415 x) on 
left-hand side (LHS) of a rule and then you ask," What went wrong?" Once you 
start coding, understand that with very few exceptions, the LHS of a rule is 
reserved for patterns only. Function calls are (typically) the actions that 
happen when patterns are matched. They go on the right-hand side (RHS) of 
rules only. "


I currently use function in my Jess rules (for classification purpose) and I 
really don't see why it's a problem ?  For example, I use evenp/oddp to 
classify some facts according to one of their slots.


Thanks,

JFL

To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: Detecting rules inconsistencies

2006-09-09 Thread Skeptic 2000


Hi,

I'm currently using Jess as a kind of classifier, and I'm asking myself if 
some mechanisms exist to detect inconsequent or impossible rules. A simple 
example would be a rule testing a slot value being > 10 and < 10.


Thanks.

JF

To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




Re: JESS: asserting a fact from another

2006-08-27 Thread Skeptic 2000


Yeah, that's better than slot-values, but I was hoping for something 
specific to extended template, thanks anyway :)


Two others questions,

1) Since there is no multiple inheritance (extends can be done only on one 
fact), what would be the best way to create this :


A has two slots, X, Y
B has one slot Z
C would have X, Y, Z.

(Of course, the simple answer is to create C with those 3 slot).

2) One of the first thing I tried to do was to put a fact-id in a slot. (To 
act as a kind of pointer from a fact to another one without using an integer 
ID like in a relational database). However, I never saw a exemple in the 
documention doing it, or nothing saying "that's good" or "that's bad".


So, I would like to know if there is some problems with it ?

Thanks again.

Jean-François



From: "friedman_hill ernest j" <[EMAIL PROTECTED]>
Reply-To: jess-users@sandia.gov
To: jess-users@sandia.gov
Subject: Re: JESS: asserting a fact from another
Date: Sat, 26 Aug 2006 18:08:15 -0700 (PDT)

You can just bind the values to variables on the rule's LHS, right?

(defrule example
  (A (x ?x) (y ?y))
  =>
  (assert (B (x ?x) (y ?y) (z someValue

If A and B weren't different templates, you could use the
underappreciated "duplicate" function, but you can't.

I think Skeptic 2000 wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
>
> Hi,
>
> Let's say I have a deftemplate A with two slot : x, and y.
>
> I have another deftemplate B whom extends A, adding slot z.
>
> Then I have a rule that checks for any A-fact with special values for x 
and

> or y.
>
> If the rule fire, I want to create a B fact with the same values as in 
the A

> fact (and a value for z of course).
>
> I know that I can use fact-slot-value to get the A-fact values, but is 
there

> a cleaner way ?
>
> Thanks.
>
> Jean-Francois
> 
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the list
> (use your own address!) List problems? Notify 
[EMAIL PROTECTED]

> 
>



-
Ernest Friedman-Hill
Advanced Software Research  Phone: (925) 294-2154
Sandia National LabsFAX:   (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://herzberg.ca.sandia.gov

To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: asserting a fact from another

2006-08-26 Thread Skeptic 2000


Hi,

Let's say I have a deftemplate A with two slot : x, and y.

I have another deftemplate B whom extends A, adding slot z.

Then I have a rule that checks for any A-fact with special values for x and 
or y.


If the rule fire, I want to create a B fact with the same values as in the A 
fact (and a value for z of course).


I know that I can use fact-slot-value to get the A-fact values, but is there 
a cleaner way ?


Thanks.

Jean-Francois

To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: Java objects to working memory

2006-06-08 Thread Skeptic 2000


Hi,
 
I'm using Jess in a multi-agent software where I have to transfer the content of the received messages from the Java code handling the communication process to Jess that handle the reasoning process.
 
I took a look at the different way to do it (JavaBeans, aserting facts and the store/fetch). I want the transfer to be fast as possible, so which method should I use ? (JavaBean seems to be the most simple one... but at which cost?)Thanks for help.
 
 
 
 
 
 Votre nouvelle utilisation de la messagerie : Windows Live Messenger Beta


Re: JESS: forall

2006-04-22 Thread Skeptic 2000


Thanks,

Another one, if I have a fact in a variable like the goal in the last 
example in variable ?g.


If I use this variable as a function paramater, in the function how I can 
get access to its slot values ?


In a Java user function I can use the .getSlotValue, but in a Jess user 
function, how I can do it ?


(For example, let say I would like to do my (modify ?g (state sucess)) in a 
user function)


Thanks again.



From: [EMAIL PROTECTED]
Reply-To: jess-users@sandia.gov
To: jess-users@sandia.gov
Subject: Re: JESS: forall
Date: Sat, 22 Apr 2006 12:50:31 -0700 (PDT)


The "forall" CE

(forall (A) (B))

says that for every A, B matches. For example

;; Everyone owns a dog
(forall (person (name ?n)) (dog (owner ?n)))

You're saying something different: given a goal X in state nil, if
every goal Y is in state success, then modify goal X. You could write
something like

; Given goal X
?g<- (goal (name "X") (state nil))
;; There's at least one goal "Y"
(exists (goal (name "Y")))
;; All goals "Y" are in state success
(not (goal (name "Y") (state ~success)))

If there's always a goal "Y", you can omit the middle pattern.


I think Skeptic 2000 wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
>
> Hi,
>
> I tried to use the forall in this way and it doesn't work, it's a bug or 
I

> misunderstand how it is supposed to work ?
>
> I have a deftemplate name goal with two slot, name and state.
>
> My rule is :
>
> (defrule example
> ?g<- (goal (name "X") (state nil))
> (forall (goal (name "Y") (state sucess))
> =>
> (modify ?g (state sucess)
>
> In a few words, I put the goal "X" is in state sucess if every goal "Y" 
are

> in state sucess.
>
> Problem is that the 'sucess' criteria seems to not considered by the 
forall

> CE.
>
> Thanks for help.
>
> 
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the list
> (use your own address!) List problems? Notify 
[EMAIL PROTECTED]

> 
>



-
Ernest Friedman-Hill
Advanced Software Research  Phone: (925) 294-2154
Sandia National LabsFAX:   (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://herzberg.ca.sandia.gov


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]





To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: forall

2006-04-22 Thread Skeptic 2000


Hi,

I tried to use the forall in this way and it doesn't work, it's a bug or I 
misunderstand how it is supposed to work ?


I have a deftemplate name goal with two slot, name and state.

My rule is :

(defrule example
?g<- (goal (name "X") (state nil))
(forall (goal (name "Y") (state sucess))
=>
(modify ?g (state sucess)

In a few words, I put the goal "X" is in state sucess if every goal "Y" are 
in state sucess.


Problem is that the 'sucess' criteria seems to not considered by the forall 
CE.


Thanks for help.


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: JessML, java API

2006-04-18 Thread Skeptic 2000


Hi,

Why a DTD is used for JessML instead of a Schema? Legacy issue?

Are efforts to improve the tools available to create defrules from Java 
planned for a "near-future?


In fact, I need the tools to enable me to inspect the .clp/jessML content 
from a higher level stand point and take decisions based on the content of 
the different constructs (deftemplates/defrules).


This higher level decision process could even be implanted in Jess


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




Re: JESS: depth vs breadth

2006-04-17 Thread Skeptic 2000


Hi,

Now you have at least one "user request" about changing the visibility of 
these methods in the next version.  If needed, I can explain in a private 
message why I need this level of control over the firing order. (No, Im not 
falling in the trap of trying to make Jess to behave in a procedural way)




From: [EMAIL PROTECTED]
Reply-To: jess-users@sandia.gov
To: jess-users@sandia.gov
Subject: Re: JESS: depth vs breadth
Date: Sat, 15 Apr 2006 13:26:25 -0700 (PDT)

I think Skeptic 2000 wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
>
> Oh, now I feel bad, but I was in the "Java mindset", can it be done with 
the

> SetStrategy method?

Yes, you could use the Rete.setStrategy() method, if you had an
instance of the class you wanted Jess to use; but the ones that
implement depth and breadth aren't actually public, so in practice you
can only do this with your own implementations.

Just say (Jess 7)

Rete engine = ...
engine.eval("(set-strategy breadth)");

In Jess 6, you have to use "executeCommand()" instead of "eval()".

>
> A new question : the descripton of the two defaults strategy talk about
> choosing the rule according to the order in which they have been 
activated.
> But when we implement Strategy, we must compare two Activation object 
and I
> don't see a method that give us a way to know which one is the more 
recent.


The needed methods in the Token class are not public. There's actually
a comment in the Jess 7 source wondering whether they should  be made
so; perhaps they should.

The Fact class has a public getTime() method, which see; it returns a
number related to the recency of the fact's last modification.



-
Ernest Friedman-Hill
Advanced Software Research  Phone: (925) 294-2154
Sandia National LabsFAX:   (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://herzberg.ca.sandia.gov


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]





To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




Re: JESS: depth vs breadth

2006-04-15 Thread Skeptic 2000


Oh, now I feel bad, but I was in the "Java mindset", can it be done with the 
SetStrategy method?


A new question : the descripton of the two defaults strategy talk about 
choosing the rule according to the order in which they have been activated. 
But when we implement Strategy, we must compare two Activation object and I 
don't see a method that give us a way to know which one is the more recent.


Thanks again.



From: [EMAIL PROTECTED]
Reply-To: jess-users@sandia.gov
To: jess-users@sandia.gov
Subject: Re: JESS: depth vs breadth
Date: Sat, 15 Apr 2006 10:59:39 -0700 (PDT)

I think Skeptic 2000 wrote:
[Charset iso-8859-1 unsupported, filtering to ASCII...]
>
> Hi,
>
> In the doc, it is explain that Jess come with a default depth strategy 
and
> an optional breadth one, how you can switch the Rete engine to the 
breadth

> one? (I know I can make my own Strategy class).

http://www.jessrules.com/jess/docs/61/functions.html#set-strategy



-
Ernest Friedman-Hill
Advanced Software Research  Phone: (925) 294-2154
Sandia National LabsFAX:   (925) 294-2234
PO Box 969, MS 9012 [EMAIL PROTECTED]
Livermore, CA 94550 http://herzberg.ca.sandia.gov


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]





To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: depth vs breadth

2006-04-15 Thread Skeptic 2000


Hi,

In the doc, it is explain that Jess come with a default depth strategy and 
an optional breadth one, how you can switch the Rete engine to the breadth 
one? (I know I can make my own Strategy class).


Thanks for help.


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]




JESS: Using Jess in madkit

2006-03-31 Thread Skeptic 2000


Hi,

With the lack of support from the Madkit group, I hope there is someone here 
who already tried to use a Jess Agent in Madkit.


I have a very small technical problem, when I create my JessAgent with Java 
code, Madkit try to load a .clp file but with a wrong path : Error opening 
file null\plugins/jesslib/scripts/madkitlib.clp


That "null" should be the Madkit directory in fact, but no where in their 
doc they talk about seting up a path for using a JessAgent.


If someone can help, thanks a lot.

JF


To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]