Xapian
Developer(s) | xapian.org |
---|---|
Stable release | 1.4.25
/ 8 March 2024[1] |
Repository | |
Written in | C++ |
Operating system | Cross-platform |
Type | Search and index API. |
License | GNU General Public License |
Website | xapian |
Xapian is a free and open-source probabilistic information retrieval library, released under the GNU General Public License (GPL).[2] It is a full-text search engine library for programmers.
It is written in C++, with bindings to allow use from Perl, Python (2 and 3), PHP (5 and 7), Java, Tcl, C#, Ruby, Lua, Erlang, Node.js and R.[1][3] Xapian is highly portable and runs on Linux, OS X, FreeBSD, NetBSD, OpenBSD, Solaris, HP-UX, AIX, Windows, OS/2[4][2] and Hurd,[5][6] as well as Tru64.[citation needed] Xapian grew out of the Muscat search engine, written by Dr. Martin F. Porter at the University of Cambridge.[7] The first official release of Xapian was version 0.5.0 on September 20, 2002.[8]
Xapian allows developers to add advanced indexing and search facilities to their own applications. Organisations and projects using Xapian include the Library of the University of Cologne, Debian, Die Zeit, MoinMoin, and One Laptop per Child.[9]
Features[2]
- Supports Unicode 9.0 (including codepoints beyond the BMP) and stores indexed text in UTF-8.
- Transactions: if database update fails in the middle of a transaction, the database is guaranteed to remain in a consistent state.
- Simultaneous search and update, with new documents being immediately visible.
- Support for large databases: Xapian has been proven to scale to hundreds of millions of documents.
- Accurate probabilistic ranking: more relevant documents are listed first.
- Phrase and proximity searching.
- Relevance feedback, which improves ranking and can expand a query, find related documents, categorise documents etc.
- Structured Boolean queries, e.g. "race AND condition NOT horse"
- Wildcard search, e.g. "wiki*"
- Spelling correction
- Synonyms
- Omega, a packaged solution for adding a search engine to a web site or intranet. Omega can easily be extended and adapted to fit changing requirements.
GUI front-ends
See also
References
- ^ a b "The Xapian Project". Retrieved 2020-09-02.
- ^ a b c "The Xapian Project : Features". Retrieved 2018-03-31.
- ^ RXapian
- ^ "Version 1.0.6 of Xapian and Omega". freshmeat.net. Archived from the original on 2011-06-12. Retrieved 2018-03-31.
- ^ Debian built success report for GNU Hurd[permanent dead link ]
- ^ "Debian -- Package Search Results -- xapian". Retrieved 2018-03-31.
- ^ "The Xapian Project: History". Retrieved 2022-04-10.
- ^ "Xapian Core NEWS". Retrieved 2022-04-10.
- ^ "Xapian Users". Retrieved 2018-03-31.