BIASDISTSPHERICAL
The BIASDISTSPHERICAL
field operator works in a similar way to the BIAS
field operator. It allows you to bias the score of results at query time according to the proximity of the specified field to a particular location, specified using a latitude and longitude value.
TIP: If your document location fields contain regions (in Well-known text POLYGON format), the BIASDISTSPHERICAL
operator calculates distances from the geometric center of the region.
Specify BIASDISTSPHERICAL
in the format:
FieldText=BIASDISTSPHERICAL{lat,long,range,percentage}:LOCATION
where:
lat
|
is the latitude. Specify latitude positions south of the equator as negative. |
long
|
is the longitude. Specify longitude positions west of the Greenwich Meridian as negative. |
range
|
is the distance in kilometers from the specified coordinates. If the fields contain the coordinates of a location that is within this distance of the specified coordinates, the results weight increases or decreases according to the specified percentage. |
percentage
|
is a percentage in the range –100 to 100. If the value of the field is within the specified range, the score of the result increases or decreases according to how close the value is to the specified optimum. |
LOCATION
|
The document field or fields that contain the location value. You can use one of the following options to specify location fields:
|
For example:
FieldText=BIASDISTSPHERICAL{52.2,0.1,100,7}:LAT:LONG
FieldText=BIASDISTSPHERICAL{52.2,0.1,100,7}:LOCATION
In these examples, all documents within 100 kilometers of the point (lat,long)=(52.2,0.1)
are given a relevance boost. The maximum boost of 7
percent is given to documents at the given point. The boost decreases linearly down to 0 boost at 100 kilometers.
In the first example, the location data is stored in two document fields, LAT
and LONG
. In the second example, the location data is stored in a single LOCATION
field.