Semantic Web Drools Module, Request for Feedbak
                                
                                
                                
                                    
                                        by Xavier Breton
                                    
                                
                                
                                         Hi,
I'm looking for feedback, I'll develop a Semantic Web Drools Module that
will be the subject of my Master Degree Tesis.
The idea is to use Eclipse Modelling Framework (EMF) for prototyping and
follow a Model Driven Architecture (MDA) where the source language is
Semantic of Business Vocabularies and Business Rules (SBVR) and the target
language is Drools DRL.
The mapping could be (PIM level):
- Semantic Web Rule Language (SWRL)
- Ontology Web Language (OWL)
- RuleML
- Rule Interchange Format (RIF)
- REWERSE Rule Markup Language (R2ML)
It could be added to the module at the source UML or Entity Relationship
like models to transform the models into SBVR.
Regards
Xavier Breton
                                
                         
                        
                                
                                11 years, 8 months
                        
                        
                 
         
 
        
            
        
        
        
            
        
        
        
                
                        
                        
                                
                                
                                        
                                                
                                        
                                        
                                        Attach custom editor on guided decision table cell
                                
                                
                                
                                    
                                        by c3310082
                                    
                                
                                
                                        
Hi,
We would like to render a custom editor when a user double-clicks on a cell
that is present in web guided decision table in Guvnor 5.1 (or later). The
custom editor needs to be invoked for cells that represent a particular fact
model attribute only.
This is somewhat similar to WS custom forms functionality available for
guided business rules.
So far we have seen the
org.drools.guvnor.client.decisiontable.GuidedDecisionTableWidget class that
contains implementation for:
public void onCellDblClick(GridPanel grid,
                                       int rowIndex,
                                       int colIndex,
                                       EventObject e)
in the GridCellListenerAdapter class that opens up text editor or drop down
editor.
We're new to GWT and Guvnor so would appreciate it if anyone can provide the
high level steps.
Thanks
-- 
View this message in context: http://drools-java-rules-engine.46999.n3.nabble.com/Attach-custom-editor-...
Sent from the Drools - Dev mailing list archive at Nabble.com.
                                
                         
                        
                                
                                13 years
                        
                        
                 
         
 
        
            
        
        
        
                
                        
                        
                                
                                
                                        
                                                
                                        
                                        
                                        Help
                                
                                
                                
                                    
                                        by Olfa h
                                    
                                
                                
                                        good morning,
can you help me to install drools  ( for windows)
thanks
                                
                         
                        
                                
                                13 years, 5 months
                        
                        
                 
         
 
        
            
        
        
        
            
        
        
        
            
        
        
        
            
        
        
        
                
                        
                                
                                 
                                        
                                
                         
                        
                                
                                
                                        
                                                
                                        
                                        
                                        time behaviour, suggested changes
                                
                                
                                
                                    
                                        by Mark Proctor
                                    
                                
                                
                                        Currenty timer initialisation is not defined very well and rules don't 
obey salience, which can make them harder to use.
Agenda interaction and scheduling:
1) Rule activations are added to the agenda like any other rule.
2) When the rule is popped from the agenda, instead executing the RHS 
the timir started is started.
3) Each time the timer is triggered the rule is added to the agenda and 
continues to obey salience. This time when the rule is popped from the 
agenda it executes the consequence.
Fact modification behaviour:
Modify on scheduled rules currently retriggers the initial delay, if 
that's 0 it can cause the rule to refire straight away, which I believe 
never wanted.
1) If the timer expression does not used any modified fields, it should 
not be re-scheduled.
2) Reschedule should be done for the repeat period only, we shoud not 
trigger another delay.
3) The first time it is scheduled after the period has changed it should 
subtract the amount for time difference left over from the last period.
For those that want timer rules to fire independant of the agenda, we 
will probably add an annotation to specify the rule is not to be handled 
via the agenda. This will give behaviour roughly to what we have now.
One reason why this change is important is with the upcoming algorithm 
change for lazy rete. We need to use the agenda and rule priorities to 
determine when to evaluate rules. Any rules not handled by the agenda 
will have to be left eager, so there are significant performance gains 
from this, as well as userbility gains from having timer rules that 
still obey salience.
Mark
                                
                         
                        
                                
                                13 years, 6 months
                        
                        
                 
         
 
        
            
        
        
        
                
                        
                                
                                 
                                        
                                
                         
                        
                                
                                
                                        
                                                
                                        
                                        
                                        Projects by convention and configuration and Maven build plugin
                                
                                
                                
                                    
                                        by Mark Proctor
                                    
                                
                                
                                        I've started to write up what a "project" would look like for Drools and 
