Да, вы можете разрешить пользователям редактировать значение узла, для которого вы рассчитываете.Для этого в xforms:bind
явно добавьте readonly="false()"
, так как узел, для которого вы указываете calculate
, автоматически становится доступным только для чтения.Если вы сделаете это, имейте в виду, что calculate
также запускается после того, как пользователи отредактировали поле, так что выражение должно быть написано таким образом, чтобы оно не перезаписывало значение, введенное пользователями.Часто вы делаете что-то вроде: calculate="if (. = '') then {some expression} else ."
, чтобы не переписывать то, что печатали пользователи, если они что-то печатали.