shared wasabi implementation
Jos van den Oever
jvdoever at gmail.com
Fri Feb 16 04:21:50 PST 2007
2007/2/16, jamie <jamiemcc at blueyonder.co.uk>:
> On Fri, 2007-02-16 at 12:14 +0800, Fabrice Colin wrote:
> > On 2/16/07, Mikkel Kamstrup Erlandsen <mikkel.kamstrup at gmail.com> wrote:
> > > Do you have any plans for a standard way of installing new filters? Wasabi
> > > could use this (as has also been mentioned on Gnomes desktop-devel-list).
> > >
> > For external filters, I have shamelessly borrowed Beagle's external-filters.xml
> > with some modifications. Built-in filters register what MIME types they support
> > when the corresponding dynamic library is loaded.
> we (tracker) would only allow use out of process stuff here - our robust
> and stable architecture performs all metadata extraction out of process
> to prevent crashes and memory leaks caused by bad data files (or buggy
> libs) - this also has the advantage of any extractor can be written in
> any language.
> Our usage would be along the lines of an app printing to stdout the
> extracted metadata in standard rdf xml format.
Strigi comes with a library and an application that is very fast and
stable for extracting data via multiple plugins simultaneously. This
has the advantage that you can use multiple analyzers on each file
with very little overhead. This mechanism is reason for the high
performance of extraction in Strigi. There is a configurable
command-line client that is comes with Strigi which you can use to
extract metadata as xml or rdf. It is completely independent of Qt or
the rest of Strigi and I encourage everybody to use and would propose
the API of these plugins up for standardization.
Search applications can choose to use the external program and parse
the xml or they can link to the libraries. I will present these
libraries at FOSDEM. If you agree we can even make them into fd.o
libraries. This is one of the parts of Strigi that is will be
stabilizing nicely in API terms. The xml output format is already
Writing plugins for this system can be done in C++, but also external
programs can be used. Any external application is necessarily much
slower than using internal code.
In addition to this, we have a configuration interface over which you
can specify the indexing behavior for your specific application. You
can e.g. choose to only extract specific fields. This will then avoid
using any plugin that does not provide this field.
I'll be talking about all of this at FOSDEM, so if you are interested
in it, drop by or browse the presentation afterwards.
> > IIUC other people have been talking about using .desktop files to
> > register filters.
> yes thats me!
> Our requirements (because we are a metadata database as well as an
> indexer) are probably much different to the others (EG we would need the
> new metadata names along with their types and properties).
> we want desktop files over xml specifically for il8n translations of
> metadata names (I assume the existing mechanisms for this are easier
> with desktop files)
> We would also use these to register new services to be indexed (EG like
> Tomboy Notes and they would specify a directory to be watched and an app
> name to use to index them)
> xdg mailing list
> xdg at lists.freedesktop.org
More information about the xdg