如何在mql中返回null复合对象

时间:2013-08-10 21:28:58

标签: javascript freebase mql

我一直在使用freebase进行简单的calorie counter。当我querying for a recipe时,我没有收到所有退回的条目。

我的查询是:

[{
  "id": "/m/0e cvb9k7",
  "name": null,
  "/food/recipe/ingredients": [{
    "id": null,
    "ingredient": {
      "id": null,
      "name": null,
      "/food/food/energy": null
    },
    "unit": {
      "id": null,
      "name": null
    },
    "quantity": null
  }]
}]

例如,在浓汤配方中,有一些成分,如洋葱或辣椒,其中单位为空。这个查询不会返回这些内容。如何编写将返回所有成分的查询,包括具有空单位的成分?

我试过了:

"unit|=": [
  null,
 {
    "id": null,
    "name": null
  }
]

这给了我一个错误Comparison operator |= takes a non-empty list of values

1 个答案:

答案 0 :(得分:2)

将“optional”:true添加到该子查询viz

[{
  "id": "/m/0e cvb9k7",
  "name": null,
  "/food/recipe/ingredients": [{
    "id": null,
    "ingredient": {
      "id": null,
      "name": null,
      "/food/food/energy": null
    },
    "unit": {
      "id": null,
      "name": null
      "optional":true
    },
    "quantity": null
  }]
}]