You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

109 lines
2.6 KiB

{
"type": "search_original",
"body": {
"query": {
"bool": {
"must": [{
"match": {
"name.default": {
"query": "test",
"boost": 1,
"analyzer": "peliasQueryFullToken"
}
}
}],
"should": [{
"match": {
"phrase.default": {
"query": "test",
"analyzer": "peliasPhrase",
"type": "phrase",
"boost": 1,
"slop": 2
}
}
},{
"function_score": {
"query": {
"match": {
"phrase.default": {
"query": "test",
"analyzer": "peliasPhrase",
"type": "phrase",
"slop": 2,
"boost": 1
}
}
},
"max_boost": 20,
"score_mode": "first",
"boost_mode": "replace",
"functions": [{
"field_value_factor": {
"modifier": "log1p",
"field": "popularity",
"missing": 1
},
"weight": 1
}]
}
},{
"function_score": {
"query": {
"match": {
"phrase.default": {
"query": "test",
"analyzer": "peliasPhrase",
"type": "phrase",
"slop": 2,
"boost": 1
}
}
},
"max_boost": 20,
"score_mode": "first",
"boost_mode": "replace",
"functions": [{
"field_value_factor": {
"modifier": "log1p",
"field": "population",
"missing": 1
},
"weight": 2
}]
}
},{
"function_score": {
"query": {
"match_all": {}
},
"min_score": 1,
"boost": 5,
"max_boost": 50,
"score_mode": "sum",
"boost_mode": "multiply",
"functions": [{
"filter": {
"match": {
"source": "openstreetmap"
}
},
"weight": 5
},{
"filter": {
"match": {
"layer": "transit"
}
},
"weight": 3
}]
}
}]
}
},
"sort": [ "_score" ],
"size": 10,
"track_scores": true
}
}