[rules-users] Data Modeling for medical expert system

GPatel at tsys.com GPatel at tsys.com
Tue Nov 8 14:47:07 EST 2011


I am in the same situation (and I suspect a lot of people with complex 
domain models are), which is: how do I let the user easily navigate my 
domain model while writing a rule. 

There is support for providing a custom form within a popup when a fact 
constraint needs to be specified. You can present it to the user whenever 
a fact constraint needs to be supplied to the rule. Since you are 
providing the contents of the custom form, you can represent your domain 
however you wish to, navigate it perhaps using a tree, or even let the 
user perform a mini search to get to the "MeSH category".

The custom form does not currently work with DSLs though, if you are 
planning on using DSL sentences. But you can write your own DSL widget 
that does (not too difficult, if you know GWT).

For my project, the biggest utility value of drools is the standalone 
editor, the Guvnor rest api and the fact that it is opensource (so that I 
can customize it for my very complex needs)

Thanks
G. Patel



From:   Bruno Freudensprung <bruno.freudensprung at temis.com>
To:     Rules Users List <rules-users at lists.jboss.org>
Date:   11/08/2011 10:49 AM
Subject:        Re: [rules-users] Data Modeling for medical expert system
Sent by:        rules-users-bounces at lists.jboss.org




Hi Dirk,

Good to see that I am not the only one fighting with that question :-).
I guess the general answer is: it depends on how large your "enums" 
might grow.

For instance if your application is eventually supposed to help 
diagnosing (say) all MeSH diseases based on all MeSH symptoms, then an 
approach where every symptom and disease is a Java class is not an 
option; this would lead to so many classes that I doubt Drools user 
interface will handle that, or will be useful anyway (drop-down lists 
with thousands of items).

The opposite approach consists in creating a few "root" Java classes 
like (say) Disease and Symptom and to store the MeSH hierarchy into a 
"name" attribute.
The obvious drawback of the approach is that when your end-users will 
have to write the rules, they will be left with problems like:

when
     Symptom(name == "well... what's the name of this MeSH category??")
then
     Disease(name == "hmmm... can't remember the exact name of the 
disease as normalized in MeSH...")
end

I've posted a message on this topic (subject: Thoughts about rule 
authoring) and Michael Anstis kindly suggested a technical answer. I am 
afraid it did not fit my needs, but it could fit yours :-).

For the moment I have no solution (like an intermediate approach) to my 
problem: I am stuck with approach #2.
I have the impression that my problem requires a very tight integration 
between my database (MeSH) and the Drools suggestion engine.

If you have another approach, I would love to know it ;-).

Best regards,

Bruno.

Le 08/11/2011 17:43, Dirk Conzelmann a écrit :
>   Hi everybody,
>
>   I am using Drools as a part of my Bachelor Thesis.
>   My job is to build an expert system for medical diagnoses.
>
>   My Question:
>   Is there a best practice known in modeling a variable
>   list of questions and answers in Drools?
>
>
>   Up to now I modeled the list of questions implementing
>   Java Classes and Enums for each question/answer pair.
>
>   But to be able to change those options easyly I need
>   a higher abstraction level than simple Java Classes and Enums.
>
>
>   Could someone show me an example how to implement this?
>
>
>   I hope I have explained my question understandable :)
>
>

_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users



-----------------------------------------
The information contained in this communication (including any
attachments hereto) is confidential and is intended solely for the
personal and confidential use of the individual or entity to whom
it is addressed. If the reader of this message is not the intended
recipient or an agent responsible for delivering it to the intended
recipient, you are hereby notified that you have received this
communication in error and that any review, dissemination, copying,
or unauthorized use of this information, or the taking of any
action in reliance on the contents of this information is strictly
prohibited. If you have received this communication in error,
please notify us immediately by e-mail, and delete the original
message. Thank you 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20111108/c45ea4a2/attachment.html 


More information about the rules-users mailing list