[rules-users] Hello and my first question
Bojan Janisch
bojan.janisch at scai.fraunhofer.de
Mon Jan 14 07:37:02 EST 2013
Solution:
So I've decided for a third solution. First was using the named consequence feature,
but I did not want to have multiple consequence-blocks, that would only make confusing
code. The second solution was extending the rule, that would have been a nice solution,
but also confusing by growing optionally conditions. So I used the third solution,
I've splitted the rule into two rules. It's almost the same as the extending version
with a slight difference in the time when it comes for passing the condition.
I think the hierarchy will give a better overview by understanding the rules, thats
why I choosed separation instead of extension rules.
State of my rules:
rule "Annotate Anatomy"
when
$NE1 : NE(Type.contains("body"))
$NE2 : NE(Type.contains("anatomy"))
then
$anno : Annotation($NE1 + " " $NE2);
anno.setType("Anatomy");
list.add(anno);
end
rule "Add AnatomicSide to Anatomy"
when
$AN : Annotation(Type.contains("Anatomy"))
$NE : NE(Type.contains("anatomic"))
then
$anno : Annotation($AN + " " $NE)
anno.setType("Anatomy");
list.add(anno);
list.remove(AN);
end
Thanks for solving this problem.
Janisch
----- Ursprüngliche Mail -----
Von: "Wolfgang Laun" <wolfgang.laun at gmail.com>
An: "Rules Users List" <rules-users at lists.jboss.org>
Gesendet: Montag, 14. Januar 2013 12:56:58
Betreff: Re: [rules-users] Hello and my first question
Then the approach depends on the way $NE1, $NE2 and $NE3 are to be added
to the structured object. If the two or three values need to be
combined (e.g., concatenated in some specific order), you might use
two distinct rules as extensions of the common part:
rule "body-anatomy"
when
$NE1 : NE(Type.contains("body"))
$NE2 : NE(Type.contains("anatomy"))
then
end
rule "body-anatomy anatomic"
extends "body-anatomy"
when
$NE3: NE(Type.contains("anatomic"))
then
combine $NE1, $NE2, $NE3 as required, add to...
end
rule "body-anatomy no anatomic"
extends "body-anatomy"
when
not NE(Type.contains("anatomic"))
then
combine $NE1, $NE2 as required, add to...
end
If $NE1 + $NE2 and $NE3 can be added individually, you might omit the
third rule and add $NE1 + $NE2 in the first rule. Or use the named
consequence feature.
-W
On 14/01/2013, Bojan Janisch <bojan.janisch at scai.fraunhofer.de> wrote:
> Because the annotation should extract most of the unstructured information,
> into a structured object. So if there is optionally such an information like
> an anatomic side, I would want to add this information to my structured
> object.
>
> ----- Ursprüngliche Mail -----
> Von: "Wolfgang Laun" <wolfgang.laun at gmail.com>
> An: "Rules Users List" <rules-users at lists.jboss.org>
> Gesendet: Montag, 14. Januar 2013 12:22:37
> Betreff: Re: [rules-users] Hello and my first question
>
> I take "optional" to mean "don't care whether it is there or not" - so
> why don't you simply omit this condition?
>
> -W
>
> On 14/01/2013, Bojan Janisch <bojan.janisch at scai.fraunhofer.de> wrote:
>> Hello everybody,
>>
>> this is my first post and also my first question to you.
>> I've searched the net for quite some hours now, but don't get any
>> information regarding optionally conditions.
>>
>> I'm using drools to annotate some textobjects and I'm stucking with the
>> following rule:
>>
>> When there are two named entities, one body side and one anatomy in a text
>> (they're defined earlier by a textannotating system, so I'm working on
>> annotated objects) and there is a optionally anatomic side (it contains
>> generally something like "lateral" oder "medial" and so on), then generate
>> me a new annotation.
>>
>> So up to now I'm on this state:
>>
>> Rule "Anatomic Side"
>>
>> when
>>
>> $NE1 : NE(Type.contains("body"))
>> $NE2 : NE(Type.contains("anatomy"))
>>
>> //So here starts the problem
>> [$NE3 : NE(Type.contains("anatomic"))]
>>
>> then
>> ...
>>
>> How can I set a condition as optionally or is there no such way?
>>
>> Thanks everyone to who reads this.
>> Janisch
>> _______________________________________________
>> rules-users mailing list
>> rules-users at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/rules-users
>>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
_______________________________________________
rules-users mailing list
rules-users at lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users
More information about the rules-users
mailing list