On Wed, Oct 6, 2010 at 8:54 AM, Amir Pakdel <pak...@gmail.com> wrote:
> Hi Sebastian,
>
> On Wed, Oct 6, 2010 at 4:16 PM, Sebastian Trüg <tr...@kde.org> wrote:
>> Hi Amir,
>>
>> On 10/02/2010 02:16 PM, Amir Pakdel wrote:
>>> Hi Sebastian,
>>>
>>> On Thu, Sep 23, 2010 at 11:11 AM, Amir Pakdel <pak...@gmail.com> wrote:
>>>> On Tue, Sep 21, 2010 at 2:21 PM, Sebastian Trüg <tr...@kde.org> wrote:
>>>>>
>>>>> On 09/21/2010 12:34 PM, Laura Dragan wrote:
>>>>>> On Tuesday 21 September 2010 09:30:19 Sebastian Trüg wrote:
>>>>>>> Hi Amir,
>>>>>>>
>>>>>>> looks like I missed this one. So here goes.
>>>>>>>
>>>>>>> On 09/14/2010 06:50 PM, Amir Pakdel wrote:
>>>>>>>> The last prombems were:
>>>>>>>>
>>>>>>>>    1.
>>>>>>>>
>>>>>>>>       I havd to update Krunner Nepomuk plugin to the last version
>>>>>>>>
>>>>>>>>    2.
>>>>>>>>
>>>>>>>>       There is a /22rdfsyntaxnsmetadata/ function in /rdf/ which I had
>>>>>>>>       to comment out
>>>>>>>
>>>>>>> Is this something Nepomuk-related? Something that did not work or might
>>>>>>> need fixing from my part?
>>>>>>>
>>>>>>>> I have attached latest version of /src/nepomukintegration.h/ and
>>>>>>>> /src/nepomukintegration.cpp/ and I would be greateful if you could
>>>>>>>> take
>>>>>>>> look and inform me of any error, bug or requred features.
>>>>>>>
>>>>>>> Some comments:
>>>>>>> - It is recommended to use KUrl(path) instead of
>>>>>>>   QUrl::fromLocalFile(path)
>>>>>>> - setProperty( "a" ) is very very wrong. :) What you want to do is
>>>>>>>   calling addType()
>>>>>>> - there is no need to add nfo:FileDataObject type manually. That is
>>>>>>>   already handled by strigi and Resource. The same goes for nie:url
>>>>>>> - nfo:fileUrl is deprecated in favor of nie:url.
>>>>>>> - Please do not use DC. Rather use nie:title.
>>>>>>> - use setLabel() instead of setProperty( NAO::prefLabel(),
>>>>>>>
>>>>>>>> Here is the updated and reformatted testing procedure:
>>>>>>>
>>>>>>> I am not sure what to do with the explanations below. Is that for
>>>>>>> manual
>>>>>>> testing?
>>>>>>>
>>>>>>>
>>>>>>>> Trüg, do you know why I cannot find tags?
>>>>>>>> Laura, what metadata do you suggest to add next?
>>>>>>
>>>>>> Hi Amir,
>>>>>>
>>>>>> There are some things which are not completely clear to me.
>>>>>> From what I see in the code, you consider a .basket as a note.
>>>>>> I see the basket as a container of multiple notes, each distinct
>>>>>> instances of pimo:Note, each with it's own creation/modification times 
>>>>>> and
>>>>>> tags. I'm not sure about the title, as I don't know if you can set the 
>>>>>> title
>>>>>> of an individual note in any other way as through formatting in the text.
>>>>>> And then there are the groups of notes, which I think would make sense to
>>>>>> capture as RDF as they are structured info as well.
>>>>>>
>>>>>> @nepomuk What vocabulary offers support for this kinds of containers of
>>>>>> Things already?
>>>>>> As a last resort, you could even make up your own small vocabulary for
>>>>>> it.
>>>>>
>>>>> Well, we do have pimo:isPartOf, right?
>>>>>
>>>>> Cheers,
>>>>> Sebastian
>>>>
>>>> Hi Laura,
>>>> Hi Sebastian,
>>>>
>>>> You are completely right: .basket files represent groups of notes (called
>>>> basket) and they contain everything except the notes. The actual notes are
>>>> individual files of a variety of types (Image, Text, HTML) in the same
>>>> directory and they are addressed in the .basket file.
>>>> Nonetheless, I could not define a MIME-Type for the files that really
>>>> containing notes, because they already have one! and I could not find a way
>>>> to include path of a file as part of the MIME-Type specification. In other
>>>> words, what makes an HTML file, a note in "Basket Note Pads" is the
>>>> directory that this file resides in.
>>>> Consequently, the only solution I could think of, is assigning all the
>>>> metadata in the Nepomuk to the .basket file. In fact, the .basket files
>>>> contains all this metadata in XML format. Afterwords, as Sebastian said, we
>>>> could link notes and baskets in Nepomuk using pimo:isPartOf.
>>>> Significance of the MIME-Type is related to the fact that with the right
>>>> MIME-Type being set, the search result (in this case the .basket file) is
>>>> opened using the appropriate application (Basket Note Pads).
>>>> However, I have not tested the effect of pimo:isPartOf! I do not know if a
>>>> single note (an HTML file for example) that is a part of a .basket is found
>>>> (as a search result) running the note using KRun will open the .basket
>>>> (which the note is part of) using the Basket Note Pads or the note file
>>>> (using Firefox in tis case).
>>>>
>>>> Any idea or suggestion?
>>>>
>>>> Thanks,
>>>> Amir
>>>>
>>>
>>> As you may know, Basket Note Pads uses a directory hierarchy like this
>>> under ~/.kde/share/apps/basket/baskets/:
>>> basket[0-9]+/
>>>                    |
>>>                    \__ .basket               <- the XML file that
>>> contains the metadata
>>>                    \__ note[0-9]+.html    <- the actual notes
>>> referenced inside the .basket file
>>>                    \__ note[0-9]+.html
>>>                    \......
>>>
>>> Thanks to your help, the new nepomukintegration::updateMetadata
>>> function in the Basket Note Pads, now can update the metadata of the
>>> .basket file in the Nepomuk. As a result, one can search for the title
>>> or the tags of the basket in the KRunner and when clicking on the
>>> search result, the basket would be opened in the Basket Note Pads
>>> (thanks to Brian).
>>>
>>> The next thing would be adding the actual note into the Nepomuk, so
>>> that we could search for the note contents.
>>>
>>> I thought it could be done by indexing the note file and then adding
>>> an nie:isPartOf to it, but it seems that I am wrong.
>>> I have attached the source code of the nepomukintegration.cpp and the
>>> result is something like the following:
>>>
>>> $ nepomukcmd query "select ?r where { ?r nie:url
>>> <file:///home/amir/.kde/share/apps/basket/baskets/basket106/note1.html>
>>> . }"
>>>
>>> <nepomuk:/res/18f7977b-86ca-4161-8b03-b31727e269df>
>>> Total results: 1
>>> Execution time: 00:00:00.3
>>>
>>> $ nepomukcmd query "select ?a ?b where {
>>> <nepomuk:/res/18f7977b-86ca-4161-8b03-b31727e269df> ?a ?b . }"
>>>
>>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>>> <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#FileDataObject>
>>> <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#lastModified>
>>> "2010-10-02T10:22:53.727Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>
>>> <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#wordCount>
>>> "37"^^<http://www.w3.org/2001/XMLSchema#int>
>>> <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
>>> "note1.html"^^<http://www.w3.org/2001/XMLSchema#string>
>>> <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#characterCount>
>>> "498"^^<http://www.w3.org/2001/XMLSchema#int>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#isPartOf>
>>> <nepomuk:/res/549cbd4e-22c4-4552-a0f7-4f6503511023>
>>> <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#lineCount>
>>> "5"^^<http://www.w3.org/2001/XMLSchema#int>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#lastModified>
>>> "2010-08-25T04:18:14Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#url>
>>> <file:///home/amir/.kde/share/apps/basket/baskets/basket106/note1.html>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#plainTextContent>
>>> "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\"
>>> \"http://www.w3.org/TR/REC-html40/strict.dtd\";>\n<html><head><meta
>>> name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\np, li {
>>> white-space: pre-wrap; }\n</style></head><body style=\"
>>> font-family:\'Sans Serif\'; font-size:9pt; font-weight:400;
>>> font-style:normal;\">\n<p style=\" margin-top:0px; margin-bottom:0px;
>>> margin-left:0px; margin-right:0px; -qt-block-indent:0;
>>> text-indent:0px;\">Can be indexed in
>>> basketview.cpp/BasketView::closeEditor</p></body></html>"^^<http://www.w3.org/2001/XMLSchema#string>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#mimeType>
>>> "text/html"^^<http://www.w3.org/2001/XMLSchema#string>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#contentSize>
>>> "502"^^<http://www.w3.org/2001/XMLSchema#int>
>>> Total results: 12
>>> Execution time: 00:00:00.1
>>>
>>> $ nepomukcmd query "select ?a ?b where {
>>> <nepomuk:/res/18f7977b-86ca-4161-8b03-b31727e269df> nie:isPartOf ?t .
>>> ?t ?a ?b . }"
>>>
>>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>>> <http://www.semanticdesktop.org/ontologies/2007/11/01/pimo#Note>
>>> <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#lastModified>
>>> "2010-10-02T10:23:07.004Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>
>>> <http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#fileName>
>>> ".basket"^^<http://www.w3.org/2001/XMLSchema#string>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#url>
>>> <file:///home/amir/.kde/share/apps/basket/baskets/basket106/.basket>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#title>
>>> "Basket Note Pads
>>> development"^^<http://www.w3.org/2001/XMLSchema#string>
>>> <http://www.semanticdesktop.org/ontologies/2007/01/19/nie#mimeType>
>>> "application/x-basket-item"^^<http://www.w3.org/2001/XMLSchema#string>
>>> <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#prefLabel>
>>> "Basket Note Pads
>>> development"^^<http://www.w3.org/2001/XMLSchema#string>
>>> <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#hasTag>
>>> <nepomuk:/res/2085289f-3366-4d3c-a9c5-0064ce6630f9>
>>> <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#hasTag>
>>> <nepomuk:/res/d06217ba-b63c-48f5-9c31-78d93a155e2c>
>>> <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#hasTag>
>>> <nepomuk:/res/e2642122-636f-44fc-8f5e-fed579aff6f9>
>>> Total results: 10
>>> Execution time: 00:00:00.3
>>>
>>>
>>>
>>>
>>> But, unfortunately, when searching for some text in the note using
>>> KRunner, it finds the .html file and opens it using a Web Browser.
>>>
>>> Any suggestions?
>>
>> I see one very simple solution as a quick-fix:
>> Create your own .basket mimetype and store notes in foobar.basket files,
>> one note per file. Then the mimetype can be associated with your
>> application directly and finding the notes would open them accordingly.
>> This would be in par with how applications typically handle files.
>>
> It is a good idea; I like it very much. Does anyone have anything against it?
>

I don't completely understand what is meant here. You're talking about
changing the way notes are stored, is that correct? I thought Amir had
already created a .basket mimetype for the .basket files that already
exist? Notes don't have names. How are they being searched for?

>> The second solution would be to go the clean way and store the notes in
>> Nepomuk only. But that requires the type/application system I mentioned.
>> Maybe it is time to create that.
>>
>> Cheers,
>> Sebastian
>>
>
> The second solution is more appealing, but I would rather get a
> working version with what we have got now. Therefore, I will go with
> the first suggestion.
>

We actually have thought about interfacing with Akonadi for data
storage/caching. If we do that, would we get Nepomuk integration for
"free" as well?

> If nobody disagrees, I will start coding soon.
>

I don't disagree, but I need more information.

> Thanks again Sebastian.
>
>
> Cheers,
> Amir
>

Thanks
--
Matt

------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
Basket-devel mailing list
Basket-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/basket-devel

Reply via email to