7.5. Краткое описание Clause API

7.5.1. Назначение

Clause API - json описание поискового запроса к схеме, поддерживаемой приложением.

Структура запроса унифицирована для всех типов адаптеров.

Структура запроса может быть вложенной.

Примечание

Отдельные адаптеры могут поддерживать расширенный синтаксис. За описанием синтаксисов адаптеров необходимо обратиться к разработчику приложения в рамках технической поддержки.

7.5.2. Общее описание

operator
Содержит информацию по способу объединения элементов запроса.
Поддерживаются 2 оператора: AND и OR
Первый элемент списка всегда применяет оператор AND
field
Описывает поле схемы, используемое для формирования выборки
operand
Описывает операцию сравнения.
Перечень доступных операций приведен ниже.
value
Описывает значение для сравнения в выборке.
Может отсутствовать для унарных операций (типа null)
Может быть массивом для операций сравнения между, из списка
clauses
Описывает вложенные запросы.

Каждый запрос может быть массивом Clause или отдельным Clause.

7.5.3. Поддерживаемые операнды

eq = Equal
Операция проверки равенства
ne <> Not equal.
Операция проверки неравенства
gt > Greater than
Операция сравнения больше
lt < Less than
Операция сравнения меньше
ge >= Greater than or equal
Операция сравнения больше или равно
le <= Less than or equal
Операция сравнения меньше или равно
between
Операция сравнения между
start
Операция сравнения начинается с
contains
Операция сравнения содержит
in
Операция сравнения из списка
null
Операция сравнения IS NULL
notnull
Операция сравнения IS NOT NULL

7.5.4. Пример

:

{
 "clauses": [
  {
    "clauses": [
      {
        "field": "status",
        "operand": "eq",
        "value": "2"
      }
    ]
  },
  {
    "clauses": [
      {
        "field": "priority",
        "operand": "eq",
        "value": "2"
      },
      {
        "field": "status",
        "operand": "ne",
        "value": "1",
        "operator": "and"
      }
    ],
    "operator": "or"
  }
 ]
}