public function getAnnotations($p_array)
 {
     global $wgServer, $wgScript, $smwgWebserviceUser, $smwgWebservicePassword, $smwgDeployVersion;
     $client = TSConnection::getConnector();
     $client->connect();
     try {
         global $smwgTripleStoreGraph;
         $title = str_replace($wgServer . $wgScript, '', $p_array[0]);
         if ($title[0] == '/') {
             $title = substr($title, 1);
         }
         $title = Title::newFromURL($title);
         $instanceURI = TSHelper::getUriFromTitle($title);
         // actually limit and offset is not used
         $limit = isset($p_array[1]) && is_numeric($p_array[1]) ? $p_array[1] : 500;
         $partition = isset($p_array[2]) && is_numeric($p_array[2]) ? $p_array[2] : 0;
         $offset = $partition * $limit;
         $metadata = isset($p_array[3]) ? $p_array[3] : false;
         $metadataRequest = $metadata != false ? "|metadata={$metadata}" : "";
         $response = $client->query("SELECT ?p ?o WHERE { <{$instanceURI}> ?p ?o. }", "limit={$limit}|offset={$offset}{$metadataRequest}");
         $annotations = array();
         $this->parseAnnotations($response, $annotations);
     } catch (Exception $e) {
         return "Internal error: " . $e->getMessage();
     }
     return SMWOntologyBrowserXMLGenerator::encapsulateAsAnnotationList($annotations, Title::newFromText("dummy"));
 }