Metadata::SOIF(3)

NAME
Metadata::SOIF - SOIF object metadata class

SYNOPSIS
  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') {
    ...
  }
  ...

DESCRIPTION
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.

CONSTRUCTOR

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).

METHODS
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.

SEE ALSO
Metadata::Base

AUTHOR
By Dave Beckett <D.J.Beckett@ukc.ac.uk>.

COPYRIGHT
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.