2010-06-28 92 views
2

我有一個簡單的腳本,它可以檢索中的所有Freebase 類型。現在我想過濾出CVT類型,但我無法弄清楚如何編寫該測試。如果我寫它似乎最明顯的方式:Freebase MQL Test for Not True

<acre:script> 
    var q_categories = [{ 
    "id":  null, 
    "name": null, 
    "sort": "name", 
    "type": '/freebase/domain_category', 

    "domains": [{ 
     "id": null, 
     "name": null, 
     "sort": "name", 

     "!/type/type/domain": [{ 
     "id": null, 
     "name": null, 
     "sort": "name", 

     "/freebase/type_hints/mediator!=": true 
     }], 
    }] 
    }]; 

    var categories = acre.freebase.mqlread(q_categories).result; 
</acre:script> 

我得到一個錯誤:

JS exception: acre.freebase.Error: /api/status/error: Can't use comparison operators on boolean values

我猜測,這可能是一個用例的"optional": "forbidden"指令,但我即使我的猜測是正確的,也不知道如何構造語法。

任何在正確的方向微調將不勝感激。

回答

2

這應該工作:

"/freebase/type_hints/mediator": { 
    "optional": "forbidden", 
    "value": true 
} 

附:當您嘗試開發查詢時,我建議您在查詢編輯器中工作。 下面是使用可選的查詢的一個工作示例:forbidden。 http://tinyurl.com/2co63sy