Re: Finding and Reminding, tech issues, 3.0 and beyond



On 15/04/10 12:32, Bastien Nocera wrote:
On Mon, 2010-04-12 at 11:31 +0100, Martyn Russell wrote:
On 10/04/10 22:10, Owen Taylor wrote:
On Sat, 2010-04-10 at 11:43 -0400, Jamie McCracken wrote:
On Fri, 2010-04-09 at 18:09 -0400, Owen Taylor wrote:
Well, certainly tracking and indexing file metadata doesn't *require*
anything as complex, or general purpose as RDF. I have some concerns
about the complexity, but as long as we don't get to the point where
understanding RDF and ontologies is a prerequisite for developing a
GNOME app, we're probably fine.

I don't think this is such a bad thing. What other choices are there?
understanding how to extract the metadata from a specific file yourself
or understanding SQL to talk directly to a database? At least SPARQL is
something in between which provides the right level of power without
exposing the DB.

And it ends up being neither. If you're manipulating file formats you
understand, or if you understand the concepts and a library does the
work for you, you're better off extracting the metadata yourself.

Are you? So if you have more than one application interested in the same data, that's still better off?

Plus what about the implementation, is it better to have n ways to extract the same data each one more/less featured/erroneous to the next or one place which does it and is maintained?

If you had a real database,

Are you suggesting SQLite is not a real database or that an application "would use" a real database to continue your point?

you could reuse what you learnt in DB classes, or
learn from any number of online resources.

Well, you have to either:

a) learn how to use some library to extract your data (or the data format itself) and then SQL and/or whatever database you want to put it into.

or

b) learn SPARQL and perhaps some 3 or 4 functions from a client library

In the end, it is much of a muchness. SQL is far from trivial to learn and each database optimises for different things. Not to mention the different versions and extensions of SQL depending on the database you use. Why would a user really care about any of that unless they were going to share their data in the first place?

I say "share" because that's quite an important feature of Tracker.

The fact that SPARQL is neither is a problem for applications

I don't agree. There is always a learning curve with whatever you choose unless you already had knowledge in the first place (which if you did, makes learning SPARQL easier).

I couldn't have come up with stuff like:
http://git.gnome.org/browse/totem/tree/src/plugins/tracker/totem-tracker-widget.c#n388

I couldn't this time last year either (and that's not a benchmark for how long it takes to learn either).

Better come up with good documentation before offering it to developers.

Well, other than the online docs we are constantly improving:

  http://library.gnome.org/devel/ontology/unstable/

There is also the actual standard we try to follow:

  http://www.semanticdesktop.org/ontologies/

If you're used to RDF of SQL, SPARQL isn't so difficult. There are also examples on the live.gnome.org wiki:

  http://live.gnome.org/Tracker/Documentation/Examples

Plus our code base is riddled with examples which have to work.

In addition to all this, we are on IRC to help too.

Bastien, if you think something else is missing, please tell us and we will try to fix it.

--
Regards,
Martyn


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]