]> git.openstreetmap.org Git - nominatim.git/commitdiff
revert use of global penalty for a search direction
authorSarah Hoffmann <lonvia@denofr.de>
Tue, 24 Oct 2017 20:42:29 +0000 (22:42 +0200)
committerSarah Hoffmann <lonvia@denofr.de>
Tue, 24 Oct 2017 20:42:29 +0000 (22:42 +0200)
Adding a penalty to a search description because there
is a term at the beginning which looks like a country
turned out to be a bad idea as there are too many
abbreviations around that match against frequently
matched words.

lib/Geocode.php
lib/SearchDescription.php

index ae518d5137623c9e240dd6a10b116aeb03aef6b1..4072aae2f5b0db27bf39bec37961b9bc853b1772 100644 (file)
@@ -345,8 +345,6 @@ class Geocode
 
              Score how good the search is so they can be ordered
          */
-        $iGlobalRank = 0;
-
         foreach ($aPhrases as $iPhrase => $oPhrase) {
             $aNewPhraseSearches = array();
             $sPhraseType = $bIsStructured ? $oPhrase->getPhraseType() : '';
@@ -378,8 +376,7 @@ class Geocode
                                     $iToken == 0 && $iPhrase == 0,
                                     $iPhrase == 0,
                                     $iToken + 1 == sizeof($aWordset)
-                                      && $iPhrase + 1 == sizeof($aPhrases),
-                                    $iGlobalRank
+                                      && $iPhrase + 1 == sizeof($aPhrases)
                                 );
 
                                 foreach ($aNewSearches as $oSearch) {
@@ -460,7 +457,6 @@ class Geocode
                 continue;
             }
 
-            $iRank = $oSearch->addToRank($iGlobalRank);
             if (!isset($aGroupedSearches[$iRank])) {
                 $aGroupedSearches[$iRank] = array();
             }
index 56d04478c2cd540564534e7859cd95db8d446266..e949585208feef8062e5aa1924518dfbee1b49cf 100644 (file)
@@ -68,19 +68,6 @@ class SearchDescription
         return $this->iSearchRank;
     }
 
-    /**
-     * Increase the search rank.
-     *
-     * @param integer $iAddRank Number of ranks to increase.
-     *
-     * @return void
-     */
-    public function addToRank($iAddRank)
-    {
-        $this->iSearchRank += $iAddRank;
-        return $this->iSearchRank;
-    }
-
     /**
      * Make this search a POI search.
      *
@@ -187,12 +174,10 @@ class SearchDescription
      * @param bool    $bFirstPhrase True if the token is in the first phrase of
      *                              the query.
      * @param bool    $bLastToken   True if the token is at the end of the query.
-     * @param integer $iGlobalRank  Changable ranking of all searches in the
-     *                              batch.
      *
      * @return SearchDescription[] List of derived search descriptions.
      */
-    public function extendWithFullTerm($aSearchTerm, $bHasPartial, $sPhraseType, $bFirstToken, $bFirstPhrase, $bLastToken, &$iGlobalRank)
+    public function extendWithFullTerm($aSearchTerm, $bHasPartial, $sPhraseType, $bFirstToken, $bFirstPhrase, $bLastToken)
     {
         $aNewSearches = array();
 
@@ -210,12 +195,6 @@ class SearchDescription
                     $oSearch->iSearchRank += 5;
                 }
                 $aNewSearches[] = $oSearch;
-
-                // If it is at the beginning, we can be almost sure that
-                // the terms are in the wrong order. Increase score for all searches.
-                if ($bFirstToken) {
-                    $iGlobalRank++;
-                }
             }
         } elseif (($sPhraseType == '' || $sPhraseType == 'postalcode')
                   && $aSearchTerm['class'] == 'place' && $aSearchTerm['type'] == 'postcode'