[Nepomuk] Re: Akonadi-Nepomuk feeder port to SimpleResource api

Sebastian Trüg trueg at kde.org
Tue Jul 26 13:42:51 CEST 2011


On 07/26/2011 01:18 AM, Christian Mollekopf wrote:
> I forgot to add:
> 
> I extended the aneo ontology as discussed:
> 
> aneo: {
> 
>      aneo:AkonadiDataObject a rdfs:Class ;
>            rdfs:subClassOf nie:DataObject ;
>            rdfs:label "AkonadiDataObject" ;

this is the ugly label type as used throughout NIE and friends. Those
labels have been waiting to be fixed for a long time. Its just that
there are so damn many....
Anyway, please give it a proper label, one that can be displayed to a
user. Something like "Akonadi item".

>            rdfs:comment "used to identify akonadi entities (items and  
> collections) created by the akonadi-nepomuk feeders" ;
>            nao:userVisible false .

Hm, I am not sure if this is wise. This would mean that all akonadi data
objects are not visible to the user. I doubt you want that. ;)

> 
>      aneo:akonadiItemId a rdf:Property ;
>          rdfs:label "Akonadi Item ID" ;
>          rdfs:comment "used to identify items created by the  
> akonadi-nepomuk feeders (depreceated usage, use the AkonadiDataObject type  
> instead)" ;
>          rdfs:range xsd:string ;
>          rdfs:domain aneo:AkonadiDataObject ;
>          rdfs:subPropertyOf nao:identifier ;
>          nrl:maxCardinality 1 ;
>          nao:userVisible false .
> }
> 
> This means that we can now limit queries with:
> 
>      ResourceTypeTerm(Class(Vocabulary::ANEO::AkonadiDataObject()))
> 
> which is nicer and has better performance(afaik) than the old:
> 
>      query.addRequestProperty(Query::RequestProperty(Akonadi::ItemSearchJob::akonadiItemIdUri(),  
> false));

Exactly. This is starting to look really nice IMHO. :)

Just a small side remark: It's so refreshing to have you working on the
Akonadi integration, you give the kind of feedback and ask the kind of
questions that push a project like Nepomuk. Thanks for that. :)

Cheers,
Sebastian

> Cheers,
> Christian
> 
> 
> 
> On Sat, 23 Jul 2011 15:39:56 +0200, Sebastian Trüg <trueg at kde.org> wrote:
> 
>> without looking at the code yet:
>>
>> thanks a lot for doing this. And:
>>
>> On 07/22/2011 01:31 AM, Christian Mollekopf wrote:
>>> -replaced any usage of NepomukFast and with SimpleResource api
>>> -Removed the nepomukFeeder class, which was only needed because of the
>>> template stuff
>>> -added NepomukFeederUtils namespace which contains some helper functions
>>> which don't belong into NepomukFeederAgentBase
>>> -removed everything else from NepomukFeederAgentBase which doesn't
>>> belong there and moved to the correct location (actually only
>>> findOrCreateContact that is)
>>
>> AFAICS there is no need for findOrCreateContact anymore. You simply
>> throw the contact at DMS multiple times and it will be merged properly.
>>
>>> -updated the documentation of NepomukFeederAgentBase
>>> -added the aneo ontology which is currently only used for the
>>> akonadiItemId (to mark the nepomuk resources as akonadi item)
>>> -added a copy of the nepomuk-dms to avoid a dependency on kde-runtime
>>> -added the SimpleResource convenience classes (In the future they could
>>> be generated during the build, but that's not working at the moment)
>>
>> Actually we already have a review request for that. It is only a matter
>> of cleaning up some issues. Then the cmake macro is done.
>>
>>> -ported the calendar feeder to the SimpleResource api
>>>
>>> I did not touch the contact feeder so far as Martin Klapetek is working
>>> on that.
>>>
>>> Also I noticed an occasional problem that the dms complains about
>>> cardinality of random parameters (i.e. the akonadiItemId),
>>> anyhow thats not critical for the moment as the feeders seem to work
>>> fine otherwise.
>>
>> Could you give an actual example, please?
>>
>>> Since there did not change a lot from the akonadi side I don't really
>>> expect much reviewing from this side (although all comments are  
>>> welcome),
>>> but I'd be nice if Vishesh or Sebastian could have a look on how I used
>>> the SimpleResource api.
>>> That would be specifically the Calendarfeeder and the
>>> NepomukFeederAgentBase::addItemToGraph,
>>> NepomukFeederAgentBase::addGraphToNepomuk functions.
>>>
>>> If it looks more or less ok, I'll commit so we can work from there.
>>
>> I will try to have a look these days.
>>
>> Cheers,
>> Sebastian
>> _______________________________________________
>> Nepomuk mailing list
>> Nepomuk at kde.org
>> https://mail.kde.org/mailman/listinfo/nepomuk
> 
> 


More information about the Nepomuk mailing list