]> git.openstreetmap.org Git - nominatim.git/blobdiff - lib-php/TokenPartial.php
add index for Tiger housenumber queries
[nominatim.git] / lib-php / TokenPartial.php
index e52161cc0168953f30fed95296cef5c196c64bcb..112154b2cf59526cf8432be726a4471ceb772b9c 100644 (file)
@@ -26,6 +26,22 @@ class Partial
         return $this->iId;
     }
 
         return $this->iId;
     }
 
+    /**
+     * Check if the token can be added to the given search.
+     * Derive new searches by adding this token to an existing search.
+     *
+     * @param object  $oSearch      Partial search description derived so far.
+     * @param object  $oPosition    Description of the token position within
+                                    the query.
+     *
+     * @return True if the token is compatible with the search configuration
+     *         given the position.
+     */
+    public function isExtendable($oSearch, $oPosition)
+    {
+        return !$oPosition->isPhrase('country');
+    }
+
     /**
      * Derive new searches by adding this token to an existing search.
      *
     /**
      * Derive new searches by adding this token to an existing search.
      *
@@ -37,10 +53,6 @@ class Partial
      */
     public function extendSearch($oSearch, $oPosition)
     {
      */
     public function extendSearch($oSearch, $oPosition)
     {
-        if ($oPosition->isPhrase('country')) {
-            return array();
-        }
-
         $aNewSearches = array();
 
         // Partial token in Address.
         $aNewSearches = array();
 
         // Partial token in Address.
@@ -78,6 +90,7 @@ class Partial
             $oNewSearch->addPartialNameToken(
                 $this->iId,
                 $this->iSearchNameCount < CONST_Max_Word_Frequency,
             $oNewSearch->addPartialNameToken(
                 $this->iId,
                 $this->iSearchNameCount < CONST_Max_Word_Frequency,
+                $this->iSearchNameCount > CONST_Search_NameOnlySearchFrequencyThreshold,
                 $oPosition->getPhrase()
             );
 
                 $oPosition->getPhrase()
             );