Metadata::SOIF - SOIF object metadata class
use Metadata::SOIF
...
$i=new Metadata::SOIF;
$i->set('element1', [qw(v1 v2 v3)]);
$i->set('element2', 'v2');
my $val=$i->get('element2);
for my $v ($i->get('element1') {
...
}
...
The Metadata::SOIF class supports SOIF objects metadata using the Metadata::Base
class and customises it for SOIF objects where element names have
variants to represent to sub-values.
SOIF was developed by the Harvest project -- the Structured
Objects Interchange Format -- to be used for distributed resource discovery.
See the Harvest Project home page at http://harvest.transarc.com/ for more
details.
- new [OPTIONS]
- An optional hash of options can be given to the constructor to set various
options. There are currently two Metadata::SOIF options
defined:
- DEBUG
- This class has a separate debug class / object method that works in
the same fashion as the Metadata::Base method debug. Setting
it here also sets the debugging on the base Metadata::Base object
too.
- SPLIT
- In the read method, split the SOIF values on newlines to give
multiple subvalues (default off).
The methods here describe the differences from the Metadata::Base class methods.
- template_type [TEMPLATE TYPE]
- The template type of the metadata can be set by this method if an
TEMPLATE TYPE is given. The old value is returned when it is set or
returned when this method is called with no arguments.
- url [URL]
- The URL of the metadata can be set by this method if an URL is
given. The old value is returned when it is set or returned when this
method is called with no arguments.
- read HANDLE, [URL]
- Implements reading a single SOIF object from the given HANDLE.
Optionally allows the setting of the SOIF URL for the object in
preference for the one read from the HANDLE
- format [URL]
- Returns a formatted version of the SOIF object suitable for writing to a
file (and reading in with the read method). Optionally allows the
setting of the object URL to use in formatting.
By Dave Beckett <D.J.Beckett@ukc.ac.uk>.
Copyright 1997 Dave Beckett. All rights reserved.
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
Hey! The above document had some coding errors, which are explained
below:
- Around line 252:
- You forgot a '=back' before '=head1'
- Around line 283:
- =back doesn't take any parameters, but you said =back 4