Формат завдань, поле `markup`, Подивитись локально доку

Формат передбачає, що маркери - це деякі візуальні елементи форми. У маркерах описується ЩО показувати (але не як точно показувати), і деякі параметри як це показувати. Важливо, що кожен клієнт (веб та мобільники) самостійно вирішуватиме як рендерити такий елемент використовуючи нативні інструменти.

Кожен маркер відповідає за перевірку відповіді. Деякі маркери мають чеки (у полі checks), деякі ні.

Структура поля markup

  • layout - масив із блоками завдання. Кожен блок – це текст-розмітка чи маркер. Обов'язкове поле. Далі розібраний докладно.
  • answers – словник, з ключами – id маркерів, та значеннями – відповідями на цей маркер. Для кожного маркера обов'язково має бути значення в цьому словнику (проте, в деяких старих маркерах андроїда немає поля відповіді та відповіді взагалі). Обов'язкове поле.
  • checks – словник, з ключами – id маркерів, і значеннями – правилами перевірки цього маркера (наприклад, про сукупний принцип перевірки у маркері inline). Не кожному маркера тут буде значення. Обов'язкове поле може бути порожнім.
  • solution , public_solution - опціональні текстові поля з рішенням (перше "доступне вчителю", друге - "доступне всім").
  • formulas - словник, з описом формул. Опціональне поле.

Поле markup.layout

У цьому полі знаходиться масив блоків, у тому числі складається завдання.

Передбачається, що блоки йдуть один за одним, як блокові елементи HTML.

Блоки можуть бути двох типів (зараз): text і marker . Тип блоку вказаний у полі kind.

Кожен блок має поле content , що описує його вміст.

Блоки типу

Звичайний блок із текстом.

Може містити ресурси та формули,НЕ МІСТИТЬ активних елементів ("маркерів" у старому розумінні).

Блоки типу marker

Блок із маркером.

Маркери тепер - окремий блок у задачі, що займають всю ширину, на якій відображається завдання, і необхідний простір у висоту. "Внутрішня" структура маркера аналогічна тій, що раніше була в markup.markers.$, за винятком винесених зовні answer і options.checks.

Поле markup.answers

У випадку це словник, де ідентифікатори маркерів - це ключі словника. За цим ключем є відповідь або відповіді, які вважаються правильними. При цьому для маркерів, які мають перевірку чеками, це поле не бере участі у перевірці, а служить лише для відображення правильної відповіді.

Вміст залежить від маркерів, посилання:

Поле markup.checks

Спільне про перевірку написано тут.

Поле markup.formulas

Описує формули із розмітки задачі.

Словник, де ключі - ідентифікатор формули всередині цієї задачі, значення - словник з 3 полями, формулою в техі та, опціонально, посиланням на картинку з формулою та стилем для відображення картинки. Величина ex (висота малої літери) зараз дорівнює 72 пікселям.