Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

net::z3950::simple2zoom(3pm) [debian man page]

Net::Z3950::Simple2ZOOM(3pm)				User Contributed Perl Documentation			      Net::Z3950::Simple2ZOOM(3pm)

NAME
Net::Z3950::Simple2ZOOM - Gateway between Z39.50 and SRU/SRW SYNOPSIS
use Net::Z3950::Simple2ZOOM; $s2z = new Net::Z3950::Simple2ZOOM("somefile.xml"); $s2z->launch_server("someServer", @ARGV); DESCRIPTION
The "Net::Z3950::Simple2ZOOM" module provides all the application logic of a generic "Swiss Army Gateway" between Z39.50 and SRU. It is used by the "simple2zoom" program, and there is probably no good reason to make any other program to use it. For that reason, this library-level documentation is more than usually terse. The library has only two public entry points: the "new()" constructor and the "launch_server()" method. The synopsis above shows how they are used: a Simple2ZOOM object is created using "new()", then the "launch_server()" method is invoked on it to -- get ready for a big surprise here -- launch the server. (In fact, this synopsis is essentially the whole of the code of the "simple2zoom" program. All the work happens inside the library.) METHODS
new($configFile) $s2z = new Net::Z3950::Simple2ZOOM("somefile.xml"); Creates and returns a new Simple2ZOOM object, configured according to the XML file $configFile that is the only argument. The format of this file is described in "Net::Z3950::Simple2ZOOM::Config". launch_server($label, @ARGV) $s2z->launch_server("someServer", @ARGV); Launches the Simple2ZOOM server: this method never returns. The $label string is used in logging, and the @ARGV vector of command-line arguments is interpreted by the YAZ backend server as described at http://www.indexdata.dk/yaz/doc/server.invocation.tkl SEE ALSO
The "simple2zoom" program. The "Net::Z3950::Simple2ZOOM::Config" manual for the configuration-file format. The "Net::Z3950::SimpleServer" module. The "ZOOM" module (in the "Net::Z3950::ZOOM" distribution). AUTHOR
Sebastian Hammer <quinn@indexdata.com> Mike Taylor <mike@indexdata.com> COPYRIGHT AND LICENCE
Copyright (C) 2007 by Index Data. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available. perl v5.12.4 2009-04-08 Net::Z3950::Simple2ZOOM(3pm)

Check Out this Related Man Page

GRS1(3pm)						User Contributed Perl Documentation						 GRS1(3pm)

NAME
Net::Z3950::Record::GRS1 - Perl package used to encode GRS-1 records. SYNOPSIS
use Net::Z3950::GRS1; my $a_grs1_record = new Net::Z3950::Record::GRS1; my $another_grs1_record = new Net::Z3950::Record::GRS1; $a_grs1_record->AddElement($type, $value, $content); $a_grs1_record->Render(); DESCRIPTION
This Perl module helps you to create and manipulate GRS-1 records (generic record syntax). So far, you have only access to three methods: new Creates a new GRS-1 object, my $grs1 = new Net::Z3950::GRS1; AddElement Lets you add entries to a GRS-1 object. The method should be called this way, $grs1->AddElement($type, $value, $which, $content); where $type should be an integer, and $value is free text. The $which argument should contain one of the constants listed in Appendix A. Finally, $content contains the "thing" that should be stored in this entry. The structure of $content should match the chosen element data type. For $which == Net::Z3950::GRS1::ElementData::String; $content should be some kind of scalar. If on the other hand, $which == Net::Z3950::GRS1::ElementData::Subtree; $content should be a GRS1 object. Render This method digs through the GRS-1 data structure and renders the record. You call it this way, $grs1->Render(); If you want to access the rendered record through a variable, you can do it like this, my $record_as_string; $grs1->Render(POOL => $record_as_string); If you want it stored in a file, Render should be called this way, $grs1->Render(FILE => 'record.grs1'); When no file name is specified, you can choose to stream the rendered record, for instance, $grs1->Render(HANDLE => *STDOUT); ## or $grs1->Render(HANDLE => *STDERR); ## or $grs1->Render(HANDLE => *MY_HANDLE); Hash2grs This method converts a hash into a GRS-1 object. Scalar entries within the hash are converted into GRS-1 string elements. A hash entry can itself be a reference to another hash. In this case, the new referenced hash will be converted into a GRS-1 subtree. The method is called this way, $grs1->Hash2grs($href, $mapping); where $href is the hash to be converted and $mapping is referenced hash specifying the mapping between keys in $href and (type, value) pairs in the $grs1 object. The $mapping hash could for instance look like this, my $mapping = { title => [2, 1], author => [1, 1], issn => [3, 1] }; If the $grs1 object contains data prior to the invocation of Hash2grs, the new data represented by the hash is simply added. APPENDIX A
These element data types are specified in the Z39.50 protocol: Net::Z3950::GRS1::ElementData::Octets Net::Z3950::GRS1::ElementData::Numeric Net::Z3950::GRS1::ElementData::Date Net::Z3950::GRS1::ElementData::Ext Net::Z3950::GRS1::ElementData::String <--- Net::Z3950::GRS1::ElementData::TrueOrFalse Net::Z3950::GRS1::ElementData::OID Net::Z3950::GRS1::ElementData::IntUnit Net::Z3950::GRS1::ElementData::ElementNotThere Net::Z3950::GRS1::ElementData::ElementEmpty Net::Z3950::GRS1::ElementData::NoDataRequested Net::Z3950::GRS1::ElementData::Diagnostic Net::Z3950::GRS1::ElementData::Subtree <--- Only the '<---' marked types are so far supported in this package. AUTHOR
Anders Sonderberg Mortensen <sondberg@indexdata.dk> Index Data ApS, Copenhagen, Denmark. 2001/03/09 SEE ALSO
Specification of the GRS-1 standard, for instance in the Z39.50 protocol specification. perl v5.14.2 2011-08-09 GRS1(3pm)
Man Page