[Nepomuk] Nepoogle's feedback needed

Ignacio Serantes kde at aynoa.net
Sat Nov 19 15:01:40 UTC 2011


Hi,

I just released Nepoogle v0.7 and I think that it's time to call for some
feedback, actually I only received feedback from my couple and opinions
from only one person is not the best scenery to develop a good application.
If you do not know Nepoogle will simply say that is an application to
perform advanced searches in the Nepomuk database.

0.7 version has achieved a milestone because for first time Nepoogle
supports Nepomuk query engine, not the full one but
Nepomuk::Query::QueryParser(). This engine is very simple but is part of
Nepomuk API and is relevant because now Nepoogle supports two search
engines, internal and QueryParser, and two interfaces, console and gui.

Since my first efforts I learn some things about SPARQL and I'm know how to
build fast SPARQL queries so I'm ready to begin the second version of my
query engine, with parenthesis support, and I would like so much some
feedback about query language syntax. I think that I achieved some
flexibility but I'm not sure if I'm forgetting something.
With shortcuts you don't need to know about ontologies but If you have this
knowledge you can use it to build powerful queries. For example, even there
isn't exif shortcuts is easy search in exif data if you known proper
ontologies (you can view ontologies names in resource viewer tooltips):

*nexif:model:"GT-i5700" nexif:make:samsung*

and all photos taken with my old mobile are displayed or, if I'm looking
for all photos taken without flash using the Nikon D5000, I can use:

*nexif:make:"nikon" nexif:model:"D5000" nexif:flash:0*

and even simple relations could be expressed:

*nmm:director->nco:fullname:Ford*

will search for movies with a director who's full name contains the word
"Ford". Obviously this is not as easy as using shortcuts, in this case
shorcut is available so you can simply write "*director:Ford*",  but at
least Nepoogle it's not restricted to the ontologies I implemented. If you
know the ontology you can search using it.

So before I begin to write the second version of my query engine some query
language feedback are welcome. If you are interested actual syntax,
extracted from Nepoogle's help, is the next one:

query :== item [[logop] item]... | command | uri

item :== [ontology:][op]text

logop :== and | or
op :== + | - | < | <= | > | >=

ontology :== [ontitem=]ontitem[->[ontitem=]ontitem]]...
ontitem :== shortcutontology | shortontology | fullontology
shortcutontology :== actor | album | albums | altlabel | composer | contact
| contacts | creator | description | director | discnumber | episode |
fullname | genre | hastag | height | mimetype | musicpieces | movies | name
| numericrating | performer | producer | playcount | preflabel | rating |
season | setnumber | tag | title | tracknumber | tvserie | tvseries |
tvshow | type | url | usagecount | width | writer
shortontology :== prefix:name
fullontology :== http://url

text :== string | number
string :== chars | "chars" | 'chars'
number :== 0..9
chars :== any number of utf-8 characters

command :== instruction[:string]
instruction :== --actors | --albums | --audios | --composers | --contacts |
--creators | --directors | --genres | --help | --images | --movies |
--musicpieces | --performers | --producers | --quit | --tags | --tvseries |
--tvshows | --videos | --writers


On the other side there is the gui  that is not integrated with KDE,
because I lack of knowledge and time, but is quite flexible. In v0.7 I
added support to templates, for example this is the template used to
display movies information:

"<b>Title</b>: {nie:title|l|of|ol}[<br /><b>Rating</b>:
{nao:numericRating}]<br /><b>Actors</b>: {SPARQL}SELECT DISTINCT ?uri
?value WHERE { <%(uri)s> nmm:actor ?uri . ?uri nco:fullname ?value . }
ORDER BY ?value|l|s:actor{/SPARQL}[<br /><b>Description</b>:
{nie:description}]"

so customize or add new visualization formats is really easy, and even
SPARQL is supported. Sadly external configuration file is not available yet
but I will add this feature soon and, if I have time, even I will add
support to templates in the resource viewer.

I think that the best solution for Nepoogle's gui is a kio but actually I'm
more interested in queries than in interface and write a kio seems
complicated.  If there is other alternatives I can't see it so suggestions
are welcome.

Thanks for reading :).
*
*
-- 
Best wishes,
Ignacio
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/nepomuk/attachments/20111119/c06652d0/attachment.html>


More information about the Nepomuk mailing list