{
  "id": "P38-C04",
  "mode": "workflow",
  "theme": "workflow",
  "brand": "РАЗБОР / P38-C04",
  "title": "Компьютеры: сверка предложения по обязательным свойствам",
  "lead": "Сопоставить память, разъёмы, комплект и ОС с явно заданной спецификацией.",
  "section": "Исходный материал → результат",
  "offer": "Сопоставить память, разъёмы, комплект и ОС с явно заданной спецификацией.",
  "inputTitle": "Редактируемый исходный материал",
  "outputTitle": "Сопоставление характеристик",
  "source": "Модель: W-16\nПамять ГБ: 16\nЦифровые выходы: 2\nКлавиатура: да\nОС: Linux 24\nИсточник: предложение W-16, лист 1; ТЗ строки 3, 8 и комплект",
  "extract": [
    {
      "id": "model",
      "label": "Модель",
      "pattern": "^Модель:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    },
    {
      "id": "ram",
      "label": "Память ГБ",
      "pattern": "^Память ГБ:[ \\t]*(.+)$",
      "type": "number",
      "required": true,
      "min": 0,
      "exclusiveMin": true
    },
    {
      "id": "ports",
      "label": "Цифровые выходы",
      "pattern": "^Цифровые выходы:[ \\t]*(.+)$",
      "type": "number",
      "required": true,
      "min": 1,
      "integer": true
    },
    {
      "id": "keyboard",
      "label": "Клавиатура",
      "pattern": "^Клавиатура:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    },
    {
      "id": "os",
      "label": "ОС",
      "pattern": "^ОС:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    },
    {
      "id": "source",
      "label": "Источник",
      "pattern": "^Источник:[ \\t]*(.+)$",
      "type": "text",
      "required": true
    }
  ],
  "processor": "extract",
  "rules": [
    {
      "field": "ram",
      "kind": "minimum",
      "value": 16,
      "message": "Памяти меньше 16 ГБ."
    },
    {
      "field": "ports",
      "kind": "minimum",
      "value": 2,
      "message": "Цифровых выходов меньше двух."
    },
    {
      "field": "keyboard",
      "kind": "equals",
      "value": "да",
      "message": "Клавиатура не подтверждена."
    },
    {
      "field": "os",
      "kind": "equals",
      "value": "Linux 24",
      "message": "Редакция ОС не совпадает."
    }
  ],
  "examples": [
    {
      "label": "Исходный пример",
      "text": "Модель: W-16\nПамять ГБ: 16\nЦифровые выходы: 2\nКлавиатура: да\nОС: Linux 24\nИсточник: предложение W-16, лист 1; ТЗ строки 3, 8 и комплект"
    },
    {
      "label": "Неполные сведения",
      "text": "Требуется уточнение. Исходные параметры пока не переданы."
    }
  ],
  "renderTemplate": "{model}\nПамять: {ram} ГБ; цифровых выходов: {ports}; клавиатура: {keyboard}; ОС: {os}.\nПроверены четыре явных условия. Основание: {source}."
}
