
SADI::Simple::ServiceDescription - A module that describes a SADI web service.

use SADI::Simple::ServiceDescription;
# create a new blank SADI service instance object
my $data = SADI::Simple::ServiceDescription->new ();
# create a new primed SADI service instance object
$data = SADI::Simple::ServiceDescription->new (
ServiceName => "helloworld",
ServiceType => "http://someontology.org/services/sometype",
InputClass => "http://someontology.org/datatypes#Input1",
OutputClass => "http://someontology.org/datatypes#Output1",
Description => "the usual hello world service",
UniqueIdentifier => "urn:lsid:myservices:helloworld",
Authority => "helloworld.com",
Authoritative => 1,
Provider => 'myaddress@organization.org',
ServiceURI => "http://helloworld.com/cgi-bin/helloworld.pl",
URL => "http://helloworld.com/cgi-bin/helloworld.pl",
SignatureURL =>"http://foo.bar/myServiceDescription",
);
# get an RDF representation of the service description
my $rdf = $data->getServiceInterface;
# get the service name
my $name = $data->ServiceName;
# set the service name
$data->ServiceName($name);
# get the service type
my $type = $data->ServiceType;
# set the service type
$data->ServiceType($type);
# get the input class URI
my $input_class = $data->InputClass;
# set the input class URI
$data->InputClass($input_class);
# get the output class URI
my $output_class = $data->OutputClass;
# set the output class URI
$data->OutputClass($input_class);
# get the description
my $desc = $data->Description;
# set the description
$data->Description($desc);
# get the unique id
my $id = $data->UniqueIdentifier;
# set the unique id
$data->UniqueIdentifier($id);
# get the authority
my $auth = $data->Authority;
# set the authority
$data->Authority($auth);
# get the service provider URI
my $uri = $data->Provider;
# set the service provider URI
$data->Provider($uri);
# get the service URI
my $uri = $data->ServiceURI;
# set the service URI
$data->ServiceURI($uri);
# get the service URL
my $url = $data->URL;
# set the service URL
$data->URL($url);
# get the signature url
my $sig = $data->SignatureURL;
# set the signature url
$data->SignatureURL($sig);
=head1 DESCRIPTION
An object representing a SADI service signature.

Ben Vandevalk (ben [dot] vvalk [at] gmail [dot] com) Edward Kawas (edward [dot] kawas [at] gmail [dot] com)

Details are in SADI::Base. Here just a list of them (additionally to the attributes from the parent classes)
A name for the service.
Our SADI service type.
The URI to the input class for our SADI service.
The URI to the output class for our SADI service.
A description for our SADI service.
A unique identifier (like an LSID, etc) for our SADI service.
The service provider URI for our SADI service.
The service URI for our SADI service.
The URL to our SADI service.
The email address of the service provider. Note: This method throws an exception if the address is syntactically invalid!.
Whether or not the provider of the SADI service is an authority over the data. This value must be a boolean value. True values match =~ /true|\+|1|yes|ano/. All other values are false.
Defaults to 1;
The format of the service. More than likely, it will be 'sadi' if it is a SADI web service.
A url to the SADI service signature.