function testSimpleJSON() { // Load docs that are used in tests that follow parent::loadDocsJSON(parent::$client); parent::$logger->debug('testSimpleJSON'); $options = new MLPHP\Options(parent::$client, 'simpleJSON'); $options->write(); $search = new MLPHP\Search(parent::$client, 1, 3); $results = $search->retrieve('Amodei', array('options' => 'simpleJSON')); $this->assertEquals(1, $results->getTotal()); }
// Range constraint on subject $keyword = new MLPHP\RangeConstraint('subject', 'xs:string', 'true', 'subject'); $keyword->setFacetOptions(array('descending', 'frequency-order', 'limit=5')); $options->addConstraint($keyword); // Range constraint on title $title = new MLPHP\RangeConstraint('title', 'xs:string', 'false', 'title'); $options->addConstraint($title); // Range constraint on link $title = new MLPHP\RangeConstraint('link', 'xs:string', 'false', 'link', '', 'href'); $options->addConstraint($title); // Snippetting prefs $transform = new MLPHP\TransformResults('snippet'); $pref1 = new MLPHP\PreferredElement('title', ''); $pref2 = new MLPHP\PreferredElement('summary', ''); $transform->addPreferredElements(array($pref1, $pref2)); $options->setTransformResults($transform); // Metadata extracts $extracts = new MLPHP\Extracts(); $extracts->addConstraints(array('title', 'status', 'subject', 'introduced', 'link', 'session', 'abbrev')); $options->setExtracts($extracts); // Term setting //$term = new MLPHP\Term("no-results"); //$options->setTerm($term); // Write to database $optionsid = 'usbills'; $response = $options->write($optionsid); echo '<!--' . $options->read($optionsid) . '-->' . PHP_EOL; $_SESSION['options_loaded_usbills'] = TRUE; } else { echo '<!-- Search options already loaded -->' . PHP_EOL; }
function testDirectory() { parent::$logger->debug('testDirectory'); $options = new MLPHP\Options(parent::$client, 'testDirectory'); $options->write(); $search = new MLPHP\Search(parent::$client, 1, 3); $results = $search->retrieve('', array('options' => 'testDirectory', 'directory' => '/bills/110')); $this->assertEquals(6, $results->getTotal()); }
public static function setOptionsXML($client) { parent::$logger->debug('setOptions'); $options = new MLPHP\Options($client); // Range constraint on session $session = new MLPHP\RangeConstraint('session', 'xs:int', 'false', 'bill', '', 'session'); $options->addConstraint($session); // Range constraint on type $type = new MLPHP\RangeConstraint('type', 'xs:string', 'false', 'bill', '', 'type'); $options->addConstraint($type); // Range constraint on number $type = new MLPHP\RangeConstraint('number', 'xs:int', 'false', 'bill', '', 'number'); $options->addConstraint($type); // Range constraint on abbrev $type = new MLPHP\RangeConstraint('abbrev', 'xs:string', 'false', 'bill', '', 'abbrev'); $options->addConstraint($type); // Range constraint on introduced $type = new MLPHP\RangeConstraint('introduced', 'xs:string', 'false', 'introduced', '', 'date'); $options->addConstraint($type); // Range constraint on status $status = new MLPHP\RangeConstraint('status', 'xs:string', 'true', 'status'); $options->addConstraint($status); // Range constraint on subject $keyword = new MLPHP\RangeConstraint('subject', 'xs:string', 'true', 'subject'); $keyword->setFacetOptions(array('descending', 'frequency-order', 'limit=5')); $options->addConstraint($keyword); // Range constraint on title // $title = new MLPHP\RangeConstraint( // 'title', 'xs:string', 'false', 'title' // ); // $options->addConstraint($title); // Range constraint on link $title = new MLPHP\RangeConstraint('link', 'xs:string', 'false', 'link', '', 'href'); $options->addConstraint($title); // Snippetting prefs $transform = new MLPHP\TransformResults('snippet'); //$pref1 = new MLPHP\PreferredElement('title', ''); $pref2 = new MLPHP\PreferredElement('summary', ''); //$transform->addPreferredElements(array($pref1, $pref2)); $transform->addPreferredElements(array($pref2)); $options->setTransformResults($transform); // Metadata extracts $extracts = new MLPHP\Extracts(); $extracts->addConstraints(array('status', 'subject', 'introduced', 'link', 'session', 'abbrev')); $options->setExtracts($extracts); $options->setReturnSimilar('true'); $options->setReturnQuery('true'); // Term setting //$term = new MLPHP\Term("no-results"); //$options->setTerm($term); $options->write('test'); }
// Return the query $options8->setReturnResults('true'); // Return results $options8->setReturnSimilar('false'); // Return similar documents $options8->write('options8'); // Write the search options to the database echo "More options:\n\n"; // Read the options from the database and display echo htmlspecialchars($options8->read('options8')); echo "\n\n"; // Term element $options9 = new MLPHP\Options($client); // Create an Options object (passing the REST client object) $term = new MLPHP\Term('no-results'); // Create an Term object $term->setTermOptions(array('diacritic-insensitive', 'unwildcarded')); // Set a term setting $options9->setTerm($term); // Set the Term object in the options $options9->write('options9'); // Write the search options to the database // Read the options from the database and display echo "Term options:\n\n"; echo htmlspecialchars($options9->read('options9')); echo "\n\n"; // Delete the example options from the database $num = 9; for ($i = 1; $i <= $num; $i++) { $options1->delete('options' . $i); }