X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=doc%2Fintroduction.xml;h=06f69600873187a848295c589291effb2483a347;hb=771f74b330f0c55e570866efcd0bc20350412853;hp=0f39ec994c376445b1fc9eb8c4648bf0145a672c;hpb=dd8372e3f27c68a0410f13044dd184ccde8ca243;p=idzebra-moved-to-github.git diff --git a/doc/introduction.xml b/doc/introduction.xml index 0f39ec9..06f6960 100644 --- a/doc/introduction.xml +++ b/doc/introduction.xml @@ -1,27 +1,29 @@ + Introduction Overview - The Zebra system is a fielded free-text indexing and retrieval engine with a - Z39.50 frontend. You can use any commercial or freeware Z39.50 client - to access data stored in Zebra. - - - - The Zebra server is our first step towards the development of a fully - configurable, open information system. Eventually, it will be paired - off with a powerful Z39.50 client to support complex information - management tasks within almost any application domain. We're making - the server available now because it's no fun to be in the open - information retrieval business all by yourself. We want to allow - people with interesting data to make their things - available in interesting ways, without having to start out - by implementing yet another protocol stack from scratch. - - + The + + Zebra + server is a high-performance, general-purpose structured text + indexing and retrieval engine. It reads structured records in a + variety of input formats (eg. email, XML, MARC) and allows access + to them through exact boolean search expressions and + relevance-ranked free-text queries. + + + + Zebra supports large databases (more than ten gigabytes of data, + tens of millions of records). It supports incremental, safe + database updates on live systems. You can access data stored in + Zebra using a variety of Index Data tools (eg. YAZ and PHP/YAZ) as + well as commercial and freeware Z39.50 clients and toolkits. + + This document is an introduction to the Zebra system. It will tell you how to compile the software, and how to prepare your first database. @@ -30,9 +32,13 @@ - If you find the software interesting, you should join the support - mailing-list by sending email to - zebra-request@indexdata.dk. + + If you find the software interesting, you should visit the + + Zebra web site, where you can join the + + mailing-list + by sending email to @@ -41,76 +47,85 @@ Features - This is a list of some of the most important features of the + This is an overview of some of the most important features of the system. - + - - - Supports updating - records can be added and deleted without - rebuilding the index from scratch. - The update procedure is tolerant to crashes or hard interrupts - during register updating - registers can be reconstructed following - a crash. - Registers can be safely updated even while users are accessing - the server. - - - - Supports large databases - files for indices, etc. can be automatically partitioned over multiple disks. - + - Supports arbitrarily complex records - base input format is an SGML-like syntax which allows nested (structured) data elements, as well as variant forms of data. - + + + + Robust updating - records can be added and deleted without + rebuilding the index from scratch. + The update procedure is tolerant to crashes or hard interrupts + during register updating - registers can be reconstructed following + a crash. + Registers can be safely updated even while users are accessing + the server. + + + - Supports random storage formats. A system of input filters driven by regular expressions allows you to easily process most ASCII-based - data formats. SGML, ISO2709 (MARC), and raw text are also supported. - + data formats. SGML, XML, ISO2709 (MARC), and raw text are also + supported. - - + + Supports boolean queries as well as relevance-ranking (free-text) searching. Right truncation and masking in terms are supported, as well as full regular expressions. - + + + + Can import the data into Zebras own storage, or just refer to + external files (good for building indexes of "live" + collections). + + + - Supports multiple concrete syntaxes for record exchange (depending on the configuration): GRS-1, SUTRS, - ISO2709 (*MARC). Records can be mapped between record syntaxes and - schema on the fly. - + XML, ISO2709 (*MARC). Records can be mapped between record syntaxes + and schema on the fly. - - + + Supports approximate matching in registers (ie. spelling mistakes, etc). - + + + + + + Zebra is written in portable C, so it runs on most Unix-like systems + as well as Windows NT - a binary distribution for Windows NT is available. @@ -119,86 +134,52 @@ - Protocol support: + Z39.50 protocol support: - - + - - Protocol facilities: Init, Search, Retrieve, Browse and Sort. - + Protocol facilities: Init, Search, Retrieve, Delete, Browse and Sort. + - Piggy-backed presents are honored in the search-request. - + - Named result sets are supported. - - Easily configured to support different application profiles, with tables for attribute sets, tag sets, and abstract syntaxes. Additional tables control facilities such as element mappings to different schema (eg., GILS-to-USMARC). - + - Complex composition specifications using Espec-1 are partially supported (simple element requests only). - + - Element Set Names are defined using the Espec-1 capability of the system, and are given in configuration files as simple element requests (and possibly variant requests). - - - - - - - Some variant support (not fully implemented yet). - - - - - - - Using the YAZ toolkit for the protocol implementation, the - server can utilise a plug-in XTI/mOSI implementation (not included) to - provide SR services over an OSI stack, as well as Z39.50 over TCP/IP. - - - - - Zebra runs on most Unix-like systems as well as Windows NT - a binary - distribution for Windows NT is forthcoming - so far, the installation - requires MSVC++ to compile the system (we use version 5.0). - - - - + @@ -211,60 +192,44 @@ These are some of the plans that we have for the software in the near and far future, approximately ordered after their relative importance. - Items marked with an - asterisk will be implemented before the - last beta release. - - - *Complete the support for variants. - - - *Finalize the data element include facility - to support multimedia data elements in records. + Improved support for XML in search and retrieval. Eventually, + the goal is for Zebra to pull double duty as a flexible + information retrieval engine and high-performance XML + repository. - Add more sophisticated relevance ranking mechanisms. - Add support for soundex and stemming. - Add relevance feedback support. + Access to search engine through SOAP/RPC API to allow the + construction of applications without requiring Z39.50 tools. - Complete EXPLAIN support. + Finalisation, documentation of the Zebra API. Consider + exposing the API through SOAP as well (allowing updates, + database management). - Add support for very large records by implementing segmentation and/or - variant pieces. + Improved free-text searching. We're first and foremost octet jockeys and + we're actively looking for organisations or people who'd like + to contribute experience in relevance ranking and text + searching. - - - Support the Item Update extended service of the protocol. - - - - - - We want to add a management system that allows you to - control your databases and configuration tables from a graphical - interface. - -