<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:syn="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/">
  <channel rdf:about="http://blog.gmane.org/gmane.comp.java.drools.devel">
    <title>gmane.comp.java.drools.devel</title>
    <link>http://blog.gmane.org/gmane.comp.java.drools.devel</link>
    <description/>
    <syn:updatePeriod>hourly</syn:updatePeriod>
    <syn:updateFrequency>1</syn:updateFrequency>
    <syn:updateBase>1901-01-01T00:00+00:00</syn:updateBase>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2758"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2757"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2756"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2755"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2754"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2753"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2752"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2751"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2750"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2749"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2748"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2747"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2746"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2745"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2744"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2743"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2742"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2741"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2740"/>
        <rdf:li rdf:resource="http://permalink.gmane.org/gmane.comp.java.drools.devel/2739"/>
      </rdf:Seq>
    </items>
    <image rdf:resource="http://gmane.org/img/gmane-25t.png"/>
    <textinput rdf:resource=""/>
  </channel>
  <image rdf:about="http://gmane.org/img/gmane-25t.png">
    <title>Gmane</title>
    <url>http://gmane.org/img/gmane-25t.png</url>
    <link>http://gmane.org</link>
  </image>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2758">
    <title>Re: [rules-dev] Re: [rules-users] Drools5M3 Issues</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2758</link>
    <description>No that won't help as it still is the same classname from the IDE  
content assistance point of view.

No quick fix I can see, the only 3 options are to tweak the IDE to  
ignore the "old" or internal ones, or use differnt classnames for the  
new ones ;) - probably not practical.

Sent from my iPhone

On 29/11/2008, at 7:38, Mark Proctor &lt;mproctor&lt; at &gt;codehaus.org&gt; wrote:

_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Michael Neale</dc:creator>
    <dc:date>2008-11-30T07:04:30</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2757">
    <title>Re: [rules-dev] Unable to Check-In</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2757</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Michael Neale</dc:creator>
    <dc:date>2008-11-30T07:02:00</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2756">
    <title>[rules-dev] Re: [rules-users] Drools5M3 Issues</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2756</link>
    <description>one option is to put drools api under a totaly new namespace - 
org.drools5 instead of org.drools. But I'm not keen to do this, although 
I know hibernate did it moving to hibernate 3. I'm trying to get a CR 
out in a week or so, so what ever we decide, we are rapidly running out 
of time.

Mark
Mark Proctor wrote:


_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-28T20:38:43</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2755">
    <title>Re: [rules-dev] Unable to Check-In</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2755</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-28T14:57:36</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2754">
    <title>[rules-dev] Unable to Check-In</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2754</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Ashish Redkar</dc:creator>
    <dc:date>2008-11-28T13:29:36</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2753">
    <title>[rules-dev] Knowledge Compositions</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2753</link>
    <description>Compioitions now work and the new Resource framework is committed. You 
can see the api in action here:
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-decisiontables/src/test/java/org/drools/decisiontable/CompositionTest.java
Along with the xml knowledge composition file it is loading:
http://anonsvn.labs.jboss.com/labs/jbossrules/trunk/drools-decisiontables/src/test/resources/org/drools/decisiontable/composition1Test.xml

The summarised version is:

&lt;composition xmlns='http://drools.org/drools-4.0/composition'
             xmlns:xs='http://www.w3.org/2001/XMLSchema-instance'
             xs:schemaLocation='http://drools.org/drools-4.0/composition drools-composition-4.0.xsd' &gt;
    &lt;resource source='classpath:org/drools/decisiontable/composition1Test.drl' type='DRL' /&gt;
    &lt;resource source='classpath:data/IntegrationExampleTest.xls' type="DTABLE"&gt;
        &lt;decisiontable-conf input-type="XLS" worksheet-name="Tables_2" /&gt;
    &lt;/resource&gt;
    &lt;resource source='classpath:org/drools/decisiontable/composition2Test.drl' type='DRL' /&gt;
&lt;/composition&gt;

KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add( ResourceFactory.newClassPathResource( "composition1Test.xml", getClass()), KnowledgeType.COMPOSITION );
assertFalse( kbuilder.hasErrors() );
KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();

XML Compisition files support all knowledge types, including other xml knowledge compositions. So one composition can reference and load
other compositions.

I'm not just updating the agent to take advantage of this.

Mark





_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-28T07:10:12</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2752">
    <title>Re: [rules-dev] Knowledge Composition and Parts</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2752</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-27T13:12:42</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2751">
    <title>RE: [rules-dev] Knowledge Composition and Parts</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2751</link>
    <description>Hi,

What might be possible in 5.1? Ability to plug-in custom Resource implementation or a resource implementation that will look into repository. I hope the former is available in 5.0 :-).

I understood the resource configuration part.

Would it make sense to have Knowledge Builder configuration on lines of resource being part and Knowledge Builder being whole?

Typically for executing any business functionality we have more than one resources involved. This may happen due to splitting of rules based on different sub features but wanting to execute the top level feature (basically easy maintainability). Or it could be pure dynamism needed during execution. With this typical usage in mind I feel that having a Knowledge Builder level configuration may help in maintenance of executable rules.

Regards,
- Nimesh


-----Original Message-----
From: rules-dev-bounces&lt; at &gt;lists.jboss.org [mailto:rules-dev-bounces&lt; at &gt;lists.jboss.org] On Behalf Of Mark Proctor
Sent: Thursday, November 27, 2008 2:05 PM
To: Rules Dev List
Subject: Re: [rules-dev] Knowledge Composition and Parts

Nimesh Muley wrote:
This might be possible, I'll bear it in mind as an enhancements for 5.1.
If you look at the javadocs for drools-api ResourceConfiguration is
specific to what you are loading, for instance with decision tables (the
only place where it is currently used) it provides the binary type, XLS
or CSV, and optionally the worksheet name.

Mark
 is e-mail in error, kindly delete this e-mail from desktop and server.


_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev


MASTEK LTD.
Mastek is in NASSCOM's 'India Top 20' Software Service Exporters List.
In the US, we're called MAJESCOMASTEK

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Opinions expressed in this e-mail are those of the individual and not that of Mastek Limited, unless specifically indicated to that effect. Mastek Limited does not accept any responsibility or liability for it. This e-mail and attachments (if any) transmitted with it are confidential and/or privileged and solely for the use of the intended person or entity to which it is addressed. Any review, re-transmission, dissemination or other use of or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. This e-mail and its attachments have been scanned for the presence of computer viruses. It is the responsibility of the recipient to run the virus check on e-mails and attachments before opening them. If you have received this
  e-mail in error, kindly delete this e-mail from desktop and server.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Nimesh Muley</dc:creator>
    <dc:date>2008-11-27T09:47:18</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2750">
    <title>Re: [rules-dev] Knowledge Composition and Parts</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2750</link>
    <description>This might be possible, I'll bear it in mind as an enhancements for 5.1.
If you look at the javadocs for drools-api ResourceConfiguration is 
specific to what you are loading, for instance with decision tables (the 
only place where it is currently used) it provides the binary type, XLS 
or CSV, and optionally the worksheet name.

Mark
 is e-mail in error, kindly delete this e-mail from desktop and server.


_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-27T08:34:53</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2749">
    <title>RE: [rules-dev] Knowledge Composition and Parts</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2749</link>
    <description>Hi,

To load a resource from DB would someone need to provide a custom implementation of Resource (meant for DB lookup) and then use it in the KnowledgeBuilder? Can this definition be later extended to load a resource from a repository once repository concept is there during execution time (similar / same as what is available at definition time)?

Should resource configuration at Resource level (part) or at KnowledgeBuilder? As per my understanding of the definition below, it seems more apt at KnowledgeBuilder level.

Regards,
- Nimesh


-----Original Message-----
From: rules-dev-bounces&lt; at &gt;lists.jboss.org [mailto:rules-dev-bounces&lt; at &gt;lists.jboss.org] On Behalf Of Mark Proctor
Sent: Thursday, November 27, 2008 12:01 PM
To: Rules Dev List
Subject: [rules-dev] Knowledge Composition and Parts

