-# $Id: ZOOM.pod,v 1.1 2005-11-09 11:32:12 mike Exp $
+# $Id: ZOOM.pod,v 1.2 2005-11-15 17:23:45 mike Exp $
use strict;
use warnings;
eval {
$conn = new ZOOM::Connection($host, $port)
$conn->option(preferredRecordSyntax => "usmarc");
- $rs = $conn->search_pqf($query);
+ $rs = $conn->search_pqf('@attr 1=4 dinosaur');
$n = $rs->size();
print $rs->record(0)->render();
};
Abstract API described at http://zoom.z3950.org/api/
the ZOOM module is implemented as a set of thin classes on top of the
-non-OO functions provided by the Net::Z3950::ZOOM module, which in
+non-OO functions provided by this distribution's C<Net::Z3950::ZOOM>
+module, which in
turn is a thin layer on top of the ZOOM-C code supplied as part of
Index Data's YAZ Toolkit. Because ZOOM-C is also the underlying code
that implements ZOOM bindings in C++, Visual Basic, Scheme, Ruby, .NET
API such as ZOOM is that all implementations should be compatible
anyway; but knowing that the same code is running is reassuring.)
-I<###> There is rather more to say here :-)
+The ZOOM module provides two enumerations (C<ZOOM::Error> and
+C<ZOOM::Event>), a single utility function C<diag_str()> in the C<ZOOM>
+package itself, and eight classes:
+C<ZOOM::Exception>,
+C<ZOOM::Options>,
+C<ZOOM::Connection>,
+C<ZOOM::Query>,
+C<ZOOM::ResultSet>,
+C<ZOOM::Record>,
+C<ZOOM::ScanSet>
+and
+C<ZOOM::Package>.
+Of these, the Query class is abstract, and has two concrete
+subclasses:
+C<ZOOM::Query::CQL>
+and
+C<ZOOM::Query::PQF>.
+Many useful ZOOM applications can be built using only the Connection,
+ResultSet and Record classes, as in the example code-snippet above.
+
=head1 SEE ALSO