【问题标题】:Freebase search_api and excluding results by specified typeFreebase search_api 并按指定类型排除结果
【发布时间】:2011-05-04 13:09:51
【问题描述】:

有谁知道,如何使用搜索 api 和 mql 排除一些指定类型的主题?

例如,我尝试查找所有主题“Voodoo People”,并仅排除那些具有组合和发布类型的主题,并按分数 desc 对结果进行排序:http://tinyurl.com/3tjkb7y。 排序工作完美,但我找不到排除功能:( 我正在尝试使用 mql_filter:http://tinyurl.com/644xkow,但版本仍然存在。 还有一个问题:我在 type_strict 参数中看到了可能的值:“all”、“any”、“should”。但是没有“不”或“不在”的价值。是否可以通过任何其他方式获得所需的结果?

【问题讨论】:

    标签: api search freebase mql


    【解决方案1】:

    您正在寻找的语法是 "optional" : "forbidden"。在您的查询中,如下所示:

    [{
      "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"
    }]​
    

    【讨论】:

    • 非常感谢,这正是我需要的 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-13
    • 2016-10-11
    相关资源
    最近更新 更多