I have built a SOAP service for the little useful PHP scripts I have built. The URL is
http://spira.zoology.gla.ac.uk/app/nusoap.
I have tested them all and they work as expected. There is a bug in one of the functions (getclassification_ncbi) which gets the classification string for NCBI so I haven't included it. The getclassification_itis is working. I haven't figured out why the NCBI classification fails it must be something in the data because the code is exactly the same.
Here is an example client code in PHP that calls the functions in the service
require_once('./lib/nusoap.php');
// Get inputs
$client = new soapclient('http://spira.zoology.gla.ac.uk/app/nusoap/tclsearchwsdl.php');
$int = array('int'=>'1818'); # AN ITIS or NCBI ID
$param = array('string'=>$_GET['string']);
$name_id = array('name_id'=>$_GET['name_id']);
// Call the functions
$result = $client->call('getName', $param);
$dot = $client->call('createDot', $param);
$itischildrendot = $client->call('getchildrendot_itis', $name_id);
$ncbichildrendot = $client->call('getchildrendot_ncbi', $name_id);
$classification = $client->call('getclassification', $param);
$name = $client->call('getNameByID', $int);
$ids = $client->call('getids', $param);
$assertions = $client->call('getassertions', $param);
$hierarchy = $client->call('gethierarchy', $param);
$synonym = $client->call('getsynonym', $param);
$vernacular = $client->call('getvernacular', $param);
// Display the results
print_r($result);
print_r($dot);
print_r($itischildrendot);
print_r($ncbichildrendot);
print_r($classification);
print_r($name);
print_r($ids);
print_r($assertions);
print_r($hierarchy);
print_r($synonym);
print_r($vernacular);
?>
I am still writing this chapter up, once it's done I'll copy more details on this here.