NAME

MOBY::Adaptor::moby::impl::FetaQueryAdaptor.pm - FetaQueryAdaptor


DESCRIPTION

Todo

_queryServiceInstanceHash

 Title     :    _queryServiceInstanceHash
 Usage     :    my $un = $API->_queryServiceInstanceHash($xml)
 Function  :    Parses the FETA response XML and creates a hashref of a services properties
 Args      :    FETA response XML =>               => String
 Returns   :    hashref:
                                {service_instance_id               => Integer, 
                                category                                           => String, 
                                servicename                                        => String, 
                                service_type_uri                           => String, 
                                authority.authority_uri            => String, 
                                url                                                        => String, 
                                service_instance.contact_email => String, 
                                authoritative                              => Integer, 
                                description                                        => String, 
                                signatureURL                               => String,
                                lsid                                               => String}

_querySimpleInputHash

 Title     :    _querySimpleInputHash
 Usage     :    my $un = $API->_querySimpleInputHash($xml)
 Function  :    
 Args      :    FETA response xml => String,
 Returns   :    listref of hashrefs:
                                [{object_type_uri                => String,
                        namespace_type_uris      => String,
                        article_name             => String,
                        service_instance_id      => Integer}, ...]
=cut

sub querySimpleInputHash {
my ($inputString) = @_;
my %qsiHash;
my $parser = XML::LibXML->new();
my $fetaDom = $parser->parse_string($inputString);
my $nodes = $fetaDom->getElementsByTagName('operationInputs/parameter');

#<parameter >
#<parameterName>articleName1</parameterName>
#<isConfigurationParameter>false</isConfigurationParameter>
#<semanticType>http://biomoby.org/RESOURCES/MOBY-S/Objects#DNASequence
#<transportDataType>String</transportDataType>
#<collectionSemanticType>Simple</collectionSemanticType>
#</parameter>

}

_querySimpleOutputHash

 Title     :    _querySimpleOutputHash
 Usage     :    my $un = $API->_querySimpleOutputHash($xml)
 Function  :    Parses the FETA response xml and creates a hashref describing the output simples
 Args      :    FETA response xml => String,
 Returns   :    listref of hashrefs:
                                [{object_type_uri                => String,
                        namespace_type_uris      => String,
                        article_name             => String,
                        service_instance_id      => Integer}, ...]
 Notes     :    Only allows querying by lsid or type term, so service_instance_id is retrieved from lsid or term

_queryCollectionInputHash

 Title     :    _queryCollectionInputHash
 Usage     :    my $un = $API->_queryCollectionInputHash($xml)
 Function  :    get the collection input information for a given service from the FETA response XML
 Args      :    FETA response xml => String,
 Returns   :    listref of hashrefs:
                [{collection_input_id => Integer
                article_name        => String}, ...]
                one hashref for each collection that service consumes

_queryCollectionOutputHash

 Title     :    _queryCollectionOutputHash
 Usage     :    my $un = $API->_queryCollectionOutputHash($xml)
 Function  :    get the collection output information for a given service from the FETA response XML
 Args      :    FETA response xml => String,
 Returns   :    listref of hashrefs:
                [{collection_output_id => Integer
                article_name        => String}, ...]
                one hashref for each collection that service consumes