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
просто чтобы сохранить его счастливым.