$oSoapClient = new SoapClient($sWsdlUri, array('trace' => 1, 'classmap' => $aSOAPMapping));
try {
    // The most simple service, returning a string
    //
    $sServerVersion = $oSoapClient->GetVersion();
    echo "<p>GetVersion() returned <em>{$sServerVersion}</em></p>";
    // More complex ones, returning a SOAPResult structure
    // (run the page to know more about the returned data)
    //
    $oRes = $oSoapClient->CreateIncidentTicket('admin', 'admin', 'Email server down', 'HW found shutdown', null, new SOAPExternalKeySearch(array(new SOAPSearchCondition('name', 'Demo'))), new SOAPExternalKeySearch(array(new SOAPSearchCondition('name', 'NW Management'))), new SOAPExternalKeySearch(array(new SOAPSearchCondition('name', 'Troubleshooting'))), '', new SOAPExternalKeySearch(array(new SOAPSearchCondition('name', 'NW support'))), array(new SOAPLinkCreationSpec('Device', array(new SOAPSearchCondition('name', 'switch01')), array()), new SOAPLinkCreationSpec('Server', array(new SOAPSearchCondition('name', 'dbserver1.demo.com')), array())), '1', '1');
    echo "<p>CreateIncidentTicket() returned:\n";
    echo "<pre>\n";
    print_r($oRes);
    echo "</pre>\n";
    echo "</p>\n";
    $oRes = $oSoapClient->SearchObjects('admin', 'admin', 'SELECT URP_Profiles');
    echo "<p>SearchObjects() returned:\n";
    if ($oRes->status) {
        $aResults = $oRes->result;
        echo "<table>\n";
        // Header made after the first line
        echo "<tr>\n";
        foreach ($aResults[0]->values as $aKeyValuePair) {
            echo "   <th>" . $aKeyValuePair->key . "</th>\n";
        }
        echo "</tr>\n";
        foreach ($aResults as $iRow => $aData) {
            echo "<tr>\n";
            foreach ($aData->values as $aKeyValuePair) {
                echo "   <td>" . $aKeyValuePair->value . "</td>\n";
            }