uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From José Vicente Moyano Murillo <moya...@aia.es>
Subject Re: Using RUTA
Date Tue, 28 Feb 2017 13:06:13 GMT
Hi Peter, we have another question regarding the same example.

Right now all is working properly (many thanks) and it seems that
2.5.1-SNAPSHOT it's fine.

Now we are planning to store some information in the created annotation. We
want to store all the attributes that matches the RUTA rule.

It is possible to store a1 and a2 in a feature (attributes) of NeilsBook?

The example:

Book{-> NeilsBook}<-{
    a1:Attribute{a1.name=="title", a1.ct=="Norse Mythology"}
    %
a2:Attribute{a2.name=="author", a2.ct=="Neil Gaiman"};
};

We are using this aproach:

Book{-> NeilsBook("attributes" = Attribute )}<-{
     a1:Attribute{a1.name=="title", a1.ct=="Norse Mythology"}
     %
a2:Attribute{a2.name=="author", a2.ct=="Neil Gaiman"};
};

This example works but it is storing all the annotations "Attribute"
covered by "Book" and we just want the attributes that matches the rule.

Thanks in advance.




2017-02-24 10:29 GMT+01:00 José Vicente Moyano Murillo <moyanoj@aia.es>:

> Many thanks Peter ¡¡¡
>
> 2017-02-24 9:46 GMT+01:00 Peter Klügl <peter.kluegl@averbis.com>:
>
>> Hi,
>>
>>
>> the repo:
>>
>> <repository>
>>       <id>apache.snapshots</id>
>>       <name>Apache Snapshot Repository</name>
>>       <url>http://repository.apache.org/snapshots</url>
>>       <releases>
>>         <enabled>false</enabled>
>>       </releases>
>>     </repository>
>>
>>
>> the folder:
>>
>> https://repository.apache.org/content/groups/snapshots/org/a
>> pache/uima/ruta-core/2.5.1-SNAPSHOT/
>>
>>
>> Best,
>>
>> Peter
>>
>>
>>
>> Am 23.02.2017 um 13:47 schrieb José Vicente Moyano Murillo:
>> > Hi,
>> >
>> > ruta-core.jar it's enough.
>> >
>> > It will be fantastic if i could access the snapshot repository.
>> >
>> > 2017-02-23 13:03 GMT+01:00 Peter Klügl <peter.kluegl@averbis.com>:
>> >
>> >> Hi,
>> >>
>> >>
>> >> what do you need? Only ruta-core.jar or also the Eclipse plugins/update
>> >> site?
>> >>
>> >> I will prepare a new RC for the next release soon.
>> >>
>> >> There should be snapshot artifacts built by jenkins in the snapshot
>> >> repository. I am out-of-office today so do not have the link right
>> now. (If
>> >> you want to build it yourself, the svn source repo can be accessed by
>> >> anyone)
>> >>
>> >>
>> >> Best,
>> >>
>> >>
>> >> Peter
>> >>
>> >>
>> >>
>> >>
>> >> Am 23.02.2017 um 08:06 schrieb José Vicente Moyano Murillo:
>> >>
>> >>> Hi Peter, good morning.
>> >>>
>> >>> Have we any opportunity to get a fixed version? I mean a snapshot or
>> an
>> >>> access to the repo.
>> >>>
>> >>> Regards
>> >>>
>> >>> 2017-02-22 10:38 GMT+01:00 José Vicente Moyano Murillo <
>> moyanoj@aia.es>:
>> >>>
>> >>> you're right
>> >>>> % is performing some kind of "or".
>> >>>>
>> >>>> So we will wait for the new release.
>> >>>>
>> >>>> Many thanks
>> >>>>
>> >>>> 2017-02-22 9:54 GMT+01:00 Peter Klügl <peter.kluegl@averbis.com>:
>> >>>>
>> >>>> I actually wonder why your rules work. I am quite sure that they
>> match
>> >>>>> too often, i. e. they match also if only one of the conjunct
rule
>> >>>>> elements match.
>> >>>>>
>> >>>>> You can simply try that by using a wrong string in the check
like
>> "NG"
>> >>>>> instead of "Neil Gaiman"
>> >>>>>
>> >>>>> Anyways, the problem will be fixed in a few minutes and will
be
>> part of
>> >>>>> the next release.
>> >>>>>
>> >>>>>
>> >>>>> Best,
>> >>>>>
>> >>>>>
>> >>>>> Peter
>> >>>>>
>> >>>>>
>> >>>>> Am 22.02.2017 um 09:38 schrieb Peter Klügl:
>> >>>>>
>> >>>>>> Thanks. Maybe its just a bug in 2.5.0 I already fixed. I'll
>> investigate
>> >>>>>>
>> >>>>> it.
>> >>>>>
>> >>>>>> Am 22.02.2017 um 09:24 schrieb José Vicente Moyano Murillo:
>> >>>>>>
>> >>>>>>> Thank you very much Peter. Your advice was amazing.
>> >>>>>>>
>> >>>>>>> We tried the first option using Conjunct rules and as
you said it
>> does
>> >>>>>>>
>> >>>>>> not
>> >>>>>> work with version 2.5.0. But we change a little your example
and it
>> >>>>>> works
>> >>>>>> perfectly witn 2.4.0 and 2.5.0
>> >>>>>>> We use theses examples with success:
>> >>>>>>>
>> >>>>>>> DECLARE Annotation RuleDetection;
>> >>>>>>>   Book{ -> CREATE(NeilsBook) } <- {
>> >>>>>>>        Attribute{Attribute.name=="title", Attribute.ct=="Norse
>> >>>>>>>
>> >>>>>> Mythology"}"
>> >>>>>>        %
>> >>>>>>>                Attribute{Attribute.name=="author",
>> >>>>>>> Attribute.ct=="Neil
>> >>>>>>> Gaiman"};"
>> >>>>>>>   };
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> DECLARE Annotation RuleDetection;
>> >>>>>>>   Book{ -> CREATE(NeilsBook) } <- {
>> >>>>>>>         Attribute{FEATURE("name","title"), FEATURE("ct",
"Norse
>> >>>>>>>
>> >>>>>> Mythology")}"
>> >>>>>>        %
>> >>>>>>>                 Attribute{FEATURE("name","author"),
FEATURE("ct",
>> >>>>>>> "Neil
>> >>>>>>> Gaiman")};
>> >>>>>>>   };
>> >>>>>>>
>> >>>>>>> DECLARE Annotation RuleDetection;
>> >>>>>>>   Book{ -> CREATE(NeilsBook) } <- {
>> >>>>>>>        Attribute{Attribute.name=="title", Attribute.ct=="Norse
>> >>>>>>>
>> >>>>>> Mythology"}"
>> >>>>>>        %
>> >>>>>>>                 Attribute{FEATURE("name","author"),
FEATURE("ct",
>> >>>>>>> "Neil
>> >>>>>>> Gaiman")};
>> >>>>>>>   };
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> May be the problem is with when we use Identifiers:
>> >>>>>>>     a1:Attribute and  a2:Attribute
>> >>>>>>>
>> >>>>>>> In any case thank you very much for your help.
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> 2017-02-21 17:46 GMT+01:00 Peter Klügl <peter.kluegl@averbis.com
>> >:
>> >>>>>>>
>> >>>>>>> Hi,
>> >>>>>>>>
>> >>>>>>>> I'd normally say that you need the conjunt rules
construct to
>> specify
>> >>>>>>>>
>> >>>>>>> an
>> >>>>>> AND between two rule element independent of the position:
>> >>>>>>>>
>> >>>>>>>> Book{-> NeilsBook}<-{
>> >>>>>>>>      a1:Attribute{a1.name=="title", a1.ct=="Norse
Mythology"}
>> >>>>>>>>      % a2:Attribute{a2.name=="author", a2.ct=="Neil
Gaiman"};
>> >>>>>>>>      };
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> However, I just noted that there is a problem with
conjunct
>> rules. I
>> >>>>>>>> haven't used it in a long time and the test coverage
much lower
>> than
>> >>>>>>>>
>> >>>>>>> the
>> >>>>>> other constructs. I'll create a ticket for it and fix it.
>> >>>>>>>>
>> >>>>>>>> Without conjunct rules, you need some boolean variables
for
>> cheking
>> >>>>>>>>
>> >>>>>>> the
>> >>>>>> AND, which looks all but declarative:
>> >>>>>>>>
>> >>>>>>>> BOOLEAN ft, fa;
>> >>>>>>>> FOREACH(book) Book{}{
>> >>>>>>>>      book{-> ft = false, fa = false};
>> >>>>>>>>      book->{a1:Attribute{a1.name=="title", a1.ct=="Norse
>> >>>>>>>> Mythology"->
>> >>>>>>>> ft=true};};
>> >>>>>>>>      book->{a2:Attribute{a2.name=="author", a2.ct=="Neil
>> Gaiman"->
>> >>>>>>>> fa=true};};
>> >>>>>>>>      book{ft,fa -> NeilsBook};
>> >>>>>>>> }
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> ... or with a BLOCK...
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> BLOCK(book) Book{}{
>> >>>>>>>>      Document{-> ft = false, fa = false};
>> >>>>>>>>      a1:Attribute{a1.name=="title", a1.ct=="Norse
Mythology"->
>> >>>>>>>>
>> >>>>>>> ft=true};
>> >>>>>>      a2:Attribute{a2.name=="author", a2.ct=="Neil Gaiman"->
>> fa=true};
>> >>>>>>>>      Document{ft,fa -> NeilsBook};
>> >>>>>>>> }
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> If the order of the attributes is known, you can
avoid the AND
>> check
>> >>>>>>>>
>> >>>>>>> and
>> >>>>>> just specify a sequential constraint:
>> >>>>>>>>
>> >>>>>>>> Book{-> NeilsBook}<-{
>> >>>>>>>>      a1:Attribute{a1.name=="title", a1.ct=="Norse
Mythology"}
>> >>>>>>>>      # a2:Attribute{a2.name=="author", a2.ct=="Neil
Gaiman"};
>> >>>>>>>>      };
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> If you need to check on the complete title with
the URL, you can
>> >>>>>>>>
>> >>>>>>> replace
>> >>>>>> the coveredText comparison with a REGEXP condition.
>> >>>>>>>>
>> >>>>>>>> (tested with UIMA Ruta 2.5.0)
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Best,
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Peter
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> Am 21.02.2017 um 13:58 schrieb José Vicente Moyano
Murillo:
>> >>>>>>>>
>> >>>>>>>>> Hello everyone
>> >>>>>>>>>
>> >>>>>>>>> I'm planning to use RUTA to create some annotations.
But i'm not
>> >>>>>>>>>
>> >>>>>>>> able to
>> >>>>>> accomplish my objective.
>> >>>>>>>>> This is my case right now:
>> >>>>>>>>>
>> >>>>>>>>> I have a text annotated with some annotations
"*Book*".
>> >>>>>>>>>
>> >>>>>>>>> Under "*Book*" annotation i have a few annotations
"*Attribute*"
>> >>>>>>>>> that
>> >>>>>>>>> stores some information about the book. Each
"*Attribute*" has a
>> >>>>>>>>>
>> >>>>>>>> feature
>> >>>>>> "
>> >>>>>>>>> *name*" and a feature "*parent*" to its parent
(one "*Book*"
>> >>>>>>>>>
>> >>>>>>>> annotation).
>> >>>>>> And example could be a text with 2 "*Book*" annotations:
>> >>>>>>>>> "*Book*" annotation number 1 with 3 nested attributes
>> >>>>>>>>> 1.- *Attribute* with name feature equals "title"
-> covered
>> text:
>> >>>>>>>>>
>> >>>>>>>> "Norse
>> >>>>>> Mythology
>> >>>>>>>>> <http://www.barnesandnoble.com/w/norse-mythology-neil-
>> >>>>>>>>>
>> >>>>>>>> gaiman/1124023596;jsessionid=FD1D8F9690602616CA59B38CFE9290
>> >>>>>>>> 06.prodny_store02-atgap08?ean=9780393609097>
>> >>>>>>>>
>> >>>>>>>>> "
>> >>>>>>>>> 2.- *Attribute* with name feature equals "author"
->  covered
>> text:
>> >>>>>>>>>
>> >>>>>>>> "Neil
>> >>>>>> Gaiman"
>> >>>>>>>>> 3.- *Attribute* with name feature equals "language"
- > covered
>> >>>>>>>>> text:
>> >>>>>>>>> "English"
>> >>>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>> "*Book*" annotation number 2 with 3 nested attributes
>> >>>>>>>>> 1.- *Attribute* with name feature equals "title"
-> covered
>> text:
>> >>>>>>>>>
>> >>>>>>>> "Never
>> >>>>>> Never
>> >>>>>>>>> <http://www.barnesandnoble.com/w/never-never-james-patterson
>> >>>>>>>>>
>> >>>>>>>> /1123863634;
>> >>>>>> jsessionid=FD1D8F9690602616CA59B38CFE929006.prodny_store02-
>> >>>>>>> atgap08?ean=
>> >>>>>> 9780316433174>
>> >>>>>>>>> "
>> >>>>>>>>> 2.- *Attribute* with name feature equals "author"
->  covered
>> text:
>> >>>>>>>>>
>> >>>>>>>> "James
>> >>>>>>>>
>> >>>>>>>>> Patterson"
>> >>>>>>>>> 3.- *Attribute* with name feature equals "language"
- > covered
>> >>>>>>>>> text:
>> >>>>>>>>> "English"
>> >>>>>>>>>
>> >>>>>>>>> I need to respect this schema but i have this
question:
>> >>>>>>>>> It is possible to create and annotation over
a book for a given
>> >>>>>>>>>
>> >>>>>>>> author
>> >>>>>> name
>> >>>>>>>>> and a given title name?
>> >>>>>>>>>
>> >>>>>>>>> Thank's in advance
>> >>>>>>>>>
>> >>>>>>>>>
>>
>>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message