Почему отсутствуют элементы для несоответствующего шаблона раздела? - PullRequest
2 голосов
/ 21 февраля 2012

Я использую шаблон раздела, созданный Orbeon Form Builder, который я включил в другую форму, также созданную Form Builder. Когда в этой форме мы делаем шаблон раздела невидимым, он исчезает из экземпляра формы.

Можно ли сделать шаблон раздела невидимым, не теряя его в экземпляре формы?

Ответы [ 2 ]

1 голос
/ 23 февраля 2012

Я не работаю в Form Builder, но вы можете сделать раздел / поля невидимыми, используя

  1. <xforms:group> или
  2. , используя условие relevant в определении привязки.

Если вы используете <xforms:group>, то раздел / поля не будут удалены из экземпляра модели.

Если вы используете соответствующее условие, то раздел будетбыть удаленным из экземпляра модели, когда соответствующее условие ложно.

1 голос
/ 23 февраля 2012

Для каждого шаблона раздела Form Builder создает компонент XBL, который оборачивает поля в этом разделе. В форме, использующей XBL, соответствующий шаблону раздела, в XML для экземпляра существует только один элемент для всего раздела, и компонент XBL связан с этим элементом. Компонент XBL «знает», что такое XML для полей в разделе, и во время выполнения, когда он становится релевантным, он вставляет их в элемент для раздела. Следовательно, если раздел никогда не станет релевантным, эти поля будут отсутствовать в экземпляре.

Это поведение не согласуется с тем, что происходит с обычными разделами, но оно не должно вызывать каких-либо особых проблем для Form Runner. Скажем, если вы сохраните данные без этих полей, отредактируете их позже, и раздел станет релевантным, компонент XBL добавит элементы в экземпляр. По этой причине мы создали этот выпуск .

...