Часто в комплекте с устройствами поставляются их паспорта, которые содержат техническую спецификацию. На производстве выпускается несколько модификаций одного и того же устройства. Как сейчас - паспорта создаются путём копирования похожего и внесения в него изменений, что приводит к человеческим ошибкам.
Требования
Основные параметры шаблона зависят от маркировки. Маркировка - это строка вида DSA XXXX DS XX XX XX, где каждый символ - выбор характеристики из словаря.
Кроме маркировки нужно указать точные характеристики, не вынесенные в маркировку (в том числе серийный номер).
Пользователи
Поддержка двух групп пользователей:
- оператор - доступ для генерации паспорта;
- редактор - внесение изменений в шаблон паспорта или список параметров.
C4 диаграммы
Решение
Для каждого типа оборудования создать xml-спецификацию
<?xml
<head>
<title>
Спецификация для паспорта DSA
</title>
</head>
<template path="templates/dsa.latex">
</template>
<form>
<mark>
<static>DSA-<static>
<select name="1">
<label>Количество входов</label>
<option value="1">1</option>
<option value="2">2</option>
</select>
<select name="2">
<label>Измеряемая величина</label>
<option value="1">Измерение зазора в плоскости</option>
<option value="2">Максимальное значение в области зазора</option>
</select>
<select name="3">
<label>Температурный диапазон</name>
<option value="1">4-10 С</option>
<option value="2">-20 +50 С</option>
</select>
</mark>
<modification>
<select name="4">
<label>Диапазон измерений</label>
<option value="5-20 mA">5-20 mA</option>
<option value="1-18 mA">1-18 mA</option>
</select>
<select name="7">
<label>Температурный диапазон</label>
<option value="1">4-10 С</option>
<option value="2">-20 +50 С</option>
</select>
</modification>
<label form="8">Серийный номер</label>
<input name="8"></input>
</form>
?>
Здесь id - наименование параметра, передаваемого в шаблон.