Запрос сущностей с помощью логического оператора ИЛИ с помощью Fiware Orion - PullRequest
1 голос
/ 04 июля 2019

Я не могу получить объекты из запросов Ориона с двумя условиями с помощью логического оператора ИЛИ.

Например, если я хочу получить объекты, имеющие temperature > 20 OR humidity enter code here< 50. Но я могу получить только запрослогическим оператором AND:

http:// localhost:1026/v2/entities?q=temperature>20;humidity<50 

Также я пытаюсь с |чтобы разделить условия, как это:

http:// localhost:1026/v2/entities?q=temperature>20|humidity<50 

Но выдает мне следующую ошибку:

{
    "error": "BadRequest",
    "description": "forbidden characters in String Filter"
}

Как я могу получить запросы к Ориону с помощью логического оператора ИЛИ?

1 Ответ

1 голос
/ 05 июля 2019

Правильно, что разделенные запятыми элементы q StringFilter объединены в AND. Насколько я помню, мы никогда не реализовывали ИЛИ для StringFilters.

Чтобы достичь желаемого, я бы предложил сделать два запроса и объединить результаты. Извините ...

Спецификация здесь . Это ясно говорит:

Простой язык запросов обеспечивает упрощенный синтаксис для извлечения сущностей, которые соответствуют набору условий. Запрос состоит из списка операторов, разделенных знаком ';' персонаж. Каждое утверждение выражает условие соответствия. Запрос возвращает все объекты, которые соответствуют всем условиям сопоставления (логический оператор AND).

...