+ <sect1 id="zoom.scan"><title>Scsn</title>
+ <para>
+ This section describes an interface for Scan. Scan is not an
+ official part of the ZOOM model yet. The result of a scan operation
+ is the <literal>ZOOM_scanset</literal> which is a set of terms
+ returned by a target.
+ </para>
+ <synopsis>
+ ZOOM_scanset ZOOM_connection_scan (ZOOM_connection c,
+ const char *startterm);
+
+ size_t ZOOM_scanset_size(ZOOM_scanset scan);
+
+ const char * ZOOM_scanset_term(ZOOM_scanset scan, size_t pos,
+ int *occ, size_t *len);
+
+
+ void ZOOM_scanset_destroy (ZOOM_scanset scan);
+ </synopsis>
+ <para>
+ The scan set is created by function
+ <function>ZOOM_connection_scan</function> which performs a scan
+ operation on the connection and start term given.
+ If the operation was successful, the size of the scan set can be
+ retrived by a call to <function>ZOOM_scanset_size</function>.
+ Like result sets, the items are numbered 0,..size-1.
+ To obtain information about a particular scan term, call function
+ <function>ZOOM_scanset_term</function>. This function takes
+ a scan set offset <literal>pos</literal> and returns a pointer
+ to an actual term or <literal>NULL</literal> if non-present.
+ If present, the <literal>occ</literal> and <literal>len</literal>
+ are set to the number of occurrences and the length
+ of the actual term respectively.
+ A scan set may be freed by a call to function
+ <function>ZOOM_scanset_destroy</function>.
+ </para>
+ </sect1>