Xesam
Encyclopedia
Xesam is a specification promoted by freedesktop.org
Freedesktop.org
freedesktop.org is a project to work on interoperability and shared base technology for free software desktop environments for the X Window System on Linux and other Unix-like operating systems. It was founded by Havoc Pennington from Red Hat in March 2000.The organisation focuses on the user....

 which aims to provide a unified framework for desktop search
Desktop search
Desktop search is the name for the field of search tools which search the contents of a user's own computer files, rather than searching the Internet...

. It defines both the API provided by services
Daemon (computer software)
In Unix and other multitasking computer operating systems, a daemon is a computer program that runs as a background process, rather than being under the direct control of an interactive user...

, and the protocol to query
Query language
Query languages are computer languages used to make queries into databases and information systems.Broadly, query languages can be classified according to whether they are database query languages or information retrieval query languages...

 them.

History

Xesam was founded in February 2007 by Mikkel Kamstrup Erlandsen, originally under the name Wasabi, then changed due to a trademark conflict with Wasabi Systems, Inc. Various free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 projects participated in defining the specification, the two most notable of which were Strigi
Strigi
Strigi is a desktop search daemon, which is operating system-independent and desktop-independent. Strigi was initiated by Jos van den Oever. Strigi's goals are to be fast, use a small amount of RAM, and use flexible backends and plug-ins. A benchmark as of January 2007 showed that Strigi is faster...

 and Beagle
Beagle (software)
Beagle is a search system for Linux and other such modern Unix-like systems, enabling the user to search documents, chat logs, email and contact lists in a similar way to Spotlight in Mac OS X, and Windows Search or Google Desktop under Linux or Microsoft Windows...

..

After a long period of gestation, stable release 1.0 was announced on the 2nd of May, 2009.

Details

The Xesam API is built upon D-Bus
D-Bus
In computing, D-Bus is a simple inter-process communication open-source system for software applications to communicate with one another. Heavily influenced by KDE2–3's DCOP system, D-Bus has replaced DCOP in the KDE 4 release. An implementation of D-Bus supports most POSIX operating...

 inter-process communication, which permits applications to maintain a separation between servers and clients and to allow either to be replaced without requiring a modification to the other. Thus different front-ends can easily communicate with the same Xesam implementation (for example, both via KDE
KDE
KDE is an international free software community producing an integrated set of cross-platform applications designed to run on Linux, FreeBSD, Microsoft Windows, Solaris and Mac OS X systems...

 and GNOME
GNOME
GNOME is a desktop environment and graphical user interface that runs on top of a computer operating system. It is composed entirely of free and open source software...

) and be interoperable with different environments.

Requests from clients to servers are delivered in a XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....

 format, which fields are described by the defined ontology
Ontology
Ontology is the philosophical study of the nature of being, existence or reality as such, as well as the basic categories of being and their relations...

. Two different kind of queries are in place: the Query Language, which offers a more granular description for matching files, and a User Query Language, which offers a more restricted set of search criteria but may be written directly by the user without further elaborations.

Communications defined by the API are mostly asyncronous, to grant client implementations (above all, graphic clients
Graphical user interface
In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

) to not be blocked while the search is in execution.

See also

  • Desktop search
    Desktop search
    Desktop search is the name for the field of search tools which search the contents of a user's own computer files, rather than searching the Internet...

  • FreeDesktop.org
    Freedesktop.org
    freedesktop.org is a project to work on interoperability and shared base technology for free software desktop environments for the X Window System on Linux and other Unix-like operating systems. It was founded by Havoc Pennington from Red Hat in March 2000.The organisation focuses on the user....

  • NEPOMUK
    NEPOMUK (framework)
    NEPOMUK is an open-source software specification that is concerned with the development of a social semantic desktop that enriches and interconnects data from different desktop applications using semantic metadata stored as RDF...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK