$client = new SoapClient("main.wsdl"); // load owl file in reasoner $id = $client->generateID(); $state = $client->getState($id); var_dump($state); echo 'STATE END'; $ksID = $client->addKnowledgeSource($id, "owlfile", $ontology); $rID = $client->setReasoner($id, "owlapi"); // create a learning problem $posExamples = array('http://localhost/foo#heinrich', 'http://localhost/foo#alfred', 'http://localhost/foo#heinz', 'http://localhost/foo#hans', 'http://localhost/foo#alex'); $negExamples = array('http://localhost/foo#jan', 'http://localhost/foo#markus', 'http://localhost/foo#susi', 'http://localhost/foo#anna', 'http://localhost/foo#maria', 'http://localhost/foo#katrin', 'http://localhost/foo#johanna', 'http://localhost/foo#mandy', 'http://localhost/foo#miriam', 'http://localhost/foo#hanna'); $client->setLearningProblem($id, "posNegLPStandard"); $client->setPositiveExamples($id, $posExamples); $client->setNegativeExamples($id, $negExamples); // choose refinement operator approach $client->setLearningAlgorithm($id, "refinement"); $client->initAll($id); // start learning process in DL-Learner $client->learnThreaded($id); $sleeptime = 2; $seconds = 0; do { // sleep a while sleep($sleeptime); // see what we have learned so far $concept = $client->getCurrentlyBestConcept($id); $running = $client->isAlgorithmRunning($id); $seconds += $sleeptime; if ($seconds == 10) { $sleeptime = 5; }
*/ include 'Utilities.php'; // load WSDL files (has to be done due to a Java web service bug) ini_set("soap.wsdl_cache_enabled", "0"); $wsdluri = "http://localhost:8181/services?wsdl"; // Utilities::loadWSDLfiles($wsdluri); // specifiy ontology $ontology = 'file:' . realpath("../../examples/swore/swore.rdf"); // create DL-Learner client $client = new SoapClient("main.wsdl"); // $client = new SoapClient($wsdluri); $id = $client->generateID(); $ksID = $client->addKnowledgeSource($id, "owlfile", $ontology); $rID = $client->setReasoner($id, "fastInstanceChecker"); // create a learning problem $lp = $client->setLearningProblem($id, "classLearning"); $client->applyConfigEntryURL($id, $lp, "classToDescribe", "http://ns.softwiki.de/req/CustomerRequirement"); $la_id = $client->setLearningAlgorithm($id, "celoe"); $client->applyConfigEntryInt($id, $la_id, "maxExecutionTimeInSeconds", 5); $client->initAll($id); // learn concept echo 'start learning ... '; // get only concept // $concept = $client->learn($id, "manchester"); // get concept and additional information in JSON syntax $concept = $client->learnDescriptionsEvaluated($id); echo 'OK <br />'; // echo htmlspecialchars($concept); echo 'solution: <pre>'; var_dump(json_decode($concept, true)); echo '</pre>';
// Utilities::loadWSDLfiles($wsdluri); // specifiy ontology $ontology = 'file:' . realpath("../../examples/family/father.owl"); // create DL-Learner client $client = new SoapClient("main.wsdl"); // $client = new SoapClient($wsdluri); // load owl file in DIG reasoner (you need a running DIG reasoner) $id = $client->generateID(); $ksID = $client->addKnowledgeSource($id, "owlfile", $ontology); $rID = $client->setReasoner($id, "fastInstanceChecker"); // create a learning problem $posExamples = array('http://example.com/father#stefan', 'http://example.com/father#markus', 'http://example.com/father#martin'); $negExamples = array('http://example.com/father#heinz', 'http://example.com/father#anna', 'http://example.com/father#michelle'); $client->setLearningProblem($id, "posNegLPStandard"); $client->setPositiveExamples($id, $posExamples); $client->setNegativeExamples($id, $negExamples); // choose refinement operator approach $la_id = $client->setLearningAlgorithm($id, "refexamples"); // you can add the following to apply a config option to a component, e.g. ignore a concept $client->applyConfigEntryStringArray($id, $la_id, "ignoredConcepts", array('http://example.com/father#female')); $client->initAll($id); // learn concept echo 'start learning ... '; // get only concept // $concept = $client->learn($id, "manchester"); // get concept and additional information in JSON syntax $concept = $client->learnDescriptionsEvaluatedLimit($id, 5); echo 'OK <br />'; echo 'solution: <pre>'; var_dump(json_decode($concept, true)); echo '</pre>';