jBPM. The idea is to move away from progammatic apis and have everything 
done via a maven plugin, using conventions and configurations to make it 
all work. Also we want to make sure this works well with tooling. We 
want to right click and execute projects, without use having to enter 
boiler plate code. Please consider it a work in progress, it's still 
rough in some places and RuleModule is still very sketchy.
https://community.jboss.org/wiki/DroolsProject
I use the term Bundle to refer to zipped up deployable Project
key aspects to note on compromises to simplify things:
-single root classloader per project (currently per knowledge base)
-each knowledgebase has it's own resource path folder, all files below 
that are for that specific knowledge base
-move functions and type declarations out to their own resource path 
folder. With the classloader scoped at the project level, no point in 
having these under the knowledge base path.
This is the sort of project anyone in the community can pick up and run 
with, you don't need a deep understanding of drools or rule engines. 
Just how to build a maven plugin, although there will be a small amount 
of fiddly work around the classloader change, but that shouldn't be too 
hard.
http://www.jboss.org/drools/irc
Mark
                                
                         
                        
                                
                                13 years, 6 months
                        
                        
                 
         
 
        
            
        
        
        
                
                        
                                
                                 
                                        
                                
                         
                        
                                
                                
                                        
                                                
                                        
                                        
                                        Needed help for helper class
                                
                                
                                
                                    
                                        by suryain4u
                                    
                                
                                
                                        package com.rmn.eoodu.service.security.drools;
import com.rmn.eoodu.service.security.impl.UserLoginServiceImpl;
import com.rmn.eoodu.service.security.dos.UserLogin;
import com.rmn.eoodu.service.message.Messages;
import com.rmn.eoodu.service.message.Message;
global com.rmn.eoodu.service.message.Messages drlMessages;
import function com.rmn.eoodu.service.utils.DroolsUtils.validatePassword;
import function com.rmn.eoodu.service.utils.DroolsUtils.checkNullOrEmpty;
import function com.rmn.eoodu.service.utils.DroolsUtils.checkEquals;
rule "checkUserName"
activation-group  "validateUser"
lock-on-active true
salience 100
when
        UserLogin($user:userLogin)
        eval(checkNullOrEmpty($user)==true)
then
        
drlMessages.addErrorMessage("LoginForm_UserName","InvalidUserName","UserName
cannot be empty",5);
         System.out.println("Rule1: checkUserName ");
end
rule "checkingTheLengthOfName"
activation-group   "validateUser"
lock-on-active true
salience 99
when
    UserLogin($user:userLogin)
    eval ($user.length() < 3)
then
       
drlMessages.addErrorMessage("LoginForm_UserName","InvalidName","UserName
should not be less than 3 letters",3);
        System.out.println("Rule2:checkingTheLengthOfName ");
end
rule "isPasswordEmpty"
activation-group  "validatePwd"
lock-on-active true
salience 98
when
        UserLogin($pwd : password)
        eval(checkNullOrEmpty($pwd)==true)
then
       
drlMessages.addErrorMessage("LoginForm_Password","InvalidPassword","Password
should not be empty",5);
        System.out.println("Rule3: isPasswordEmpty");
end
rule "validatingLengthOfPwd"
activation-group  "validatePwd"
lock-on-active true
salience 97
when
        UserLogin($pwd : password)
        eval(validatePassword($pwd)==true)
then
       
drlMessages.addErrorMessage("LoginForm_Password","InvalidPassword","Please
check the length of the password once",4);
        System.out.println("Rule4: validatingLengthOfPwd");
end
rule "userNameandPasswordAreNotEqual"
activation-group   "validateForm"
//agenda-group  "validateTheForm"
lock-on-active true
salience 96
when
    UserLogin($user : userLogin , $pwd : password)
    eval((validatePassword($pwd)==false) && (checkNullOrEmpty($pwd)==false))
    eval(checkEquals($user,$pwd)==true)
then
   drlMessages.addErrorMessage("LoginForm_UserName_Password","Invlid
UserName & Password","UserName and Password Cannot be Same",1);  
   System.out.println("Rule5: userNameandPasswordAreNotEqual");
end
Hai here i dont want to test like eval((validatePassword($pwd)==false) &&
(checkNullOrEmpty($pwd)==false)). I  need a helper class to test this. Can
any body help me in writing a helper class here for it. 
--
View this message in context: http://drools.46999.n3.nabble.com/Needed-help-for-helper-class-tp3917108p...
Sent from the Drools: Developer (committer) mailing list mailing list archive at Nabble.com.
                                
                         
                        
                                
                                13 years, 6 months