如何反转MQL查询(对于freebase)



我正在尝试列出特定id的所有类型:

{
  "id": "/en/sony",
  "type": [{
    "name": "Topic",
    "id": null
  }]
}

此查询给出以下结果:http://tinyurl.com/lubavey

{
  "result": {
    "type": [
      {
        "id": "/common/topic",
        "name": "Topic"
      },
      {
        "id": "/base/audiobase/topic",
        "name": "Topic"
      },
      {
        "id": "/base/fblinux/topic",
        "name": "Topic"
      },
      {
        "id": "/base/digitalcameras/topic",
        "name": "Topic"
      },
      {
        "id": "/base/popstra/topic",
        "name": "Topic"
      },
      {
        "id": "/base/televisions/topic",
        "name": "Topic"
      },
      {
        "id": "/base/ps3games/topic",
        "name": "Topic"
      },
      {
        "id": "/base/filmcameras/topic",
        "name": "Topic"
      },
      {
        "id": "/m/04mny2g",
        "name": "Topic"
      }
    ],
    "id": "/en/sony"
  }
}

我想要完全相反的结果。我想要所有没有"主题"名称的类型。我怎样才能做到这一点?我试图使用属性为name!运算符,这是MQL的参考指南中建议的,但它给了我错误:

"不能将不合格的属性名称与!reversing一起使用"。

我应该怎么做才能用!消除这个错误,并获得相反的查询结果?

试用!=:

{
  "id": "/en/sony",
  "type": [{
    "name!=": "Topic",
    "id": null
  }]
}

!=运算符表示受约束的属性可以是指定的值。(它确实要求财产是某种东西,但是:它与属性为null的对象不匹配。)

点击此处了解有关!=操作员的更多信息:http://wiki.freebase.com/wiki/MQL_operators#The_.22but_not.22_Operator_.21.3D

最新更新