Freebase search_api и исключая результаты по указанному типу
Кто-нибудь знает, как исключить некоторые темы с указанным типом (ами) с помощью поиска API и MQL?
Например, я пытаюсь найти все темы "Люди Voodoo" и исключить только те, которые имеют типы композиций и релизов, и отсортировать результаты по счету desc: http://tinyurl.com/3tjkb7y. Сортировка работает отлично, но я не могу найти функциональность для исключения:(Я пытаюсь использовать mql_filter: http://tinyurl.com/644xkow, но выпуски все еще там. И еще один вопрос: я вижу в параметре type_strict возможные значения: "все", "любой", "должен". Но нет значения "не" или "не в". Нужный результат можно получить любым другим способом?
1 ответ
Решение
Синтаксис, который вы ищете, является "необязательным": "запрещено". В вашем запросе это будет выглядеть так:
[{
"search": {
"query": "Voodoo People",
"score": null,
"mql_filter": [{
"type": {
"id": "/music/release",
"optional": "forbidden"
}
}]
},
"name": null,
"id": null,
"type": [],
"/common/topic/notable_for": {
},
"limit": 15,
"sort": "-search.score"
}]