[rules-users] Efficiency of rules with XPath...

Mark Proctor mproctor at codehaus.org
Tue Apr 17 10:15:24 EDT 2007


use SXC its a high perfromance XPath parser with JBRules integration, no 
need to use eval.
http://sxc.codehaus.org/

Mark
Schwenker, Stephen wrote:
> Hey all,
>  
> I'm trying to make my rule more efficient but I'm not sure how.  I've 
> designed my rules based around xml objects.  Basically, I have these 
> documents and XPath queries are executed against the Object to 
> determine if the rule should be executed.  The problems is, is that we 
> have over 900 rules that need to be executed.  The performance isn't 
> really that bad but I would like to Make it even better.
>  
> To do the job,  I have written an XmlUtils class to execute the 
> expression.  The class first gets the XPathFactory.  Then compiles the 
> expression and then executes the expression.  This happens for every 
> expression, and will happen each time the same expression is 
> executed.  I want to make the rules more efficient by getting the 
> XPathFactory once and compiling the expression once and then execute 
> the expression n time on the same compiled object.
>  
> I would like to know if there is a way I can have the rule object that 
> is generated by the package build do the compile of the XPath 
> Expression and then use it instead of compiling it every time.
>  
> Here is a sample of one of my rule criteria.
>  
>     asset: AssetDocument()
> *    eval*( XmlUtils.evaluatePathBoolean( asset, 
> "boolean(//ass:asset/ass:properties/ass:property[@name = 
> 'Desk']/ass:value/text() = 'column')") )
> ------------------------------------------------------------------------
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20070417/7bde5f34/attachment.html 


More information about the rules-users mailing list