I'm in the process of doing the final changes to drools-api. Having done
the spring work, not yet committed, I liked their resource framework, so
decided to copy this for Drools. So we now have:
KnowledgeBuilder.add( Resource, KnowledgeType, ResourceConfiguration );

Where we support the following Resource sources:
FileSystemResource, ClassPathResource, UrlResource ByteArrayResource,
ReaderResource, EncodedResource and InputStreamResource

In use it'll look like:
kbuilder.add( ResourceFactory.newClassPathResource( "somefile.drl",
classLoader ), KnowledgeType.DRL )

I do not yet do knowledge type inference from the .ext - I think I'll
leave that till after 5.0, if I do it at all.

So kbuilder.addResource( URL, ...) and kbuilder.addResource( Reader, ...
) from M3 no longer exist and are as above.

What I'm adding now is the ability to provide an xml file that is a
configuration of resources to load. The term Configuration is
overloaded, and we use this more to provide the directives for
knowledgebuilder and knowledgebase. So I was thinking Composition and
Part - for Knowledge Composition and Knowledge Part, from dictionary.com
on "composition":
"the act of combining parts or elements to form a whole."
"the composition of "aircraft" from "air" and "craft."

My reasoning for this is a composition will contain rules, processes,
decision tables, dsls etc. "The KnowlegeBase is a composition of
Knowlege Parts".

The XML would look like:
&lt;composition&gt;
&lt;part resource="classpath://........" type="DRL"&gt;

&lt;part resource="file://........"&gt;
&lt;decisiontable-configuration type="XLS" worksheet-name="blah" /&gt;
&lt;/part&gt;
&lt;/composition&gt;

I have not added a resource type attribute, as we will assume it must
start with protocol. classpath will use ClassPathResource, file will use
FileSystemResource and anything will be a UrlResource. This would be a
special KnowlegeType. I may later make the type optional, once we can
infer the type from the .ext.
kbuilder.addResource( ResourceFactory.newFileResource(
"/data/my-knowledge.xml" ), KnowledgeType.COMPOSITION );

What do people think?

Mark

_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev


MASTEK LTD.
Mastek is in NASSCOM's 'India Top 20' Software Service Exporters List.
In the US, we're called MAJESCOMASTEK

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Opinions expressed in this e-mail are those of the individual and not that of Mastek Limited, unless specifically indicated to that effect. Mastek Limited does not accept any responsibility or liability for it. This e-mail and attachments (if any) transmitted with it are confidential and/or privileged and solely for the use of the intended person or entity to which it is addressed. Any review, re-transmission, dissemination or other use of or taking of any action in reliance upon this information by persons or entities other than the intended recipient is prohibited. This e-mail and its attachments have been scanned for the presence of computer viruses. It is the responsibility of the recipient to run the virus check on e-mails and attachments before opening them. If you have received this
  e-mail in error, kindly delete this e-mail from desktop and server.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Nimesh Muley</dc:creator>
    <dc:date>2008-11-27T07:23:31</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2748">
    <title>[rules-dev] Knowledge Composition and Parts</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2748</link>
    <description>I'm in the process of doing the final changes to drools-api. Having done 
the spring work, not yet committed, I liked their resource framework, so 
decided to copy this for Drools. So we now have:
KnowledgeBuilder.add( Resource, KnowledgeType, ResourceConfiguration );

Where we support the following Resource sources:
FileSystemResource, ClassPathResource, UrlResource ByteArrayResource, 
ReaderResource, EncodedResource and InputStreamResource

In use it'll look like:
kbuilder.add( ResourceFactory.newClassPathResource( "somefile.drl", 
classLoader ), KnowledgeType.DRL )

I do not yet do knowledge type inference from the .ext - I think I'll 
leave that till after 5.0, if I do it at all.

So kbuilder.addResource( URL, ...) and kbuilder.addResource( Reader, ... 
) from M3 no longer exist and are as above.

