Freebase: ограничить свойство быть пустым

Есть ли способ ограничить свойство быть пустым в запросе Freebase? В частности, я хочу найти все свойства, которые имеют unique=null и /freebase/type_hints/mediator=null. Так что-то вроде этого:

[{
  type: "/type/property",
  unique: null,
  "expected_type" : {
    "/freebase/type_hints/mediator" : null
  }
}]​

за исключением того, что я хочу, чтобы значение null фактически означало нулевое значение для этих свойств. Это возможно?

1 ответ

Решение

Использование "optional": "forbidden",

[{
  "id":     null,
  "name":   null,
  "type":   "/type/property",
  "unique": {
    "value":    null,
    "optional": "forbidden"
  },
  "expected_type": {
    "/freebase/type_hints/mediator": {
      "value":    null,
      "optional": "forbidden"
    }
  }
}]​

В общем, вам не нужно ничего, кроме "optional": "forbidden" в предложении, но MQL не позволяет иметь предложение, содержащее только директивы и не имеющие реальных свойств, поэтому "value": null просто чтобы сохранить его счастливым.

Другие вопросы по тегам