<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="http://feeds.athico.com/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.athico.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-5869426</atom:id><lastBuildDate>Mon, 29 Dec 2008 13:31:43 +0000</lastBuildDate><title>Drools - Business Logic integration Platform</title><description>This blog is for all things AI related, with a special focus on Expert Systems, particularly Drools.</description><link>http://blog.athico.com/</link><managingEditor>noreply@blogger.com (Mark Proctor)</managingEditor><generator>Blogger</generator><openSearch:totalResults>264</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.athico.com/DroolsRSS" type="application/rss+xml" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-3749690623726465215</guid><pubDate>Mon, 22 Dec 2008 21:23:00 +0000</pubDate><atom:updated>2008-12-22T21:54:38.184Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Devoxx and ORF 2008 presentations</title><description>&lt;a href="http://devoxx.com/"&gt;&lt;span style="font-weight: bold;"&gt;Devoxx 2008&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://downloads.jboss.com/drools/presentations/devoxx08/devoxx08markp.pdf"&gt;Declarative Programming with Rules, Workflow and Event Processing (Part I) - Mark Proctor&lt;/a&gt;&lt;br /&gt;&lt;a href="http://downloads.jboss.com/drools/presentations/devoxx08/devoxx08krisv.pdf"&gt;Declarative Programming with Rules, Workflow and Event Processing (Part II) - Kris Verlaenen&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.rulesfest.org"&gt;&lt;span style="font-weight: bold;"&gt;ORF 2008&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://downloads.jboss.com/drools/presentations/orf08/orf08markp.pdf"&gt;Declarative Programming with Rules, Workflow and Event Processing - Mark Proctor&lt;/a&gt;&lt;br /&gt;&lt;a href="http://downloads.jboss.com/drools/presentations/orf08/orf08etirelli.pdf"&gt;Extending Rete for Complex EventProcessing - Edson Tirelli&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=IAc0O"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=IAc0O" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=8OAJO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=8OAJO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=vePyo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=vePyo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=caDBo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=caDBo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=GHU9O"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=GHU9O" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=ufNSo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=ufNSo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=mrLHO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=mrLHO" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/492596132" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/492596132/devoxx-and-orf-2008-presentations.html</link><author>noreply@blogger.com (Mark Proctor)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/12/devoxx-and-orf-2008-presentations.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-4470114725513120565</guid><pubDate>Mon, 22 Dec 2008 12:02:00 +0000</pubDate><atom:updated>2008-12-22T13:08:20.502Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">release</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools 5.0 M3/M4 New and Noteworthy Release Summary</title><description>&lt;span style="font-weight: bold;"&gt;Previous New and Noteworth release summary notes:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://blog.athico.com/2008/07/drools-50-m1-new-and-noteworthy.html"&gt;M1&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blog.athico.com/2008/10/drools-50-m2-new-and-noteworthy-summary.html"&gt;M2&lt;/a&gt;&lt;h2&gt;Drools Guvnor&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Category rules allows you to set 'parent rules' for a category. Any rules appearing in the given category will 'extend' the rule specified - ie inherit the conditions/LHS. The base rule for the category can be set on package configuration tab. RHS is not inherited, only the LHS&lt;/li&gt;&lt;li&gt;Scenario runner detects infinite loops&lt;/li&gt;&lt;li&gt;Scenario runner can show event trace that was recorded by audit logger&lt;br /&gt;&lt;h1&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hmyqKKjBjB8/SUeQaNDVRGI/AAAAAAAAAAM/pPaiZ9cTQBU/s1600-h/runner.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 110px;" src="http://3.bp.blogspot.com/_hmyqKKjBjB8/SUeQaNDVRGI/AAAAAAAAAAM/pPaiZ9cTQBU/s200/runner.gif" alt="" id="BLOGGER_PHOTO_ID_5280347867969832034" border="0" /&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;DSL sentences in guided editor can now be set to show enums as a dropdown, dates as a date picker, booleans as a checkbox and use regular expressions to validate the inputs (&lt;a href="http://blog.athico.com/2008/10/dsl-widgets-in-guvnor.html"&gt;DSL Widgets in Guvnor&lt;/a&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Status can be created, renamed and deleted&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;h1&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hmyqKKjBjB8/SUeXv6ZpRwI/AAAAAAAAAAk/Fbsg_mQ_xy8/s1600-h/status_rename.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 110px;" src="http://2.bp.blogspot.com/_hmyqKKjBjB8/SUeXv6ZpRwI/AAAAAAAAAAk/Fbsg_mQ_xy8/s200/status_rename.gif" alt="" id="BLOGGER_PHOTO_ID_5280355937501660930" border="0" /&gt;&lt;/a&gt;&lt;/h1&gt;  Functions can be edited with text editor  &lt;/li&gt;&lt;/ul&gt;&lt;h1&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hmyqKKjBjB8/SUeX5qsyyDI/AAAAAAAAAAs/T3Q-W2iY708/s1600-h/function.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 109px;" src="http://2.bp.blogspot.com/_hmyqKKjBjB8/SUeX5qsyyDI/AAAAAAAAAAs/T3Q-W2iY708/s200/function.gif" alt="" id="BLOGGER_PHOTO_ID_5280356105085700146" border="0" /&gt;&lt;/a&gt;&lt;/h1&gt;&lt;h2&gt;Drools API&lt;/h2&gt;Drools now has complete api/implementation separation that is no longer rules  oriented. This is an important strategy as we move to support other forms of logic, such as workflow and event processing. The main change  is that we are now knowledge oriented, instead of rule oriented. The module drools-api provide the interfaces and factories and we have  made pains to provide  much better javadocs, with lots of code snippets, than we did before. Drools-api also helps clearly show what is intended as a user api and what is just an engine api, drools-core and drools-compiler did not make this clear enough.&lt;br /&gt;&lt;p&gt;The most common interfaces you will use are:  &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;tt&gt;org.drools.builder.KnowledgeBuilder&lt;/tt&gt;  &lt;/li&gt;&lt;li&gt;&lt;tt&gt;org.drools.KnowledgeBase&lt;/tt&gt;  &lt;/li&gt;&lt;li&gt;&lt;tt&gt;org.drools.agent.KnowledgeAgent&lt;/tt&gt;  &lt;/li&gt;&lt;li&gt;&lt;tt&gt;org.drools.runtime.StatefulKnowledgeSession&lt;/tt&gt;  &lt;/li&gt;&lt;li&gt;&lt;tt&gt;org.drools.runtime.StatelessKnowledgeSession&lt;/tt&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;Factory classes, with static methods, provide instances of the above  interfaces. A pluggable provider approach is used to allow provider  implementations to be wired up to the factories at runtime. The Factories you  will most commonly used are:  &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;tt&gt;org.drools.builder.KnowledgeBuilderFactory&lt;/tt&gt;  &lt;/li&gt;&lt;li&gt;&lt;tt&gt;org.drools.io.ResourceFactory&lt;/tt&gt;  &lt;/li&gt;&lt;li&gt;&lt;tt&gt;org.drools.KnowledgeBaseFactory&lt;/tt&gt;  &lt;/li&gt;&lt;li&gt;&lt;tt&gt;org.drools.agent.KnowledgeAgentFactory&lt;/tt&gt; &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;A Typical example to load a rule resource: &lt;/p&gt;&lt;pre&gt;KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();&lt;br /&gt;kbuilder.add( ResourceFactory.newUrlResource( url ),&lt;br /&gt;            ResourceType.DRL );&lt;br /&gt;if ( kbuilder.hasErrors() ) {&lt;br /&gt;  System.err.println( builder.getErrors().toString() );&lt;br /&gt;}         &lt;br /&gt;&lt;br /&gt;KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();&lt;br /&gt;kbase.addKnowledgePackages( builder.getKnowledgePackages() );&lt;br /&gt;&lt;br /&gt;StatefulKnowledgeSession ksession = knowledgeBase.newStatefulKnowledgeSession();&lt;br /&gt;ksession.insert( new Fibonacci( 10 ) );&lt;br /&gt;ksession.fireAllRules();&lt;br /&gt;&lt;br /&gt;ksession.dispose();&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;A Typical example to load a process resource. Notice the ResourceType is  changed, in accordance with the Resource type: &lt;/p&gt;&lt;pre&gt;KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();&lt;br /&gt;kbuilder.add( ResourceFactory.newUrlResource( url ),&lt;br /&gt;            ResourceType.DRF );&lt;br /&gt;if ( kbuilder.hasErrors() ) {&lt;br /&gt;  System.err.println( builder.getErrors().toString() );&lt;br /&gt;}         &lt;br /&gt;&lt;br /&gt;KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();&lt;br /&gt;kbase.addKnowledgePackages( builder.getKnowledgePackages() );&lt;br /&gt;&lt;br /&gt;StatefulKnowledgeSession ksession = knowledgeBase.newStatefulKnowledgeSession();&lt;br /&gt;ksession.startProcess( "Buy Order Process" );&lt;br /&gt;&lt;br /&gt;ksession.dispose();&lt;br /&gt;&lt;/pre&gt;  &lt;p&gt;'kbuilder', 'kbase', 'ksession' are the variable identifiers often used, the  k prefix is for 'knowledge'.&lt;/p&gt;&lt;p&gt;We have uniformed how decision trees are loaded, and they are now consistent with no need to pre generate the DRL with the spreadsheet compiler:&lt;/p&gt;&lt;pre&gt;DecisionTableConfiguration dtconf = KnowledgeBuilderFactory.newDecisionTableConfiguration();&lt;br /&gt;dtconf.setInputType( DecisionTableInputType.XLS );&lt;br /&gt;dtconf.setWorksheetName( "Tables_2" );&lt;br /&gt;kbuilder.add( ResourceFactory.newUrlResource( "file://IntegrationExampleTest.xls" ),&lt;br /&gt;            ResourceType.DTABLE,&lt;br /&gt;            dtconf );&lt;/pre&gt;&lt;p&gt;It is also possible to configure a KnowledgeBase using configuration, via a  xml change set, instead of programmatically. Here is a simple change set: &lt;/p&gt;&lt;pre&gt;&amp;lt;change-set xmlns='http://drools.org/drools-5.0/change-set'&lt;br /&gt;xmlns:xs='http://www.w3.org/2001/XMLSchema-instance'&lt;br /&gt;xs:schemaLocation='http://drools.org/drools-5.0/change-set change-set-5.0.xsd' &amp;gt;&lt;br /&gt;  &amp;lt;add&amp;gt;&lt;br /&gt;      &amp;lt;resource source='classpath:org/domain/someRules.drl' type='DRL' /&amp;gt;&lt;br /&gt;      &amp;lt;resource source='classpath:org/domain/aFlow.drf' type='DRF' /&amp;gt;&lt;br /&gt;  &amp;lt;/add&amp;gt;&lt;br /&gt;&amp;lt;/change-set&amp;gt;&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;And it is added just like any other ResourceType &lt;/p&gt;&lt;pre&gt;KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();&lt;br /&gt;kbuilder.add( ResourceFactory.newUrlResource( url ),&lt;br /&gt;            ResourceType.ChangeSet );&lt;/pre&gt;The other big change for the KnowledgeAgent, compared to the RuleAgent, is that polling scanner is now a service. further to this there is an abstraction between the agent notification and the resource monitoring, to allow  other mechanisms to be used other than polling.  These services currently are not started by default, to start them do the following:&lt;pre&gt;ResourceFactory.getResourceChangeNotifierService().start();&lt;br /&gt;ResourceFactory.getResourceChangeScannerService().start();&lt;/pre&gt;There are two new interfaces added, ResourceChangeNotifier and ResourceChangeMonitor. KnowlegeAgents subscribe for resource change notifications using the ResourceChangeNotifier implementation. The ResourceChangeNotifier is informed of resource changes by the added ResourceChangeMonitors. We currently only provide one out  of the box monitor, ResourceChangeScannerService, which polls resources for changes. However the api is there for users to add their own monitors, and thus use a push based monitor such as JMS.&lt;pre&gt;ResourceFactory.getResourceChangeNotifierService().addResourceChangeMonitor( myJmsMonitor);&lt;/pre&gt;StatelessKnowledgeSessions now support in, inout and out parameters, as apposed to the GlobalExporter:&lt;pre&gt;Parameters parameters = session.newParameters();&lt;br /&gt;Map globalsIn = new HashMap();&lt;br /&gt;globalsIn.put( "inString", "string" );&lt;br /&gt;parameters.getGlobalParams().setIn( globalsIn );  &lt;br /&gt;parameters.getGlobalParams().setOut( Arrays.asList(  new String[]{"list"} ) );&lt;br /&gt;&lt;br /&gt;Map factIn = new HashMap();&lt;br /&gt;factIn.put( "inCheese", cheddar );&lt;br /&gt;parameters.getFactParams().setIn( factIn );&lt;br /&gt;parameters.getFactParams().setOut( Arrays.asList(  new String[]{ "outCheese"} ) );   &lt;br /&gt;&lt;br /&gt;StatelessKnowledgeSessionResults results = session.executeObjectWithParameters( collection, // these facts are anonymous&lt;br /&gt;                                                                              parameters );&lt;/pre&gt;&lt;h2&gt;Drools Fusion&lt;br /&gt;&lt;/h2&gt;&lt;span style="font-size:130%;"&gt; &lt;span style="font-weight: bold;"&gt;Event Garbage Collection&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Since events usually have strong temporal relationships, it is possible to infer a logical time window when events can possibly match. The engine uses that capability to calculate when an event is no longer capable of matching any rule anymore and automatically retracts that event.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Time Units Support&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Drools adopted a simplified syntax for time units, based on the ISO 8601 syntax for durations. This allows users to easily add temporal constraints to the rules writing time in well known units. Example:&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SomeEvent( this after[1m,1h30m] $anotherEvent )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The above pattern will match if SomeEvent happens between 1 minute (1m) and 1 hour and 30 minutes after $anotherEvent.&lt;br /&gt;&lt;h2&gt;Drools Flow&lt;/h2&gt;The Drools Flow framework has been further extended with the following features:&lt;br /&gt;&lt;ul&gt;&lt;li&gt; Process instances can now listen for external events by marking the event node property "external" as true.  External events are signaled to the engine using&lt;br /&gt;&lt;blockquote&gt;session.signalEvent(type, eventData)&lt;/blockquote&gt;More information on how to use events inside your processes can be found in the Drools Flow documentation here: https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/docs/drools-flow/html/ch03.html#d0e917&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Process instances are now safe for multi-threading (as multiple thread are blocked from working on the same process instance)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Process persistence / transaction support has been further improved.  Check out the drools-process/drools-process-enterprise project for more information.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The human task component has been extended to support all kinds of data for input / output / exceptions during task execution.  As a result, the life cycle methods of the task client have been extended to allow content data:&lt;br /&gt;&lt;blockquote&gt;taskClient.addTask(task, contentData, responseHandler)&lt;br /&gt;taskClient.complete(taskId, userId, outputData,responseHandler)&lt;br /&gt;taskFail.complete(taskId, userId, outputData,responseHandler)&lt;br /&gt;&lt;br /&gt;long contentId = task.getTaskData().getDocumentContentId();&lt;br /&gt;taskClient.getContent(contentId, responseHandler);&lt;br /&gt;ContentData content = responseHandler.getContent();&lt;br /&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;li&gt;It is now possible to migrate old Drools4 RuleFlows (using the xstream format) to Drools5 processes (using readable xml) during compilation.  Migration will automatically be performed when adding the RuleFlow to the KnowledgeBase when the following system property is set:&lt;br /&gt;&lt;blockquote&gt;drools.ruleflow.port = true&lt;/blockquote&gt;&lt;/li&gt;&lt;li&gt;The "Transform" work item allows you to easily transform data from one format to another inside processes.  The code and an example can be found in the drools-process/drools-workitems directory.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Function imports are now also supported inside processes.&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;Eclipse IDE&lt;/h2&gt;The Drools Eclipse Plugin contains the following improvements&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Support multiple runtimes:  The IDE now supports multiple runtimes.  A Drools runtime is a collection of jars on your file system that represent one specific release of the Drools project jars.  To create a runtime, you must either point the IDE to the release of your choice, or you can simply create a new runtime on your file system from the jars included in the Drools Eclipse plugin.  Drools runtimes can be configured by opening up the Eclipse preferences and selecting the Drools -&gt; Installed Drools Runtimes category, as shown below.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QGJdI6YA_oA/SUkM6fbSiNI/AAAAAAAAACg/zlDD8OC2X3c/s1600-h/runtimes.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 284px;" src="http://3.bp.blogspot.com/_QGJdI6YA_oA/SUkM6fbSiNI/AAAAAAAAACg/zlDD8OC2X3c/s400/runtimes.png" alt="" id="BLOGGER_PHOTO_ID_5280766237076523218" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Debugging of rules using the MVEL dialect has been fixed&lt;/li&gt;&lt;li&gt;Drools Flow Editor&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Process Skins allow you to define how the different RuleFlow nodes are visualized.  We now support two skins: the default one which existed before and a BPMN skin that visualizes the nodes using a BPMN-like representation: http://blog.athico.com/2008/10/drools-flow-and-bpmn.html&lt;br /&gt;&lt;/li&gt;&lt;li&gt;An (X)OR split now shows the name of the constraint as the connection label&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Custom work item editors now signal the process correctly that it has been changed&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=2kiZO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=2kiZO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=K6VHO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=K6VHO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=O1tpo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=O1tpo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=15SXo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=15SXo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Ugs2O"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Ugs2O" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=pw1yo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=pw1yo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=3fuHO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=3fuHO" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/492167302" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/492167302/drools5-m3-release-notes.html</link><author>noreply@blogger.com (Kris Verlaenen)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_hmyqKKjBjB8/SUeQaNDVRGI/AAAAAAAAAAM/pPaiZ9cTQBU/s72-c/runner.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/12/drools5-m3-release-notes.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-7912141285077308562</guid><pubDate>Mon, 22 Dec 2008 04:37:00 +0000</pubDate><atom:updated>2008-12-22T04:51:29.768Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools sighting - a client side app</title><description>Well its been out of fashion for a long time, but for some purposes a client side app is really the only answer !&lt;br /&gt;&lt;br /&gt;Interestingly someone pointed out to me the Australian Tax Offices "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;eSAT&lt;/span&gt;" application  (a multi-platform multi-lingual application for accountants) uses drools - and its a client side app !&lt;br /&gt;&lt;br /&gt;This is an application that is distributed to about 12 000 accounting professionals (it has an offline and online component) related to superannuation (that's like 401k - retirement savings):&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_KukQ8TlQMz8/SU8b5mmvEcI/AAAAAAAAAZg/pPo2RWDZ2ZU/s1600-h/Picture+1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 278px;" src="http://3.bp.blogspot.com/_KukQ8TlQMz8/SU8b5mmvEcI/AAAAAAAAAZg/pPo2RWDZ2ZU/s320/Picture+1.png" alt="" id="BLOGGER_PHOTO_ID_5282471564358390210" border="0" /&gt;&lt;/a&gt;Interestingly, they use &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;pre&lt;/span&gt;-compiled rules (being finance and government related, they tend to use a fair few rules !) - and only distribute the "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;runtime&lt;/span&gt;" as part of the app. One of the key constraints of this application is that it had to fit within a certain download size (so every dependency had to be analysed to see if it was really needed).&lt;br /&gt;&lt;br /&gt;So there you go, client side apps are still around - and this one by &lt;span style="font-weight: bold;"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Cordelta&lt;/span&gt;&lt;/span&gt; looks like a pretty good one when I tried it on my mac (they have &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;distros&lt;/span&gt; for all platforms).&lt;br /&gt;&lt;br /&gt;The &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;ATO&lt;/span&gt; site where the app came from is &lt;a href="http://www.ato.gov.au/smsf/content.asp?doc=/content/00157275.htm"&gt;here&lt;/a&gt;.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=fi3KO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=fi3KO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=hBYHO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=hBYHO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=WC35o"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=WC35o" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=e3vwo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=e3vwo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=l1kvO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=l1kvO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=BWOwo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=BWOwo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=ZNUDO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=ZNUDO" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/491918427" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/491918427/drools-sighting-client-side-app.html</link><author>noreply@blogger.com (Michael Neale)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_KukQ8TlQMz8/SU8b5mmvEcI/AAAAAAAAAZg/pPo2RWDZ2ZU/s72-c/Picture+1.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/12/drools-sighting-client-side-app.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-6612643370762156049</guid><pubDate>Fri, 05 Dec 2008 11:18:00 +0000</pubDate><atom:updated>2008-12-05T11:19:39.793Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools at Devoxx</title><description>Kris and myself will be at &lt;a href="http://devoxx.com/"&gt;Devoxx &lt;/a&gt;next week, we will be co-presenting the University session "&lt;a href="http://devoxx.com/display/JV08/Declarative+programming+with+Rules%2C+Workflow+and+Event+Processing"&gt;Declarative programming with Rules, Workflow and Event Processing&lt;/a&gt;".&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Monday the 8th of Dec, 09.30, room 7.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=VEyBO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=VEyBO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=jCVMO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=jCVMO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=sHEfo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=sHEfo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=dzzoo"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=dzzoo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=EY2WO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=EY2WO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Fk4go"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Fk4go" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=OgpFO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=OgpFO" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/475614275" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/475614275/drools-at-devoxx.html</link><author>noreply@blogger.com (Mark Proctor)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/12/drools-at-devoxx.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-7950130009189405745</guid><pubDate>Mon, 01 Dec 2008 14:29:00 +0000</pubDate><atom:updated>2008-12-01T14:56:53.998Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools Flow</category><title>Fluent Process API</title><description>A recent addition to Drools Flow allows users to create processes using what could be called a "fluent API".  While it has always been possible to create processes using our graphical editor or the underlying XML, we do acknowledge that some people simply prefer creating process definitions using an API.  The underlying example shows how easy it is now to create a simple "Hello World" example process using this API:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;&lt;pre&gt;RuleFlowProcessFactory factory =&lt;br /&gt;    RuleFlowProcessFactory.createProcess("org.drools.process");&lt;br /&gt;factory&lt;br /&gt;    // header&lt;br /&gt;    .name("My process").packageName("org.drools")&lt;br /&gt;    // nodes&lt;br /&gt;    .startNode(1).name("Start").done()&lt;br /&gt;    .actionNode(2).name("Action")&lt;br /&gt;    .action("java", "System.out.println(\"Hello World\");").done()&lt;br /&gt;    .endNode(3).name("End").done()&lt;br /&gt;    // connections&lt;br /&gt;    .connection(1, 2)&lt;br /&gt;    .connection(2, 3);&lt;br /&gt;RuleFlowProcess process = factory.validate().getProcess();&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;Many thanks go out to &lt;span style="font-weight: bold; font-style: italic;"&gt;salaboy&lt;/span&gt; for doing a large part of the work and adding the  different factories to create the various types of nodes supported in RuleFlow.  This also shows how easy it is to contribute to the Drools project if you want to:  come join us at our #drools irc channel, describe what you want to do and we'll help you as much as possible and welcome contributions !&lt;br /&gt;&lt;br /&gt;Kris&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=nFOWO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=nFOWO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=yLLSO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=yLLSO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=ucQ7o"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=ucQ7o" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Hh2go"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Hh2go" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=iUWGO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=iUWGO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=YXH9o"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=YXH9o" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=AfoRO"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=AfoRO" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/471379542" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/471379542/fluent-process-api.html</link><author>noreply@blogger.com (Kris Verlaenen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.athico.com/2008/12/fluent-process-api.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-5583360219302864610</guid><pubDate>Mon, 01 Dec 2008 03:10:00 +0000</pubDate><atom:updated>2008-12-01T03:16:48.735Z</atom:updated><title>Open Source Developers Conference - Sydney</title><description>Michael (that's me !) is speaking at the &lt;a href="http://www.osdc.com.au/2008/index.html"&gt;OSDC&lt;/a&gt; conference in Sydney this week (Wednesday morning to be precise).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_KukQ8TlQMz8/STNW0CH9g1I/AAAAAAAAAVE/1JyMojqT1AY/s1600-h/Picture+1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 142px; height: 170px;" src="http://3.bp.blogspot.com/_KukQ8TlQMz8/STNW0CH9g1I/AAAAAAAAAVE/1JyMojqT1AY/s320/Picture+1.png" alt="" id="BLOGGER_PHOTO_ID_5274655040504431442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;OSDC is a community organised conference for open source developers (and end users/organisations). It has a fairly technical focus, and lots of jokes/fun (the lightning talks are usually quite amazing).&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=QYGuN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=QYGuN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=DpXIN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=DpXIN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=xiB6n"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=xiB6n" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=UF6dn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=UF6dn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=hAUkN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=hAUkN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=imWQn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=imWQn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=bGUQN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=bGUQN" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/470855718" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/470855718/open-source-developers-conference.html</link><author>noreply@blogger.com (Michael Neale)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_KukQ8TlQMz8/STNW0CH9g1I/AAAAAAAAAVE/1JyMojqT1AY/s72-c/Picture+1.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/12/open-source-developers-conference.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-6152150236163789522</guid><pubDate>Wed, 26 Nov 2008 18:26:00 +0000</pubDate><atom:updated>2008-11-26T18:29:37.830Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools Live Documentation</title><description>&lt;a href="http://hudson.qa.jboss.com/hudson/job/drools/"&gt;Hudson&lt;/a&gt;, our continuous build server, now outputs our full documentation and javadocs with new summary pages for easy navigation. So now as we improve the docs, ready for Drools 5.0 final, you can see things as they change:&lt;br /&gt;&lt;a href="https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/docs/index.html"&gt;Documentation&lt;/a&gt;&lt;br /&gt;&lt;a href="https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/javadocs/index.html"&gt;JavaDocs&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Q3mMN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Q3mMN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=0QDHN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=0QDHN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=xnMNn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=xnMNn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=949Dn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=949Dn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=FKr0N"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=FKr0N" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=fgZ4n"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=fgZ4n" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=UDtMN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=UDtMN" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/466484398" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/466484398/drools-live-documentation.html</link><author>noreply@blogger.com (Mark Proctor)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/11/drools-live-documentation.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-9205752583326684059</guid><pubDate>Mon, 24 Nov 2008 03:58:00 +0000</pubDate><atom:updated>2008-11-25T22:33:27.271Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">CEP</category><category domain="http://www.blogger.com/atom/ns#">Business Rules Governance</category><category domain="http://www.blogger.com/atom/ns#">Business Rules</category><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">BRMS Guvnor Drools</category><title>Whats new in Drools 5 video and Q&amp;A session</title><description>Last week (very late night my time) we had a "webex" online seminar talking about what is new in Drools 5, followed by a question and answer session.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="300" width="400"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=2329362&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1"&gt;&lt;embed src="http://vimeo.com/moogaloop.swf?clip_id=2329362&amp;amp;server=vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;show_portrait=0&amp;amp;color=&amp;amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" height="300" width="400"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;a href="http://vimeo.com/2329362"&gt;Drools 5 Whats New&lt;/a&gt; from &lt;a href="http://vimeo.com/user966539"&gt;Michael Neale&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;(You can also access the original &lt;a href="https://jboss.webex.com/jboss/lsr.php?AT=pb&amp;amp;SP=EC&amp;amp;rID=34145337&amp;amp;rKey=99185437BB7B7079"&gt;webex video here&lt;/a&gt; - which has all the slides and some answers etc - you will need to download the free webex client however). Apologies: there is a blacked out bit around 10 mins in, I will see if I can correct it (its not that its showing anything secret - I promise !)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;UPDATE: &lt;/span&gt;There was a higher fidelity quicktime one  - but I burnt through the 2 gig monthly limit in hours (whoops - I totally forgot to read the fine print !). If people want the hi-fi one, I will make it available on another link. I forgot quite a few people read this !&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Q&amp;amp;A &lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;following is most of the questions (with answers !) to the viewers that were online at the time:&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt; _________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: How is Drools Flow different from jBPM?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: A different approach - behavioural modelling, event driven, integrated and mixed with rules. Process model is continually emitting events for the rules to consume. Same API (as rules). &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Drools5 is currently in MR2 phase. What is the planned GA date for Drools 5?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;A: M3 will be out today - a candidate release is expected in the first week of December, shortly followed by "GA" unless major issues are found. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: For long-running processes involving human tasks, how is the state of the process/flow persisted?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt; A: Various approaches available - database via hibernate for instance, file system, all intended for high performance. Working Memories are now transactional and persistable (JPA is also an option). &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: While you have "Flow" worklow as part of your solution, can the rules engine work with other BPM/workflow applications (e.g. Microsoft Sharepoint MOSS)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Certainly. You can use just rules, no issue. In that specific case with heterogenous environment, you could access the rules as a service via XML or JSON (drools-server) from the SharePoint side (or you could use the ESB, many options). You only need to use what you need for your specific project, it is not monolithic. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are there plans to integrate with Netbeans?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Eclipse is the developer tooling platform we target currently, however there have been informal chats with Netbeans people on this, but nothing concrete at this point in time. Ideally someone from the community will get involved with this, which would set a clear direction (that is how the Eclipse one started a few years ago).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: I am fairly new to DROOLS. can I hookup my Eclipse IDE with Guvnor?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Yes. There is a plug in which lets you explore artifacts in Guvnor. You can also browse the web GUI from within your IDE with this plug in.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Does the new Asym Rete reduce Memory usage?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: In some cases (a high end logistics user has reported some reduction in memory usages for very large heaps). For some smaller cases there may not be a noticable difference. The key difference is that fact objects do not need to be "shadowed" - this means the state of the facts does not have to be copied (obviously for large numbers of facts this reduces memory and increases speed).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: We saw Dynamic Fact model - does this mean for a change in the fact model, we dont have to build and redeploy the rules?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;A: If you are making a change to the fact model - you will need to redeploy the rules if you want to use the new fields in the fact model (obviously !). The dynamic fact model is deployed along with the rules.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Can a model be supplied from an external datasource?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: A declarative model is "drl" source code - so it can come from any source, but must be available at rule "compile" time. But the data to populate the model instances (facts) - certainly !&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: How is the associated pojo/class created and accessed when the model is defined from within Guvnor?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Using a reflection-like API (you can also use your own bean-mapping tools - as behind the scenes it is a class that follows the java bean pattern).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: any plans to support an API-based approach to create rules? (instead of drl file based)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: There are several APIs that are used internally to generate rules (and there is the AST directly) - but there is no plan to have the "old" style "pojo rules" which can't easily cope with higher order logic which is common in a rule language. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: In BRMS 5.0.0.M1, I used to have an "upload" button to add DSL (just like I can upload Model jars).  It was removed to just a copy/paste textarea in 5.0.0.M2.  Why?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: This was actually a mistake in M1 - it was always a text area (an additional upload may be provided in future if enough people want it).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Can the enumarations be picked from a database?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Yes they can. An MVEL (expression language) expression can retrieve the lists via JDBC or any other means you choose. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Is seamless integration with a BPM still possible and Drools 5 can be used just as a rules engine with BRMS (we would not need the Modeling and Processing as we need to integrate with our BPM).&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Yes - as mentioned before, its totally modular and most features are optional (you only use what you need).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: When using the guided rule editor, what happens when you type a letter in an integer variable field?  When is validation done?  Also, will there be a date picker for date variable fields?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: It will not allow you to enter invalid characters. Date picker is not available in that editor yet. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: When defining a fact model object as an analyst, types like "Integer, Boolean, Float" don't make sense to me.  Will they be defined or renamed so analysts can understand what they stand for?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: No reason - a bug has been raised to ensure this is corrected. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are java 5+ "Enums" supported in Guvnor for drop-down choices in web decision tables *and* in guided rule editor variable selection?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: No, not at this stage.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Can security integrate with other authentication/authorization sources such as LDAP/AD?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Yes - JAAS is used (via Seam). Coarse grained authorization (admin users) as well as Authentication can work with LDAP and AD (that is recommended).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are user permissions only enforceable at the package level, not by Categories?  Once you have access to read/write a package, is everything in that package available to you, or can it be more fine-grained?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Can be enforced at the category level. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Can the workflows (ruleflows) be defined from within the Guvnor (versus Eclipse)?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Not at present - only viewed (limited editing) but in the near future full editing of flow diagrams will be supported (we are trying out various ajax and possibly flex techniques to make sure we can target all the popular browser platforms).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: What does a Foo.scenario look like in the eclipse plugin if you open it up?  Can you run scenarios from eclipse?  Can they be grouped to be part of a continuous build/test nightly process?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: It is XML. Yes you can - using the ScenarioRunner class (from code).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: In WebDAV, how are user permissions enforced? Can I change or edit rules in WebDAV mode?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Fine grained permissions are not enforced in WebDAV at the moment - only authentication. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are Web decision tables customizable?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: To some extent - the grouping can be setup, as can widths/names of columns etc..., but not to the extend that spreadsheet based ones are. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Regarding security, is it custom in Guvnor, or is it linked up to JAAS LoginModules like other standard apps?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: JAAS. No out of the box authentication is provided - it is delegated to the container. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Is security rights defined in the Guvnor also enforced when editing assets using the elcipse plugin?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Only authentication - as this uses the WebDAV facility (at present).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: is there any way to import xls file to rule repository&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: You can import - but it will not convert them to web based decision tables - it will simply be stored as is, and used as is in a rule package.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are fact models created within Guvnor versioned  Such as source would be in cvs/SubVersion/clearcase . . .&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Yes they are. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Can rule flows be invoked via a JSR 94 interface?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Not at this stage. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: In drools 4 - we had to turn off the AOP - caching because it conflicted with our own cache.  Has that whole concept of truth maintenance been re-vamped in drools 5?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: It was highly likely it was the shadow facts (little proxy classes generated to copy data from facts) - these would cause havoc with AOP and other tools. Shadow facts are no longer needed in drools 5. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Any Apache Camel or Spring Integration - support?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: There are some members of the community working on this. In terms of spring - there are a few ways people have used it available on the wiki. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Web service exposure of the rules is still through custom methods or is there "out of box" functionality to expose them?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: There is an "out of the box" module called "drools-server" which uses the RuleAgent to expose rules as RESTful services (XML or JSON payloads for the facts). &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: can business users publish the rule to production after testing the rules edited by them&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: This depends on the configuration - if you want, yes. Generally though someone with "full access" to Guvnor would create a snapshot for production usage which the remote rule agents then consume. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: What really is a partition for events?  In traditional programming we have shared memory and threads working over that memory.  Is a partition like a thread - or is an actual partition of the working memory?  Would you please define your terms.  Thank you.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: There is some partitioning of the working memory for the concurrent threads handling the event streams - but it is of course one memory space (one java process) - so a partition exists to help this per-thread isolation.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Is the goal of Drools 5 - BLIP + BPML + BPEL?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Not at this stage (for the 5.0 release anyway). BPML has had some interest and there has been quite a bit of work in both BPML and BPEL as popular standards. "BLiP" is really a cute acronym meaning the combined business logic approaches of rules and processes.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are thre any changes in the (de)serialization of rules in Drools 5? We had problems with the size of the serialized rules when having more than 2K rules because all imports for the package were included into every rule&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: There has been a LOT of work around serialization and de-serialization to make it much more efficient. You should certainly see an improvement here.  &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are there any integration with rule mining tools such as Relativity? i.e. Go throught the lines of cobol code harvest the rules and automagically import them in drools as a rule.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: No - not that we have heard of (an ISV may have done something along these lines though).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: Are the rules stored in repository so that they can be reused&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: Not in this version, but that is on the roadmap for a near future version (requires dependency analysis so its slightly more complicated then it sounds).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;_________________________________________________________________&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Q: how do we use the binery package for further use?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;A: You can use the RuleAgent to access the binary .pkg either directly from the repository, or from the file system. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=CxgNN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=CxgNN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=A6nZN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=A6nZN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=9P4dn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=9P4dn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=yJIBn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=yJIBn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=CyCjN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=CyCjN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=C1g1n"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=C1g1n" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=MIFiN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=MIFiN" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/463476541" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/463476541/whats-new-in-drools-5-video-and-q.html</link><author>noreply@blogger.com (Michael Neale)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/11/whats-new-in-drools-5-video-and-q.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-5222683525398463568</guid><pubDate>Thu, 06 Nov 2008 01:20:00 +0000</pubDate><atom:updated>2008-11-07T16:58:29.406Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">SOA</category><category domain="http://www.blogger.com/atom/ns#">semantic web</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Semantic SOA</title><description>So was talking to my friend Benjamin Grosof, ex MIT Sloan Professor, from Paul Allen's cutting edge research company &lt;a href="http://www.vulcan.com/TemplateHome.aspx?contentId=1"&gt;Vulcan Inc&lt;/a&gt;. While talking about next generation stuff he introduced me to the concept of Semantic SOA, he personally believes this will be the next big thing. It took a while for the concept to sink in, but once it did I was shocked to my core over the possible impact of such technology. Unfortunately he's twisted my arm, so I can't talk about it further :( But I'd be very interested to here what other people think this is about, and whether Gartner or other analysts have picked up on this yet.&lt;br /&gt;&lt;br /&gt;update (7th of Nov 2009): heh, this was a hoax for a bit of fun. While at BRF I mentioned that I'm pushing the term "Business Logic" for a product that was neither rule centric or process centric. So our minds went wandering about other possible names, then obviously we thought it would be funny if we combine the hype of Semantic Web with the hype of SOA and see the response :)&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=AeUtN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=AeUtN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=XC8fN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=XC8fN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=RAOXn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=RAOXn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=4QCin"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=4QCin" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=ZL5VN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=ZL5VN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=lPWQn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=lPWQn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=tjNcN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=tjNcN" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/443883881" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/443883881/semantic-soa.html</link><author>noreply@blogger.com (Mark Proctor)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://blog.athico.com/2008/11/semantic-soa.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-7148710165445973089</guid><pubDate>Mon, 03 Nov 2008 01:17:00 +0000</pubDate><atom:updated>2008-11-05T17:25:07.763Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools Presentation at Belgian JBug</title><description>I'll be giving a presentation about Drools in general (and some more details on Drools Flow specifically), on the first Belgian JBoss User Group, this Friday November 7th in Huizingen.  The event starts at 17h.  There will additional presentations from Nicolas Leroux on the latest development methods using Java EE, Seam, Hibernate, etc. and from Alexey Loubyanski on the new features of the upcoming JBoss AS 5 release.&lt;br /&gt;&lt;br /&gt;All the information can be found on the Belgian JBug website: &lt;a href="http://www.jbug.be/"&gt;http://www.jbug.be/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;As far as I know, the maximum capacity has not yet been reached so do not hesitate to register if you are around and interested in Drools,  any of the other topics or just in JBoss in general !&lt;br /&gt;&lt;br /&gt;Kris&lt;a href="http://www.jbug.be/"&gt;&lt;span style="display: block;" id="formatbar_Buttons"&gt;&lt;span class="down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;img src="http://www.blogger.com/img/blank.gif" alt="Link" class="gl_link" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=IS7hN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=IS7hN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=EsQmN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=EsQmN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=AuWOn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=AuWOn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=4g2qn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=4g2qn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=I7k8N"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=I7k8N" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=50ZWn"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=50ZWn" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=qAeIN"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=qAeIN" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/440478928" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/440478928/drools-presentation-at-belgian-jbug.html</link><author>noreply@blogger.com (Kris Verlaenen)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/11/drools-presentation-at-belgian-jbug.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-742112452681318938</guid><pubDate>Mon, 27 Oct 2008 00:41:00 +0000</pubDate><atom:updated>2008-10-28T16:03:12.830Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">DSL</category><category domain="http://www.blogger.com/atom/ns#">Guvnor</category><title>DSL Widgets in Guvnor</title><description>&lt;p&gt;The Drools DSL format has been updated to allow for the addition of metadata to provide for user friendly widgets when using a DSL in combination with the guided editor. The DSL sentence can now display a dropdown for an enumeration, a date selector, a checkbox, and allows for the restriction of the value that can be entered in a text field via a regular expression. The regular expression validates against the contents of the text box and displays a message to the user when an invalid value is entered.Examples of each format are shown below along with screenshots from Guvnor&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Defining a dropdown driven by a Guvnor Enum:&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Format:&lt;/strong&gt;&lt;br /&gt;  {&amp;lt;variablename&amp;gt:ENUM:&amp;lt;type.fieldname&amp;gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;  [when]When the credit rating is {rating:ENUM:Applicant.creditRating} = applicant:Applicant(credit=="{rating}")&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_wtou1icyXII/SQUT7kYfUaI/AAAAAAAAAAM/E23TZ2DO_IE/s1600-h/Dropdown.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_wtou1icyXII/SQUT7kYfUaI/AAAAAAAAAAM/E23TZ2DO_IE/s320/Dropdown.bmp" alt="" id="BLOGGER_PHOTO_ID_5261633653751894434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Define a date selector via DSL:&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Format:&lt;/strong&gt;&lt;br /&gt;  {&amp;lt;variablename&amp;gt;:DATE:&amp;lt;date&amp;gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;  [when]When the applicant dates is after {dos:DATE:dd-MMM-YYYY}=applicant:Applicant(applicationDate&gt;"{dos}")&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_wtou1icyXII/SQUVHXt9L9I/AAAAAAAAAAU/rAR5dy2gEX8/s1600-h/Date.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://2.bp.blogspot.com/_wtou1icyXII/SQUVHXt9L9I/AAAAAAAAAAU/rAR5dy2gEX8/s320/Date.bmp" alt="" id="BLOGGER_PHOTO_ID_5261634956022329298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Defining a checkbox via DSL:&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Format:&lt;/strong&gt;&lt;br /&gt;  {&amp;lt;variablename&amp;gt;:BOOLEAN:defaultValue[checked | unchecked]}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;  [when]When the applicant approval is {bool:BOOLEAN:checked} =applicant:Applicant(approved=={bool})&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_wtou1icyXII/SQUWQ8wlv3I/AAAAAAAAAAc/Osa_l-Xq3q8/s1600-h/Checkbox.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://4.bp.blogspot.com/_wtou1icyXII/SQUWQ8wlv3I/AAAAAAAAAAc/Osa_l-Xq3q8/s320/Checkbox.bmp" alt="" id="BLOGGER_PHOTO_ID_5261636220095938418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Define a restriction on a textbox via a regular Expression:&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Format:&lt;/strong&gt;&lt;br /&gt;  {&amp;lt;variablename&amp;gt;:&amp;lt;regex&amp;gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br /&gt;  [when]When the age is less than {num:1?[0-9]?[0-9]} = applicant:Applicant(age&amp;lt;{num})&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_wtou1icyXII/SQUW2emE5rI/AAAAAAAAAAk/fENwQ_pDRPY/s1600-h/Regex.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_wtou1icyXII/SQUW2emE5rI/AAAAAAAAAAk/fENwQ_pDRPY/s320/Regex.bmp" alt="" id="BLOGGER_PHOTO_ID_5261636864833808050" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=P0WQM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=P0WQM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Gg6IM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Gg6IM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=v5T7m"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=v5T7m" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=KNQwm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=KNQwm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=V3ubM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=V3ubM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=n5HSm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=n5HSm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=TtqEM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=TtqEM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/433089206" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/433089206/dsl-widgets-in-guvnor.html</link><author>noreply@blogger.com (Joe White)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_wtou1icyXII/SQUT7kYfUaI/AAAAAAAAAAM/E23TZ2DO_IE/s72-c/Dropdown.bmp" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/dsl-widgets-in-guvnor.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-6587396855337090223</guid><pubDate>Sun, 26 Oct 2008 12:28:00 +0000</pubDate><atom:updated>2008-10-26T12:44:30.940Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Symmetrical and Asymmetrical Rete</title><description>In my endeavours to understand Clips I realised that it's Rete implementation was different to the more classical approach, as used by Drools 4. I haven't read anything in the past that attempted to give this difference a name, so I adopted the terminology of symmetrical Rete and asymmetrical Rete. It was really nice to see this decision validated by Gary Riley, the author of Clips, who used the terminology in his presentation on Rete enhancements in Clips at the &lt;a href="http://www.rulesfest.org/"&gt;Rules Fest&lt;/a&gt; in Texas.&lt;br /&gt;&lt;br /&gt;Here is a quick explanation of the difference, without getting into the details on merit, in Drools 4 we use the classical approach of the retract being the same work as assert, except on the assert data is added to the memory on retract data is removed. By this I mean that the fact propagates through the network, for each join node the constraints are evaluated to determine the joins, the join is made and the fact plus the new join fact are propagated, each propagation into a new join node is added to the join node's memory. The retract is exactly the same, the constraints are re-evaluated to determine the previous joins so that the join and propagation can be remade, this time the facthandle and it's joined data are removed from the join node memory. With the work done for the attract and assert being the same I dubbed this symmetrical Rete.&lt;br /&gt;&lt;br /&gt;In Drools 5 we adopted the Clips algorithm. Here the assert uses a lot of linked reference so that the propagation creates a chain of tokens. The retract can now iterate this chain of references removing data from the node memories, the joins do not need to be recalculated to determine which facts we joined against, we already know this as we have the references. As the work done for the retract is now different to the assert I dubbed this assymetrical Rete.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Med4M"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Med4M" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=SNVFM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=SNVFM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=icVKm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=icVKm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=g6SHm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=g6SHm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=ftKhM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=ftKhM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=IkJHm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=IkJHm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=wROYM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=wROYM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/432550621" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/432550621/symmetrical-and-asymmetrical-rete.html</link><author>noreply@blogger.com (Mark Proctor)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">11</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/symmetrical-and-asymmetrical-rete.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-3687122334886150062</guid><pubDate>Sun, 26 Oct 2008 06:16:00 +0000</pubDate><atom:updated>2008-10-26T07:01:31.828Z</atom:updated><category domain="http://www.blogger.com/atom/ns#">DRL</category><category domain="http://www.blogger.com/atom/ns#">Business Rules</category><category domain="http://www.blogger.com/atom/ns#">BRMS</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>While everyone was having fun at ORF... (some of us got some work done !)</title><description>I (Michael) was not able to travel to texas for the meetup, due to an imminent addition to the family.&lt;br /&gt;&lt;br /&gt;However, with the wonders of 2003 technology I was able to "attend" in a sense - Skype and Elluminate (skype had nicest voice quality - at least to my ears).&lt;br /&gt;&lt;br /&gt;Just a quick update of some new features that fell out of some work that happened during ORF/rule meetup:&lt;br /&gt;&lt;br /&gt;Jeff Delong requested that the Scenario runner be able to show an "audit log" of events (tracing the execution of the rules - this is similar to what you can do in the IDE using the logging event listener and the plugin. This was relatively easy to to:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_KukQ8TlQMz8/SQQSCukW5fI/AAAAAAAAAU0/-Bjq_Uay4so/s1600-h/Picture+1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 126px;" src="http://3.bp.blogspot.com/_KukQ8TlQMz8/SQQSCukW5fI/AAAAAAAAAU0/-Bjq_Uay4so/s320/Picture+1.png" alt="" id="BLOGGER_PHOTO_ID_5261350102745146866" border="0" /&gt;&lt;/a&gt;So after you run a scenario, you can show the event log to trace the execution - very useful for explaining how the rules came to a certain conclusion. This shows all events (including ruleflow should it be invoked). Note that if you are using "pojo" facts, be sure to put in a sensible toString() method to show the state (the above ones did not, hence the "pointer address" style messages !).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Michael&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;from Franklin American&lt;/span&gt; was at the rules meetup, and contributed a feature called "category rules" (more details on this in future) - it is a really clever idea: you specify that rules tagged in a certain category "extend" a specified rule. Before he could do this he had to add the "extends" feature to rules - so a rule can extend another rule (it "inherits" the conditional part - just single inheritance - very simple !).&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_KukQ8TlQMz8/SQQUB0ZXqfI/AAAAAAAAAU8/HW7s7aiFIc8/s1600-h/Picture+3.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 36px;" src="http://1.bp.blogspot.com/_KukQ8TlQMz8/SQQUB0ZXqfI/AAAAAAAAAU8/HW7s7aiFIc8/s320/Picture+3.png" alt="" id="BLOGGER_PHOTO_ID_5261352286153058802" border="0" /&gt;&lt;/a&gt;(excuse my random keyboard-mashing names - unseasonal cold weather has locked up my joints for typing !).  This is quite a neat idea - you could use it to simplify rule authoring so that the mere fact that a rule belongs in a certain category implicitly applies extra filtering constraints to it (that was the case Michael had in mind, I am sure he will provide a more concrete example in the future).&lt;br /&gt;&lt;br /&gt;Also, &lt;span style="font-weight: bold;"&gt;Joe of Recondotech&lt;/span&gt; contributed an enhancement to DSL's to allow drop downs, dates and such to be configured in a DSL and an editor rendered accordingly - which provides a more user friendly way of building form-style UIs for business users.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=x4tPM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=x4tPM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=nWH8M"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=nWH8M" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=BaqTm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=BaqTm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=uOFom"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=uOFom" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=UfNlM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=UfNlM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=m2vnm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=m2vnm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=s8vsM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=s8vsM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/432358813" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/432358813/while-everyone-was-having-fun-at-orf.html</link><author>noreply@blogger.com (Michael Neale)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_KukQ8TlQMz8/SQQSCukW5fI/AAAAAAAAAU0/-Bjq_Uay4so/s72-c/Picture+1.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/while-everyone-was-having-fun-at-orf.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-7113314371789687686</guid><pubDate>Thu, 23 Oct 2008 15:43:00 +0000</pubDate><atom:updated>2008-10-23T21:46:45.707+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">CEP</category><category domain="http://www.blogger.com/atom/ns#">RuleML 2008</category><category domain="http://www.blogger.com/atom/ns#">ORF 2008</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>October Rules Fest  (day 1) and the upcoming RuleML conference</title><description>As mentioned before, we are all attending the &lt;a href="http://www.rulesfest.org/"&gt;October Rules Fest in Dallas&lt;/a&gt;. The very first thing that I said when I saw the presentation list was:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;- Wow!! &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The October Rules Fest group managed to host the best technical convention on BR I ever attended to, and managed to have not only the most &lt;a href="http://www.rulesfest.org/OctoberRulesFest/Speakers.html"&gt;known products and vendors&lt;/a&gt; attending, but specially some of the most known &lt;a href="http://www.rulesfest.org/OctoberRulesFest/Speakers.html"&gt;researchers &lt;/a&gt;in the rules engines field. Take a look at the speakers and &lt;a href="http://www.rulesfest.org/OctoberRulesFest/Agenda.html"&gt;the agenda&lt;/a&gt;: we have Charles Forgy, Gary Riley, Gopal Gupta, .... you name it!&lt;br /&gt;&lt;br /&gt;Yesterday was the first day and it was a very good day. The presentation that most intrigued me was "Why systems fail, Why systems work" by Rolando Hernandez. I need to say that I was not familiar with the &lt;a href="http://www.zifa.com/?source=google"&gt;Zachman Enterprise Architecture Framework&lt;/a&gt; (&lt;a href="http://en.wikipedia.org/wiki/Zachman_framework"&gt;wikipedia&lt;/a&gt;), but when he (and also Dr Leon A. Kappelman in the previous presentation) showed the diagram of the framework, &lt;span style="font-weight: bold;"&gt;it just made sense&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Rolando went a step further stating that Business Rules are not represented as a column or line the framework, but are the glue that binds together all the columns and permeates the enterprise architecture. He showed a "donuts like" hexagram, where each edge represents one of the columns in the framework and the center of the donut represents the business rules "glue". His presentation &lt;a href="http://www.rulesfest.org/OctoberRulesFest/Presentations.html"&gt;will be here&lt;/a&gt;, when he uploads it.&lt;br /&gt;&lt;br /&gt;From my perspective, this is something that I firmly believe and matches the Drools vision of a platform that allows you to express your business rules in a declarative way. It was natural then to understand his diagram showing processes and event processing as component models of the whole architecture.&lt;br /&gt;&lt;br /&gt;Now if you think about the problem, how can you write your rules, or model your business if you will, if your rules engine does not know the concept of events and processes? That is why we, at the Drools team, are working to expand the Drools engine so that processes and events can be handled as first class citizens of your Business Model.&lt;br /&gt;&lt;br /&gt;If your rule involves events, just state it. If your rule involves processes, just state it.&lt;br /&gt;&lt;br /&gt;The good news is that we are not the only ones saying it, and that proves we are not crazy (or at the very least not the only ones that are crazy). Take a look at the &lt;a href="http://www.cs.manchester.ac.uk/ruleML/program.php"&gt;RuleML conference agenda&lt;/a&gt; for next week. Even being a rules related conference, look at both keynotes for the first day:&lt;br /&gt;&lt;a href="http://www.cs.manchester.ac.uk/ruleML/keynotes.php#haley"&gt;&lt;br /&gt;&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.cs.manchester.ac.uk/ruleML/keynotes.php#haley"&gt;&lt;span style="font-weight: bold;"&gt;Event and Process Semantics will Rule&lt;/span&gt;&lt;/a&gt;, &lt;span style="font-style: italic;"&gt;by Paul Haley&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.cs.manchester.ac.uk/ruleML/keynotes.php#luckham"&gt;&lt;span style="font-weight: bold;"&gt;The Power of Events: An Introduction to Complex Event Processing in Distributed Enterprise Systems&lt;/span&gt;&lt;/a&gt;, &lt;span style="font-style: italic;"&gt;by David Luckham&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;For those not familiar with them, Paul Haley is one of the fathers of current Business Rules technologies and David Luckham is one of the fathers of current Complex Event Technology. There is no way I will miss!&lt;br /&gt;&lt;br /&gt;Can we get a better endorsement than that?&lt;br /&gt;&lt;br /&gt;Happy Drooling,&lt;br /&gt;Edson&lt;br /&gt;&lt;br /&gt;PS: the presentation I did is available at the &lt;a href="http://www.rulesfest.org/OctoberRulesFest/Presentations_files/ORF_Drools_5_CEP_final_v2.pdf"&gt;conference site&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;[edit: fixed the reference to the actual conference organization group. Thank you for pointing that out James.]&lt;/span&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=6fRcM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=6fRcM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=XP8CM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=XP8CM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=NPq4m"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=NPq4m" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=GV1Ym"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=GV1Ym" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=oHdmM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=oHdmM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=vx8Qm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=vx8Qm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=7kceM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=7kceM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/429822649" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/429822649/october-rules-fest-day-1-and-upcoming.html</link><author>noreply@blogger.com (Edson Tirelli)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/october-rules-fest-day-1-and-upcoming.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-7937158643385383083</guid><pubDate>Mon, 20 Oct 2008 20:14:00 +0000</pubDate><atom:updated>2008-10-20T21:19:23.401+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools Boot Camp</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools Boot Camp T-Shirts</title><description>T-Shirts Finally Arrived today, so everyone was very excited :) Thought I'd put up some photo's of our motley crew - Asif and Andrea (who have been here the other days) could not make it today, so they missed out on the photo. Just click any of the photos to enlarge.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPznMhDw03I/AAAAAAAAAOg/AdJ1ZjIFWKo/s1600-h/DSCN8400.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPznMhDw03I/AAAAAAAAAOg/AdJ1ZjIFWKo/s400/DSCN8400.JPG" alt="" id="BLOGGER_PHOTO_ID_5259332667080495986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Jrhwx8X9P7g/SPznNmAKzJI/AAAAAAAAAOo/1HY6CGT5G48/s1600-h/DSCN8398.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_Jrhwx8X9P7g/SPznNmAKzJI/AAAAAAAAAOo/1HY6CGT5G48/s400/DSCN8398.JPG" alt="" id="BLOGGER_PHOTO_ID_5259332685587467410" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPznN3KfWJI/AAAAAAAAAOw/s81TmY81r0Q/s1600-h/DSCN8397.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPznN3KfWJI/AAAAAAAAAOw/s81TmY81r0Q/s400/DSCN8397.JPG" alt="" id="BLOGGER_PHOTO_ID_5259332690194159762" border="0" /&gt;&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=uyZgM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=uyZgM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=YNmzM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=YNmzM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=G7e9m"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=G7e9m" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=TJ9Km"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=TJ9Km" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=BswHM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=BswHM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=V5Nlm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=V5Nlm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=WWnOM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=WWnOM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/426764971" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/426764971/drools-boot-camp-t-shirts.html</link><author>noreply@blogger.com (Mark Proctor)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPznMhDw03I/AAAAAAAAAOg/AdJ1ZjIFWKo/s72-c/DSCN8400.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">13</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/drools-boot-camp-t-shirts.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-5901094030646535343</guid><pubDate>Fri, 17 Oct 2008 23:13:00 +0000</pubDate><atom:updated>2008-10-18T01:05:18.886+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools Flow</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><category domain="http://www.blogger.com/atom/ns#">BPMN</category><title>Drools Flow and BPMN</title><description>One of the main things we want to offer to end users is the ability to specify themselves what their processes look like.  This includes the ability to extend the process engine with custom-defined nodes, to add &lt;a href="http://blog.athico.com/2008/08/more-declarative-workflow.html"&gt;domain-specific work items&lt;/a&gt;, etc. We now have introduced the concept of a (process) &lt;span style="font-weight: bold;"&gt;skin&lt;/span&gt;, which controls how the different nodes are visualized.  This allows you to change the visualization of the different node types the way you like them (by implementing your own SkinProvider).&lt;br /&gt;&lt;br /&gt;BPMN is a popular language used by business users for modeling business processes.  BPMN defines terminology, different types of nodes, how these should be visualized, etc.  People who are familiar with BPMN might find it easier to implement an executable process (possibly based on a BPMN process diagram) using a similar visualization.  We have therefore created a BPMN skin that maps the Drools Flow concepts to the equivalent BPMN visualization.&lt;br /&gt;&lt;br /&gt;For example, the following figure shows a process using some of the different types of nodes in the RuleFlow language using the default skin ...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QGJdI6YA_oA/SPkdau7ZtnI/AAAAAAAAACA/NZgQ92sPcW4/s1600-h/RuleFlow.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_QGJdI6YA_oA/SPkdau7ZtnI/AAAAAAAAACA/NZgQ92sPcW4/s400/RuleFlow.png" alt="" id="BLOGGER_PHOTO_ID_5258266385042749042" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Simply by switching the preferred process skin in the Drools preferences ...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_QGJdI6YA_oA/SPkkLPmMVQI/AAAAAAAAACQ/GmIOxKz2OHY/s1600-h/preferences.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_QGJdI6YA_oA/SPkkLPmMVQI/AAAAAAAAACQ/GmIOxKz2OHY/s400/preferences.png" alt="" id="BLOGGER_PHOTO_ID_5258273815515649282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;and then reopening the editor shows the same process using the BPMN skin ...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_QGJdI6YA_oA/SPkdbD1TrhI/AAAAAAAAACI/6MEzEEB5mWs/s1600-h/BPMN.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_QGJdI6YA_oA/SPkdbD1TrhI/AAAAAAAAACI/6MEzEEB5mWs/s400/BPMN.png" alt="" id="BLOGGER_PHOTO_ID_5258266390654332434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Tell us what you like!  Or more in general, let us know what you think the other features are that are important when deciding how to visualize (executable) business processes (as flow charts).&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Wa3kM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Wa3kM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=9R8pM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=9R8pM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=USX4m"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=USX4m" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=0ipym"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=0ipym" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=oWNnM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=oWNnM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=7x5cm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=7x5cm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Ru4gM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Ru4gM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/424155787" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/424155787/drools-flow-and-bpmn.html</link><author>noreply@blogger.com (Kris Verlaenen)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_QGJdI6YA_oA/SPkdau7ZtnI/AAAAAAAAACA/NZgQ92sPcW4/s72-c/RuleFlow.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/drools-flow-and-bpmn.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-2179221553033025778</guid><pubDate>Fri, 17 Oct 2008 17:24:00 +0000</pubDate><atom:updated>2008-10-17T18:48:34.718+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">BPEL</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Rules and BPEL (Joe White @ Recondo Technologies)</title><description>Joe is here with us in Texas for the Drools Boot Camp, his company is a big BPEL user and he's been sharing his pain with us. They turned to BPEL, having drunk the koolaid, with the aim to simplify the management of a collection of services and their input and output of data.  He tells us the result is a fairly complex system, that lives in Speghetti hell, that is difficult to manage on its own.  Joe has been kind enough to share a screen shot and his own thoughts (all pasted below) on where he'd like to go with his company to better address this issue in the future, with the hope that Drools can help.&lt;br /&gt;&lt;br /&gt;The image below is a graphical representation of a business process in BPEL. The boxes and circles along the right are services, the lines running to those services are invocations, and the boxes in the middle are steps in the BPEL process (assign, invoke, copy etc.)&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;Spaghetti BPEL, welcome to hell!!!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPjNwmt8aXI/AAAAAAAAAOY/xOVGlQ6xQ0Y/s1600-h/rules+and+bpel.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPjNwmt8aXI/AAAAAAAAAOY/xOVGlQ6xQ0Y/s400/rules+and+bpel.png" alt="" id="BLOGGER_PHOTO_ID_5258178799865719154" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:78%;"&gt;(click to enlarge)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;An alternative is to use rules to manage your business process. A purely rules based approach would use a rule set as a content based router and every decision point becomes an evaluation of your business routing rules. In addition, rules can manage service invocation by making the service invocation the consequence of firing into another rule set. Coupled with a BRMS like Guvnor the rules based process orchestration of services becomes accessible by business users in a managed environment. Coupled with a workflow or integration engine like Drools-Flow or Apache Camel the rules based business process management will allow for the management of complex long running business processes without some of the complexity and development overhead introduced by BPEL. The rules manage the decision points and the workflow engine helps manage the progression through your business process. The rules based approach won’t provide everything that you get with BPEL. For example state management, persistence, and ease of integration with WSDL are all advantages that BPEL provides that you wouldn’t get for free with a rules driven approach. In the end a rules based approach to business process orchestration should provide simplicity, modularity, and ease of development. As an architect it is worth considering a rules driven approach to business process management.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=2DPXM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=2DPXM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=oWxaM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=oWxaM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=V35nm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=V35nm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=5y7Tm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=5y7Tm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=PuxKM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=PuxKM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=slTmm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=slTmm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=xI31M"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=xI31M" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/423918600" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/423918600/rules-and-bpel-joe-white-recondo.html</link><author>noreply@blogger.com (Mark Proctor)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPjNwmt8aXI/AAAAAAAAAOY/xOVGlQ6xQ0Y/s72-c/rules+and+bpel.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/rules-and-bpel-joe-white-recondo.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-3378362504114297041</guid><pubDate>Thu, 16 Oct 2008 23:59:00 +0000</pubDate><atom:updated>2008-10-17T02:10:31.615+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools Boot Camp</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools Boot Camp - Day 1</title><description>Day 1 of the Drools Boot Camp is going well, unfortunately Michael Neal from the core team couldn't make it in the end :( However Edson, Kris and Toni are all here :)&lt;br /&gt;&lt;br /&gt;The Boot Camp runs until Wed 22nd of October where the &lt;a href="http://rulesfest.org/"&gt;Rules Fest&lt;/a&gt; conference starts, which we will all be attending. The Boot camp is open to all, so if you are in the Texas area, do please come and join us, we are staying in the &lt;a href="http://book.bestwestern.com/bestwestern/productInfo.do?propertyCode=44540"&gt;Best Western Hotel, Addison&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Today we've been joined by:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Joel White from Recondo.&lt;/li&gt;&lt;li&gt;Michael Rhoden from American Franklin.&lt;/li&gt;&lt;li&gt;Asif Akram from Imperial College.&lt;/li&gt;&lt;li&gt;Andrej Sasko from the independent IT consulting 123Learning.de.&lt;/li&gt;&lt;/ul&gt;Jens Ruehmkorf from German Aerospace Centre is in Texas but is tracking down his luggage, which has been lost, hopefully he will be with us tomorrow.&lt;br /&gt;&lt;br /&gt;It's been an interesting day and I'll do a separate project later on topics covered. We have discovered the best hotel ever with free food and beer :)  Here are some photos of the day:&lt;br /&gt;&lt;br /&gt;Free food and the beer, the beer cooler is at the square box in the left of the photo.&lt;br /&gt;&lt;table padding="0" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPfWu0wMoTI/AAAAAAAAANo/HmJ9OOMCxFI/s1600-h/16102008151.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPfWu0wMoTI/AAAAAAAAANo/HmJ9OOMCxFI/s400/16102008151.jpg" alt="" id="BLOGGER_PHOTO_ID_5257907189901467954" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;br /&gt;      &lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Jrhwx8X9P7g/SPfWulzqQXI/AAAAAAAAANg/kf6KuwACSjs/s1600-h/16102008152.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_Jrhwx8X9P7g/SPfWulzqQXI/AAAAAAAAANg/kf6KuwACSjs/s400/16102008152.jpg" alt="" id="BLOGGER_PHOTO_ID_5257907185889460594" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Kris and Toni caught enjoying the free beer :) and a general shot of the room&lt;br /&gt;&lt;table padding="0" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPfWvHkTB7I/AAAAAAAAANw/A605EQOcMvo/s1600-h/16102008155.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPfWvHkTB7I/AAAAAAAAANw/A605EQOcMvo/s400/16102008155.jpg" alt="" id="BLOGGER_PHOTO_ID_5257907194951829426" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;br /&gt;      &lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Jrhwx8X9P7g/SPfV67-BaJI/AAAAAAAAANQ/7Te_pUfdWSU/s1600-h/16102008141.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_Jrhwx8X9P7g/SPfV67-BaJI/AAAAAAAAANQ/7Te_pUfdWSU/s400/16102008141.jpg" alt="" id="BLOGGER_PHOTO_ID_5257906298485303442" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;Some more general shots of everyone hard at work.&lt;br /&gt;&lt;table padding="0" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Jrhwx8X9P7g/SPfafOSKZiI/AAAAAAAAAN4/bvsI3iYCilU/s1600-h/IMG_0730.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_Jrhwx8X9P7g/SPfafOSKZiI/AAAAAAAAAN4/bvsI3iYCilU/s400/IMG_0730.JPG" alt="" id="BLOGGER_PHOTO_ID_5257911319923418658" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;br /&gt;      &lt;td&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Jrhwx8X9P7g/SPfafUK16vI/AAAAAAAAAOA/4vqaYFYcD8g/s1600-h/IMG_0732.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_Jrhwx8X9P7g/SPfafUK16vI/AAAAAAAAAOA/4vqaYFYcD8g/s400/IMG_0732.JPG" alt="" id="BLOGGER_PHOTO_ID_5257911321503329010" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;And finally a picture of us at lunch.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Jrhwx8X9P7g/SPfafnCPK2I/AAAAAAAAAOI/o01SOlzcUs0/s1600-h/16102008147.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_Jrhwx8X9P7g/SPfafnCPK2I/AAAAAAAAAOI/o01SOlzcUs0/s400/16102008147.jpg" alt="" id="BLOGGER_PHOTO_ID_5257911326567508834" border="0" /&gt;&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=EX5bM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=EX5bM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Z0iEM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Z0iEM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=1Kpsm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=1Kpsm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=EBbBm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=EBbBm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=MO86M"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=MO86M" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=OL4Em"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=OL4Em" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=FhMRM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=FhMRM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/423209439" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/423209439/drools-boot-camp-day-1.html</link><author>noreply@blogger.com (Mark Proctor)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_Jrhwx8X9P7g/SPfWu0wMoTI/AAAAAAAAANo/HmJ9OOMCxFI/s72-c/16102008151.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/drools-boot-camp-day-1.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-8266630645705851392</guid><pubDate>Wed, 15 Oct 2008 20:34:00 +0000</pubDate><atom:updated>2008-10-15T21:38:29.154+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools Boot Camp in Texas is now being Twittered</title><description>At the request of others I've setup a twitter account and will send out communications via Twitter on the Drools Boot Camp, Rules Fest, Business Rules Forum and RuleML conferences over the next 2 and a half weeks.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/markproctor"&gt;http://twitter.com/markproctor&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=mAWhM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=mAWhM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=aEKSM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=aEKSM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Hsipm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Hsipm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=VlGHm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=VlGHm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=DIBAM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=DIBAM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=2irbm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=2irbm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=1fqWM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=1fqWM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/421947692" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/421947692/drools-boot-camp-in-texas-is-now-being.html</link><author>noreply@blogger.com (Mark Proctor)</author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/drools-boot-camp-in-texas-is-now-being.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-7102612366701010123</guid><pubDate>Wed, 15 Oct 2008 05:11:00 +0000</pubDate><atom:updated>2008-10-15T06:20:24.095+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>First Look - Drools 5.0 (James Taylor @ Smart Enough Systems)</title><description>I met up with James Taylor, author of &lt;a href="http://smartenoughsystems.com/"&gt;Smart Enough Systems&lt;/a&gt;, the other week and showed him over the Drools 5.0 work. He's written a blog entry on his thoughts, which you can read &lt;a href="http://smartenoughsystems.com/wp/2008/10/14/first-look-drools-50"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.smartenoughsystems.com/"&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center" src="http://2.bp.blogspot.com/_Jrhwx8X9P7g/SPV9Bye_n8I/AAAAAAAAANA/yBCirUmIFpA/s400/smart-enough-cover.jpg" alt="" id="BLOGGER_PHOTO_ID_5257245609710034882" border="0" /&gt;&lt;/a&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=hbOvM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=hbOvM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=6yofM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=6yofM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=2Vwbm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=2Vwbm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=a1mPm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=a1mPm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=cbmuM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=cbmuM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=C7tym"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=C7tym" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=DL5wM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=DL5wM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/421239497" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/421239497/first-look-drools-50-james-taylor-smart.html</link><author>noreply@blogger.com (Mark Proctor)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_Jrhwx8X9P7g/SPV9Bye_n8I/AAAAAAAAANA/yBCirUmIFpA/s72-c/smart-enough-cover.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/first-look-drools-50-james-taylor-smart.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-1195268497116314533</guid><pubDate>Sun, 12 Oct 2008 04:51:00 +0000</pubDate><atom:updated>2008-10-12T21:43:55.351+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">release</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Drools 5.0 M2  New and Noteworthy Summary</title><description>&lt;h2&gt;5.o M2  New and Noteworthy Summary&lt;br /&gt;&lt;/h2&gt;The complete JIRA release notes can be found &lt;a href="https://jira.jboss.org/jira/secure/IssueNavigator.jspa?reset=true&amp;amp;pid=12310210&amp;amp;fixfor=12312522"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Guvnor (the BRMS component)&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_KukQ8TlQMz8/SOBeZFILU2I/AAAAAAAAAUM/9pSBWnk-4mw/s1600-h/Picture+1.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_KukQ8TlQMz8/SOBeZFILU2I/AAAAAAAAAUM/9pSBWnk-4mw/s320/Picture+1.png" alt="" id="BLOGGER_PHOTO_ID_5251300950480212834" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Fine grained security (lock down access to the app per package or per category). Users who only have category permissions have limited UI capability (ideal for business users)&lt;/li&gt;&lt;li&gt;Import/export individual packages (to XML)&lt;/li&gt;&lt;li&gt;Execution server - access rules via XML or JSON for execution&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Many more (check the JIRA logs !)&lt;/li&gt;&lt;li&gt;Many fixes (resource leak in M1 was fixed early on)&lt;/li&gt;&lt;/ul&gt;&lt;h2&gt;Drools Flow&lt;br /&gt;&lt;/h2&gt;Human task management is very important in the context of processes.  While we allow users to plug in any task component they prefer, we have developed a &lt;a href="http://blog.athico.com/2008/09/drools-and-ws-humantask.html"&gt;human task management component&lt;/a&gt; that supports the entire life cycle of human tasks based on the WS-HumanTask specification, which is discussed in the following two blows:&lt;br /&gt;&lt;a href="http://blog.athico.com/2008/09/drools-and-ws-humantask.html"&gt;Drools and WS-HumanTask&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blog.athico.com/2008/09/creating-dsl-for-ws-humantask-and-when.html"&gt;Creating a DSL for WS-HumanTask and when not to use a Rule Engine&lt;/a&gt;&lt;br /&gt;Sample Eclipse views allow users to manipulate their tasks.  The code can be found &lt;a href="http://anonsvn.jboss.org/repos/labs/labs/jbossrules/tags/5.0.0.23197.MR2/drools-process/drools-process-task/"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The Drools Flow language itself has also been extended with new powerful functionality, including:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Event nodes that allow a process to respond to external events&lt;/li&gt;&lt;li&gt;Exception handlers and exception handler scopes to handle exceptions that could be thrown&lt;/li&gt;&lt;li&gt;A ForEach node allows instantiating a section of your flow multiple times, for each element in a collection&lt;/li&gt;&lt;li&gt;Data type support has been extended&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Timers are integrated with common node types&lt;/li&gt;&lt;/ul&gt;As a result, new node types and properties have been added to the Drools Flow editor in Eclipse.  You can also find examples of these new features in the &lt;a href="http://anonsvn.jboss.org/repos/labs/labs/jbossrules/tags/5.0.0.23197.MR2/drools-compiler/src/test/java/org/drools/integrationtests/"&gt;integration tests&lt;/a&gt; (e.g. ProcessExceptionHandlerTest, ProcessTimerTest, etc.).&lt;br /&gt;&lt;br /&gt;Finally, our &lt;a href="http://blog.athico.com/2008/08/more-declarative-workflow.html"&gt;pluggable work item approach&lt;/a&gt; allows you to plug in domain-specific work in your process in a declarative manner.  We plan to build a library of common work items and already provide an &lt;a href="http://anonsvn.jboss.org/repos/labs/labs/jbossrules/tags/5.0.0.23197.MR2/drools-process/drools-workitems/"&gt;implementation&lt;/a&gt; for sending emails, finding files, archiving, executing system commands, logging and human tasks.&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;&lt;br /&gt;Drools Expert and Fusion&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;fireUntilHalt()&lt;/span&gt;&lt;br /&gt;Drools now supports "fireUntilHalt()" feature, that starts the engine in a reactive mode, where rules will be continually fired, until a halt() call is made. This is specially useful for CEP scenarios that require what is commonly known as "active queries".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Rule Base partitioning and multi-thread propagation&lt;/span&gt;&lt;br /&gt;Drools ReteOO algorithm now supports an option to start the rule base in a multi-thread mode, where Drools ReteOO network is split into multiple partitions and rules are then evaluated concurrently by multiple threads. This is also a requirement for CEP where there usually are several independent rules running concurrently, with near realtime performance/throughput requirements and the evaluation of one can not interfere with the evaluation of others. This is a big topic and has several implications that I will discuss in a follow up blog post and the upcoming documentation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;XSD Model Support&lt;/span&gt;&lt;br /&gt;Drools now supports XSD models, you can look at the unit test &lt;a href="http://anonsvn.labs.jboss.com/labs/jbossrules/tags/5.0.0.23197.MR2/drools-dataloaders/drools-dataloaders-jaxb/src/test/java/org/drools/dataloaders/jaxb/DroolsJaxbTest.java"&gt;here&lt;/a&gt; to see how it works. Remember though the XSD model is generated as pojos local to the Drools classloader. A helper class is there to assist in the creation of the model in the packagebuilder. Once the data model is generated you'll typically use the JAXB dataloader to insert data.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Data Loaders&lt;/span&gt;&lt;br /&gt;Drools now supports two data loaders, &lt;a href="http://milyn.codehaus.org/Smooks"&gt;Smooks&lt;/a&gt; and &lt;a href="https://jaxb.dev.java.net/"&gt;JAXB&lt;/a&gt;. Smooks is an open source data transformation tool for ETL and JAXB a standard sun data mapping tool. Unit tests showing Smooks can be found &lt;a href="http://anonsvn.labs.jboss.com/labs/jbossrules/tags/5.0.0.23197.MR2/drools-dataloaders/drools-dataloaders-smooks/src/test/java/org/drools/dataloaders/smooks/"&gt;here&lt;/a&gt; and JAXB &lt;a href="http://anonsvn.labs.jboss.com/labs/jbossrules/tags/5.0.0.23197.MR2/drools-dataloaders/drools-dataloaders-jaxb/src/test/java/org/drools/dataloaders/jaxb/"&gt;here&lt;/a&gt;.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=VKO1M"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=VKO1M" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=u2klM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=u2klM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=Ggl3m"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=Ggl3m" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=wOKFm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=wOKFm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=NvREM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=NvREM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=SEvwm"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=SEvwm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.athico.com/~f/DroolsRSS?a=wkYtM"&gt;&lt;img src="http://feeds.athico.com/~f/DroolsRSS?i=wkYtM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.athico.com/~r/DroolsRSS/~4/418863988" height="1" width="1"/&gt;</description><link>http://feeds.athico.com/~r/DroolsRSS/~3/418863988/drools-50-m2-new-and-noteworthy-summary.html</link><author>noreply@blogger.com (Michael Neale)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_KukQ8TlQMz8/SOBeZFILU2I/AAAAAAAAAUM/9pSBWnk-4mw/s72-c/Picture+1.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://blog.athico.com/2008/10/drools-50-m2-new-and-noteworthy-summary.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-5869426.post-7929910460949906665</guid><pubDate>Thu, 09 Oct 2008 17:35:00 +0000</pubDate><atom:updated>2008-10-09T18:39:29.207+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Presentation</category><category domain="http://www.blogger.com/atom/ns#">Drools</category><title>Nationwide Insurance to give Drools Blog</title><description>GoogleAlert just let me know that &lt;a href="http://www.nationwide.com/index.jsp"&gt;Nationwide&lt;/a&gt;&lt;br /&gt;are doing a Drools presentation at the &lt;a href="http://www.cojug.org/"&gt;Central Ohio Java Users Group&lt;/a&gt; on the 14th of October. The details can be found &lt;a href="http://www.cojug.org/index.php?option=com_eventlist&amp;amp;Itemid=27&amp;amp;func=details&amp;amp;did=42"&gt;here&lt;/a&gt;, and I've pasted them below. It's really nice to see other members in the community promoting the use of Drools, especially a big brand name like Nationwide:&lt;br /&gt;&lt;br /&gt;&lt;table class="details" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th class="sectiontableheader" colspan="3"&gt;Event &lt;/th&gt;     &lt;/tr&gt;     &lt;tr&gt;       &lt;td class="details"&gt;when: &lt;/td&gt;       &lt;td&gt;    10/14/2008 | 11:30  - 12:30    &lt;/td&gt;       &lt;td rowspan="4" align="left"&gt;           &lt;/td&gt;     &lt;/tr&gt;              &lt;tr&gt;       &lt;td class="details"&gt;Event title &lt;/td&gt;       &lt;td&gt;JBoss (Drools) Rules Engine in J2EE Enterprise Applications&lt;/td&gt;     &lt;/tr&gt;             &lt;tr&gt;       &lt;td class="details"&gt;Where: &lt;/td&gt;       &lt;td&gt;          &lt;a href="http://www.oclc.org/about/headquarters/maps/" target="_blank"&gt; OCLC's Kilgour building private dinning room&lt;/a&gt;      - Dublin   &lt;/td&gt;     &lt;/tr&gt;   &lt;tr&gt;       &lt;td class="details"&gt;Category: &lt;/td&gt;       &lt;td&gt;     &lt;a href="http://www.cojug.org/index.php?option=com_eventlist&amp;amp;Itemid=27&amp;amp;func=shcatev1&amp;amp;categid=6"&gt;2008 Meetings&lt;/a&gt;   &lt;/td&gt;     &lt;/tr&gt;       &lt;tr&gt;       &lt;td colspan="3"&gt; &lt;/td&gt;     &lt;/tr&gt;                  &lt;tr&gt;       &lt;td colspan="3"&gt;      &lt;p&gt;&lt;strong&gt;Abstract&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Provides a glossary view of rules engine.  Some comparison between BRMS and Traditional Rules Engine (embedded).  A quick look at JBoss Rules, different ways to represent the rules and some highlights of the overall programming environment. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;Bio&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Name: Keith Ebare&lt;br /&gt;JobTitle: Consulting, IT Architect&lt;br /&gt;Company:  Nationwide P&amp;amp;C&lt;br /&gt;Technical Area of Interest: J2EE and usage/applicability of open source products &lt;/p&gt;&lt;p&gt;Name: Anu Alwar&lt;br /&gt;Job Title: Consulting IT Architect&lt;br /&gt;Company:  Nationwide P&amp;amp;C&lt;/p&gt;&lt;p&gt;Implementation of rules engines for externalizing business rules in a j2ee application.&lt;br /&gt;Masters in Computer Science from Ohio State University. About 13 years of IT experience with about 10 in j2ee.&lt;br /&gt;&lt;/p&gt;   &lt;/td&gt;     &lt;/tr&gt;     &lt;tr&gt;       &lt;td colspan="3"&gt; &lt;/td&gt;     &lt;/tr&gt;           &l