Freebase MQL Test для Not True - PullRequest
2 голосов
/ 28 июня 2010

У меня есть простой скрипт, который извлекает все типы Freebase в домене .Теперь я хочу отфильтровать типы CVT, но не могу понять, как написать этот тест.Если я пишу это так, как кажется наиболее очевидным:

<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 исключение: acre.freebase.Error: / api / status / error:Не могу использовать операторы сравнения для логических значений

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

Любой толчок в правильном направлении будет высоко ценится.

1 Ответ

2 голосов
/ 28 июня 2010

Это должно работать:

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

P.S. Я предлагаю работать в редакторе запросов, когда вы пытаетесь разработать запрос. Вот рабочий пример запроса с использованием необязательного: запрещено. http://tinyurl.com/2co63sy

...