What I'm adding now is the ability to provide an xml file that is a 
configuration of resources to load. The term Configuration is 
overloaded, and we use this more to provide the directives for 
knowledgebuilder and knowledgebase. So I was thinking Composition and 
Part - for Knowledge Composition and Knowledge Part, from dictionary.com 
on "composition":
"the act of combining parts or elements to form a whole."
"the composition of “aircraft” from “air” and “craft.”

My reasoning for this is a composition will contain rules, processes, 
decision tables, dsls etc. "The KnowlegeBase is a composition of 
Knowlege Parts".

The XML would look like:
&lt;composition&gt;
&lt;part resource="classpath://........" type="DRL"&gt;

&lt;part resource="file://........"&gt;
&lt;decisiontable-configuration type="XLS" worksheet-name="blah" /&gt;
&lt;/part&gt;
&lt;/composition&gt;

I have not added a resource type attribute, as we will assume it must 
start with protocol. classpath will use ClassPathResource, file will use 
FileSystemResource and anything will be a UrlResource. This would be a 
special KnowlegeType. I may later make the type optional, once we can 
infer the type from the .ext.
kbuilder.addResource( ResourceFactory.newFileResource( 
"/data/my-knowledge.xml" ), KnowledgeType.COMPOSITION );

What do people think?

Mark

_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-27T06:30:52</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2747">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2747</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Michal Bali</dc:creator>
    <dc:date>2008-11-26T01:10:57</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2746">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2746</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-25T16:02:01</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2745">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2745</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Michal Bali</dc:creator>
    <dc:date>2008-11-25T11:51:06</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2744">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2744</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-25T06:07:09</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2743">
    <title>[rules-dev] live docs</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2743</link>
    <description>Documentation and Javadocs are now published continiously (we'll about 1 
hour apar) as they change, as part of the hudson build server.
https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/docs/index.html
https://hudson.jboss.org/hudson/job/drools/lastSuccessfulBuild/artifact/trunk/target/javadocs/index.html

So now people should be able to review our doc changes as they happen.

Mark

_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-25T04:08:30</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2742">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2742</link>
    <description>_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-24T05:42:23</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2741">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2741</link>
    <description>Well, if you look at String.getBytes() it uses the default encoding, then ISO-8859-1 if that fails. (Default is UTF-8 unless otherwise specified in the "file.encoding" property.) As long as that's documented I guess it's not a problem, unless someone wants to specify their own charset for a particular file.  Java 1.6 has String.getBytes(Charset) and that could allow someone to use an alternate charset.

I figure for the vast majority of cases it won't be a problem.

--- On Sun, 11/23/08, Mark Proctor &lt;mproctor&lt; at &gt;codehaus.org&gt; wrote:



      
_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Greg Barton</dc:creator>
    <dc:date>2008-11-24T05:13:39</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2740">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2740</link>
    <description>I'm thinking of adopting the Spring approach to Resources for 
