public function requestOptionsToSqlConditionsProvider() { $provider = array(); # 0 $requestOptions = new RequestOptions(); $requestOptions->boundary = true; $provider[] = array($requestOptions, 'Foo', '', ' AND Foo >= '); # 1 $requestOptions = new RequestOptions(); $requestOptions->boundary = true; $requestOptions->addStringCondition('foobar', \SMWStringCondition::STRCOND_PRE); $provider[] = array($requestOptions, 'Foo', 'Bar', ' AND Foo >= AND Bar LIKE '); return $provider; }
public function requestOptionsToApplyProvider() { $provider = array(); #0 $requestOptions = new RequestOptions(); $requestOptions->boundary = true; $provider[] = array(array(new \SMWDIBlob('Foo')), $requestOptions, array(new \SMWDIBlob('Foo'))); #1 $requestOptions = new RequestOptions(); $requestOptions->addStringCondition('Foo', StringCondition::STRCOND_PRE); $provider[] = array(array(new \SMWDIBlob('Foo')), $requestOptions, array(new \SMWDIBlob('Foo'))); #2 String not match $requestOptions = new RequestOptions(); $requestOptions->addStringCondition('Bar', StringCondition::STRCOND_POST); $provider[] = array(array(new \SMWDIBlob('Foo')), $requestOptions, array()); #3 Limit $requestOptions = new RequestOptions(); $requestOptions->limit = 1; $provider[] = array(array(new \SMWDIBlob('Foo'), new \SMWDIBlob('Bar')), $requestOptions, array(new \SMWDIBlob('Foo'))); #4 ascending $requestOptions = new RequestOptions(); $requestOptions->sort = true; $requestOptions->ascending = true; $provider[] = array(array(new \SMWDIBlob('Foo'), new \SMWDIBlob('Bar')), $requestOptions, array(new \SMWDIBlob('Bar'), new \SMWDIBlob('Foo'))); #5 descending $requestOptions = new RequestOptions(); $requestOptions->sort = true; $requestOptions->ascending = false; $provider[] = array(array(new \SMWDIBlob('Foo'), new \SMWDIBlob('Bar')), $requestOptions, array(new \SMWDIBlob('Foo'), new \SMWDIBlob('Bar'))); #6 descending $requestOptions = new RequestOptions(); $requestOptions->sort = true; $requestOptions->ascending = false; $provider[] = array(array(new \SMWDINumber(10), new \SMWDINumber(200)), $requestOptions, array(new \SMWDINumber(200), new \SMWDINumber(10))); return $provider; }
/** * Filters for properties containg the given hint as substring (case-insensitive) * Returns an property list with all entities found * * @return xml string */ function filterForProperties($propertyHints) { $reqfilter = new SMWRequestOptions(); $reqfilter->sort = true; //$reqfilter->limit = MAX_RESULTS; if (count($propertyHints) == 0) { return "<propertyList isEmpty=\"true\" textToDisplay=\"" . wfMsg('smw_ob_no_properties') . "\"/>"; } foreach ($propertyHints as $hint) { $reqfilter->addStringCondition($hint, SMWStringCondition::STRCOND_MID); } $reqfilter->isCaseSensitive = false; $foundProperties = smwfGetSemanticStore()->getPropertiesWithSchemaByName($reqfilter); return SMWOntologyBrowserXMLGenerator::encapsulateAsPropertyList($foundProperties); }