Guided Editor in BRMS / Guvnor Version 5 (Snapshot of 26 June)
by Paul Browne
Folks,
For various reasons I'm trying out the Guided Editor for Business Rules in
the Guvnor Version 5 (Snapshot of 26 June from Hudson, deployed on JBoss App
Server 4.2.2GA).
I've created the Package / Category and uploaded a simple fact model (as
works in BRMS version 4). I create a new business rule using the guided
editor and the screen shows successfully with both 'When' and 'Then'
parts.Assume the next question is due to me missing something, but wanted to
double check:
When I press the green '+' to the right of the screen I am shown the message
/ dialog layer saying '
*Add a condition to the rule... *or* Add an action to the rule.
*Problem is that there doesn't appear to be a way of adding a condition or
action. The only thing I'm seeing in the logs is
* (Contexts.java:flushAndDestroyContexts:335) could not discover
transaction status
*Am I missing something or should I come back to Guvnor later in the
development Cycle?
Thanks
Paul
12 years, 9 months
Can drools continue testing even if one of the conditions fail ?
by DroolUser
Hi,
I'm using drools for testing if the few attributes of my MO are not null.
I construct the rule in the .drl file in following way :
rule "name"
when
condition1
condition2
condition3
condition4
then
consequence
end
I have observed that the drool engine verifies the conditions line by line
(in the sequence they have written). The moment condition fails, control
comes back to the calling method.
I don't want this. I want the control to execute each and every condition
whether true or false and maintain a record of passed/failed conditions.
Something like this :
rule "name"
when
condition1
log the test result --- This statement should get executed
even if condition 1 fails and control should go to condition 2
condition2
log the test result
condition3
log the test result
condition4
log the test result
then
consequence
end
Is this possible in Drools ?
--
View this message in context: http://www.nabble.com/Can-drools-continue-testing-even-if-one-of-the-cond...
Sent from the drools - dev mailing list archive at Nabble.com.
15 years, 7 months
Fwd: Special Journal Issue IEEE TKDE: Call for Contributions
by paschke@mi.fu-berlin.de
Dear Colleagues,
Please consider to participate in RuleML-2008
(http://2008.ruleml.org/) which will be in about 3 weeks in Orlando,
Florida, collocated with the world largest Business Rules Forum.
We have a very interesting program with renowned speakers, a
prestigious rules Challenge, a special session + panel about Rule
standards, etc.
We are also editing a special issue of IEEE TKDE. Please consider to
contribute to this issue and forward the open call for contributions
(below) to your interested colleagues.
Thanks,
Adrian
[ our apologies should you receive this message more than one time ]
===========================================================================
CALL FOR Contributions
Rule Representation, Interchange and Reasoning in Distributed,
Heterogeneous Environments
Special Issue of IEEE Transactions on Knowledge and Data Engineering
Guest Editors: N. Bassiliades, G. Governatori, A. Paschke, J.
Dix
===========================================================================
In recent years rule based technologies have enjoyed remarkable
adoption in two areas: (1) Business Rule Processing and (2)
Web-Centered Reasoning. The first trend is caused by the software
development life cycle, which needs to be accelerated at reduced cost.
The second trend is related to the Semantic Web and Service-oriented
technologies, which aim to turn the Web into a huge repository of
cross-referenced, machine-understandable data and processes. For both
trends, rules can be used to extract, derive, transform, and integrate
information in a platform-independent manner.
While early rule engines and environments were complex, expensive to
maintain, and not very user friendly, the current generation of rule
technology provides enhanced usability, scalability and performance,
and is less costly. A general advantage of using rules is that they
are usually represented in a platform independent manner, often using
XML. This fits well into today's distributed, heterogeneous Web-based
system environments.
Rules represented in standardized Web formats can be discovered,
interchanged and invoked at runtime within and across Web systems, and
can be interpreted and executed on any platform.
This special issue solicits state-of-the-art approaches, solutions and
applications in the area of Rule Representation, Reasoning and
Interchange in the context of distributed, (partially) open,
heterogeneous environments, such as the Semantic Web, Intelligent
Multi-Agent Systems, Event-Driven Architectures and Service-Oriented
Computing. We strongly advise that solicited contributions should
clearly identify the target class of applications they enable.
=======
Topics
=======
Original contributions, not currently under review or accepted by
another journal, are solicited in relevant areas including (but not
limited to) the
following:
- Rule Representation and Languages
* Rule languages for exchanging and processing information through the
web
* Representation and meta-annotation of rules and rule sets for
publication and interchange
* Event-driven/action rule languages and models
* Rule-based event processing languages and rule-based complex event
processing
* Modeling of executable rule specifications and tool support
* Natural-language processing of rules
* Graphical processing, modeling and rendering of rules
* Rules in web 2.0, web 3.0, semantic web technologies and web
intelligence research
- Reasoning and Rule Engines
* Execution models, rule engines, and environments
* Rule-based (multi-valued) reasoning with and representing uncertain
and fuzzy information
* Rule-based reasoning with non-monotonic negation, modalities, deontic,
temporal, priority, scoped or other rule qualifications
* Rule-based default reasoning with default logic, defeasible logic, and
answer set programming
* Compilation vs. interpretation approaches of rules
* Hybrid rule systems
- Rule Interchange and Integration
* Interchange and refactoring of rule bases in heterogeneous execution
environments
* Rule-based agility and its role in middleware
* Communication between rule based systems using interchange formats and
processing / communication middleware
* Information integration of external data and domain knowledge into rules
* Homogeneous and heterogeneous integration of rules and ontologies
* Extraction and reengineering of platform-independent, interchangeable
rules and rule models from existing platform-specific resources
* Rule interchange standards and related industry interchange formats
* Incorporation of rule technology into distributed enterprise
application architectures
* Interoperation between different rule formats and ontological domain
conceptualization
* Translation of interchangeable and domain-independent rule formats and
rule models into executable technical rule specifications
- Rule Engineering and Repositories
* Verification and validation of interchanged rule bases in
heterogeneous execution environments
* Practical solutions tackling the real-world software engineering
requirements of rule-based systems in open, distributed environments
* Collaborative authoring, modeling and engineering of rule
specifications and rule repositories
* Management and maintenance of distributed rule bases and rule
repositories during their lifecycle
- Web Rule Applications
* Applications and integration of rules in web standards
* Applications of rules in the semantic web and pragmatic web
* Applications based on (semantic) web rule standardization or
standards-proposing efforts
* Applications of rules in e.g. legal reasoning, compliance rules,
security, government, security, risk management, trust and proof
reasoning, etc.
* E-contracting and automated negotiations with rule-based declarative
strategies
* Specification, execution and management of rule-based policies and
electronic contracts
* Rule-based software agents and (web) services
* Theoretical and/or empirical evaluation of rule-based system
performance and scalability
=======================
Submission Guidelines
=======================
Prospective authors should prepare manuscripts according to the Information
for Authors as published in recent issues of the journal or at
http://www.computer.org/tkde/. Note that mandatory over-length page charges
and color charges will apply.
Manuscripts should be submitted through the online IEEE manuscript
submission system at https://mc.manuscriptcentral.com/cs-ieee.
Updated information of this call can be found at
http://lpis.csd.auth.gr/publications/tkde-si/.
=======================
Schedule
=======================
Deadline for paper submission: March 1, 2009
Completion of first review: June 19, 2009
Minor/Major revision due: August 21, 2009
Final decision notification: November 6, 2009
Publication materials due: December 4, 2009
Publication date (tentative): July 2010
=======================
Guest Editors
=======================
Nick Bassiliades, Aristotle University of Thessaloniki, Greece
nbassili AT csd.auth.gr
Guido Governatori, NICTA, Australia
guido.governatori AT nicta.com.au
Adrian Paschke, Free University Berlin, Corporate Semantic Web, Germany
paschke AT inf.fu-berlin.de
Jurgen Dix, Clausthal University of Technology, Germany
dix AT tu-clausthal.de
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
15 years, 9 months
Extended Deadline - Semantic Web Applications and Tools for Life Sciences (SWAT4LS)
by paschke@mi.fu-berlin.de
Dear Colleagues,
Because of a large number of requests, the submission date for the
International Workshop on Semantic Web Applications and Tools for Life
Sciences (SWAT4LS) has been extended to October 13th.
We hope that you will consider submitting a paper - see submission
details below.
Note: A selection of papers will be published in a special issue of
BMC Bioinformatics supplement devoted to the workshop.
Best regards,
Adrian Paschke (on behalf of all Chairs)
-----------------------------------------------------
Prof. Dr. Adrian Paschke (paschke(a)inf.fu-berlin.de)
AG-CSW (AG Corporate Semantic Web)
Free University Berlin
Germany
International Workshop on
Semantic Web Applications and Tools for Life Sciences (SWAT4LS)
28th November 2008, Edinburgh, UK
http://www.swat4ls.org/
Call for Papers
New submission deadline: 13 October 2008!
A selection of papers will be published in a BMC Bioinformatics
supplement devoted to the workshop
Overview
--------
The workshop is organized in sessions and open discussions. Invited
speakers will present state-of-theart,
provocative lectures on the workshop's main topic, while a number of
submissions will be accepted as
oral presentations and posters on all workshop's topics.
Workshop Description
--------------------
Semantic Web technologies, tools and applications are starting to
emerge in Life Sciences. In recent
years, systems have been introduced and an increasing interest among
researchers is arising. This
workshop will provide a venue to present and discuss benefits and
limits of the adoption of these
technologies and tools in biomedical informatics and computational biology.
It will showcase experiences, information resources, tools development
and applications. It will bring
together researchers, both developers and users, from the various
fields of Biology, Bioinformatics and
Computer Science, to discuss goals, current limits and some real use
cases for Semantic Web
technologies in Life Sciences.
Keynote Speakers
------------------------
+ Semantic web technology in translational cancer research,
Michael Krauthammer, Department of Pathology, Yale University School
of Medicine, USA
+ Using Ontologies to bring Web Services on to the Semantic Web
Mark Wilkinson, Dept. of Medical Genetics, University of British
Columbia, Canada
Workshop Venue and Format
------------------------
The workshop will take place in Edinburgh, Scotland, on 28 November
2008, and is hosted by the e-
Science Institute of the UK's National e-Science Centre (NeSC).
SWAT4LS will be a one-day workshop and will consist of two invited
talks, regular paper and poster
presentations. The workshop will conclude with a panel discussion on
the strength and weaknesses of
the Semantic Web for the Life Sciences.
Deadlines
---------
* Submission deadline (both papers and posters): 13 October 2008 (New
deadline!)
* Notification of acceptance: 20 October 2008
* Camera-ready submission: 3 November 2008
Topics of Interest
------------------
Topics of interest include, but are not limited to:
* Standards, Technologies, Tools for the Semantic Web
o Semantic Web standards (RDF, OWL, ...)
o RDF/OWL, SKOS, .... and their applicability to bioinformatics
o RDF Schemas and Query systems
o Biomedical Ontologies and related tools
o Formal approaches to large biomedical controlled terminologies
and vocabularies
* Systems for a Semantic Web for Bioinformatics
o Bio-ontologies, RDF stores, Semantic Web Services
o RDF repositories and query systems for life sciences
o Semantically aware biomedical Web Services
o Semantic Biological Data Integration Systems
* Existing and perspective applications of the Semantic Web for Bioinformatics
o Semantic browsers, Semantic collaborative research
o Case studies, use cases, and scenarios
o Semantic Web applications in life sciences
Type of contributions and instructions
----------------------
The following possible original contributions are sought:
* Oral communications (regular papers)
* Posters
* Software demos
All contributions must be in English and must be submitted through the
EasyChair review system at:
http://www.easychair.org/conferences/?conf=swat4ls.
Please upload all submissions as PDF files in LNCS format (see
http://www.springer.de/comp/lncs/authors.html ).
To ensure high quality, submitted papers will be carefully
peer-reviewed by at least three members of the
Scientific Committee.
* Submissions for Oral communications should be between 10 and 15 pages.
* Posters submissions should be between 4 and 8 pages.
* Software demo proposals should also be between 4 and 8 pages.
All accepted oral communications and posters will be published with
the CEUR-WS.org Workshop
Proceedings service (see http://ceur-ws.org/).
Furthermore, a selection of papers will be published in a special
issue of the BMC Bioinformatics journal
devoted to the SWAT4LS workshop.
To this end, a special Call will be launched shortly after the
workshop, for extended and revised versions
of contributions submitted to the workshop and accepted either as oral
communication or poster.
For any information, refer to info(a)swat4ls.org.
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.
15 years, 9 months
Re: [rules-users] Drools5M3 Issues
by Mark Proctor
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:
> keithnielsen wrote:
>> Ok,
>>
>> I tried to upgrade from M2 to M3. Big Mistake
>>
>> I see that you have attempted to separate the interface from the
>> implementation by moving most of
>> the interfaces that are intended for public consumption from
>> drools-core to
>> a new jar file called drools-api. Unfortunately there appears a few
>> different problems with this
>>
>> 1) Unfortunately you have duplicated package names (drools.core) as well
>> duplicated numerous classes across the two jar files
>> (WorkingMemoryEntryPoint and FactHandle to name a few)
> Some Classes remain, now in a deprecated manner, in drools-core.
> Duplicate names are always in a different pacage to avoid clashing. It
> is recommended that you use the org.drools.runtime.rule.FactHandle,
> which is now considered the stable api. Over time core/compiler will
> implement drools-api instead of bridging and adapting it, and
> drools4.0 classes/interfaces will go to an optional jar. But we didn't
> want to change too much at the beginning, so as to retain backwards
> compatability.
>> 2) StatefulSession interface has not been moved to drools-api and
>> only exist
>> in drools-core
>>
> That is correct. You should now use StatefulKnowledgeSession. You can
> continue to use StatefulSession, we have tried to not break any
> Drools4.0 code, for a level of backwards
> compatability, but any interfaces/classes that you use in Drools4.0,
> should be considered deprecated. As mentioned above, we will move
> these 4.0 specific classes to an optional jar over time.
>> This makes this build unusable in Eclipse 3.4 as is. Also I am using
>> Eclipse
>> as a runtime platform and this makes it impossible to simply expose
>> the api
>> classes as intended, because when you you embed the rules engine as a
>> plugin
>> you have to expose those packages containing the api you wish to
>> expose, in
>> drools case that would be drools-api, unfortunately StatefulSession
>> is still
>> in drools-core for example forcing me to export both drools-core and
>> drools-api which defeats the purpose of having drools-api since I
>> have to
>> expose implementation classes from drools-core which also now exposes
>> duplicate classes, such as FactHandle and WorkingMemoryEntryPoint
>>
> If you are writting new software, use the new drools-api interfaces,
> not the deprecated ones and you won't have this issue.
>
> Mark
>
>
> _______________________________________________
> rules-users mailing list
> rules-users(a)lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>
16 years
Unable to Check-In
by Ashish Redkar
Hi,
I am configuring Oracle Persistence manager for workspace and versioning but
it throws the following error:
org.drools.repository.RulesRepositoryException: Unable to checkin.
at org.drools.repository.VersionableItem.checkin(VersionableItem.java:505)
at
org.drools.repository.RulesRepository.createPackage(RulesRepository.java:581
)
at
org.drools.brms.server.ServiceImplementation.createPackage(ServiceImplementa
tion.java:490)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
at
org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext
.java:31)
at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext
.java:56)
at
org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackIntercep
tor.java:31)
at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext
.java:68)
at
org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.j
ava:46)
at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext
.java:68)
at
org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInter
ceptor.java:42)
at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext
.java:68)
at
org.jboss.seam.security.SecurityInterceptor.aroundInvoke(SecurityInterceptor
.java:40)
at
org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext
.java:68)
at
org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:106)
at
org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInt
erceptor.java:155)
at
org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java
:91)
at
org.drools.brms.server.ServiceImplementation_$$_javassist_3.createPackage(Se
rviceImplementation_$$_javassist_3.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
But it works with MySQL database. Following is my configuration for
filesystem and persistence.
<FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
<param name="url"
value="jdbc:oracle:thin:@172.20.14.58:1521:orcl"/>
<param name="user" value="wamdev"/>
<param name="password" value="miami"/>
<param name="schemaObjectPrefix" value="brms_"/>
<param name="tableSpace" value="default"/>
</FileSystem>
<PersistenceManager
class="org.apache.jackrabbit.core.persistence.db.OraclePersistenceManager">
<param name="url"
value="jdbc:oracle:thin:@172.20.14.58:1521:orcl"/>
<param name="user" value="wamdev"/>
<param name="password" value="miami"/>
<param name="schemaObjectPrefix" value="brms_"/>
<param name="tableSpace" value="default"/>
<param name="externalBLOBs" value="false"/>
</PersistenceManager>
Can Anyone please guide on this?
_____________________________________________________________________
This e-mail message may contain proprietary, confidential or legally privileged information for the sole use of the person or entity to whom this message was originally addressed. Any review, e-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. If you have received this e-mail in error kindly delete this e-mail from your records. If it appears that this mail has been forwarded to you without proper authority, please notify us immediately at netadmin(a)patni.com and delete this mail.
_____________________________________________________________________
16 years
Knowledge Composition and Parts
by Mark Proctor
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:
<composition>
<part resource="classpath://........" type="DRL">
<part resource="file://........">
<decisiontable-configuration type="XLS" worksheet-name="blah" />
</part>
</composition>
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
16 years
Spring support for drools-api
by Mark Proctor
I've been reading about spring this weekend, in preparation of spring
support for drools-api. My first attempt was using drools-api factories
directly, which actually works "out of the box". Here is an example
using the KnowledgeAgentFactory:
--------beans.xml-------
<bean id="agent1"
class="org.drools.agent.KnowledgeAgentFactory"
factory-method="newKnowledgeAgent">
<constructor-arg type="java.lang.String" value="agent1"/>
<constructor-arg type="java.util.Properties">
<props>
<prop key="file">src/main/java/org/drools/springframework/testSpring.drl</prop>
</props>
</constructor-arg>
</bean>
---------testSpring.drl---------
package org.drools.springframework
rule "rule 1"
when
then
System.out.println( "hello world" );
end
---------test---------
Resource resource = new FileSystemResource( "src/main/java/org/drools/springframework/beans.xml" );
BeanFactory factory = new XmlBeanFactory( resource );
KnowledgeAgent agent1 = ( KnowledgeAgent ) factory.getBean( "agent1" );
agent1.getKnowledgeBase().newStatelessKnowledgeSession().executeObject( "test" );
Sow I was quite impressed how easy that was to get working, but people
like the "Spring" way. So I made a custom SpringKnowledgeAgentFactory
that implements FactoryBean. So now the above beans.xml can look like
the following:
<bean id="agent1" class="org.drools.spring.SpringKnowledgeAgentFactory">
<property name="name" value="agent1"/>
<property name="file"
value="src/main/java/org/drools/spring/testSpring.drl" />
</bean>
Which is much less verbose. So I think I'll take some time tomorrow to
do FactoryBean implementations for all main user factories from
drools-api, shouldn't take long and then we have out of the box spring
support. Anyone have any feedback, it seems that now that we have
drools-api, which provides complete implementation/interface separation,
and Spring only needs to return interfaces, this is all we need to do.
If it's quick to do, I might have a go at doing one for Guice too.
Mark
16 years, 1 month