drools-api, obviously not tieing drools-api to spring - just copying the 
concept. Resource however doesn't seem to work with Readers. Readers in 
general are only needed for in memory generation , using StringReader, 
otherwise file/url/classpath resources suffice. So it seems to do the 
Spring way you would do a ByteArrayResource( "this is my drl 
file".getBytes() ). I'm wondering what people think of that, and what 
about encoding issues? Compared to the way at the moment that we just 
take a Reader, and that's it.

Mark

Mark Proctor wrote:


_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-24T03:09:08</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2739">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2739</link>
    <description>now my spring skills are improving, I'm looking to improve the xml and 
leverage spring Resource framework - so that we can get complete 
scripting of the entire KnowlegeBuilder api. I've come up with the two 
xmls so far:
      &lt;property name="drls"&gt;
          &lt;list&gt;
              
&lt;value&gt;file:src/main/java/org/drools/ioc/spring/testSpring.drl&lt;/value&gt;
          &lt;/list&gt;  
      &lt;/property&gt;    
 
      &lt;property name="dtables"&gt;
          &lt;list&gt;
                  &lt;bean 
class="org.drools.ioc.spring.DtableResourceFactoryBean"&gt;
                      &lt;property name="resource" 
value="file:src/main/java/org/drools/ioc/spring/dt.xls" /&gt;
                      &lt;property name="inputType" value="XLS" /&gt;
                  
&lt;/bean&gt;                                                    
          &lt;/list&gt;  
      &lt;/property&gt;
This one has a property per knowledge type, the advantage is on 
knowledge types which are just string, we can use a simple &lt;value&gt;. 
Although knowlege tyep that require additional information, like the DT 
input type, will need a bean.

      &lt;property name="resources"&gt;
          &lt;list&gt;
              &lt;bean 
class="org.drools.ioc.spring.KnowledgeResourceBeanFactory"&gt;
                  &lt;property name="knowledgeType" value="DRL" /&gt;
                  &lt;property name="resource" 
value="file:src/main/java/org/drools/ioc/spring/testSpring.drl" 
/&gt;                 
              &lt;/bean&gt;
 
              &lt;bean 
class="org.drools.ioc.spring.KnowledgeResourceBeanFactory"&gt;
                  &lt;property name="knowledgeType" value="DTABLE" /&gt;
                  &lt;property name="resource" 
value="file:src/main/java/org/drools/ioc/spring/dt.xls" /&gt;
                  &lt;property name="resourceConfiguration"&gt;   
                      &lt;bean 
class="org.drools.ioc.spring.DtableResourceFactoryBean"&gt;
                          &lt;property name="inputType" value="XLS" /&gt;
                      &lt;/bean&gt; 
                  &lt;/property&gt;
              &lt;/bean&gt;                     
          &lt;/list&gt;
      &lt;/property&gt;
This approach more closely resembles the kbuilder api. We have  simple 
resources list. Everything is a bean, so it's very flexible, but we lose 
the shortcut approach of the first one where we can just give a list of 
strings. As each one must be a bean, so that it can contain atleast the 
knowledge type, as well as the resource string.

My preference currently is for the second one, as I don't tink it's too 
verbose, and it provides better consistency than the first.

Mark


Geoffrey De Smet wrote:


_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Mark Proctor</dc:creator>
    <dc:date>2008-11-24T02:17:29</dc:date>
  </item>
  <item rdf:about="http://permalink.gmane.org/gmane.comp.java.drools.devel/2738">
    <title>Re: [rules-dev] Spring support for drools-api</title>
    <link>http://permalink.gmane.org/gmane.comp.java.drools.devel/2738</link>
    <description>It doesn't indeed sound overkill to me to create a FactoryBean for the 
Builder.
Though I would probably reuse the Builder inside the 
KnowlegdeBaseFactory to build the Knowlegde base.

The real issue is concurrency.
Spring promotes the idea of stateless beans which do have global 
variables, but those global variables are either synchronised 
thread-safe or also follow the stateless bean pattern.
This in fact makes the stateless beans thread safe, without any need for 
synchronization/locking.

So the question is: is your KnowlegdeBase thread-safe?
Thread safe objects are usually put into global variables,
while not thread unsafe objects are always put into local variables.

class A {
   private B b; // thread-safe by synchronization (JDBCConnection, ...)
   private C c; // thread-safe by the stateless pattern:

   // both b and c are set during initialization (constr. or setter), 
before A is exposed to other threads

   public void metho(D d) { // d is not thread-safe
     E e = ...; // e is not thread-safe
   }

}

In drools 4. B is the RuleBase, while E is the working memory instance.

With kind regards,
Geoffrey De Smet


Mark Proctor schreef:

_______________________________________________
rules-dev mailing list
rules-dev&lt; at &gt;lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev

</description>
    <dc:creator>Geoffrey De Smet</dc:creator>
    <dc:date>2008-11-23T20:15:59</dc:date>
  </item>
  <textinput rdf:about="http://search.gmane.org/?group=$group=gmane.comp.java.drools.devel">
    <title>Search Engine</title>
    <description>Search the mailing list at Gmane</description>
    <name>query</name>
    <link>http://search.gmane.org/?group=$group=gmane.comp.java.drools.devel</link>
  </textinput>
</rdf:RDF>
