Hi,
We want to use Orbeon as part of a solution we are proposing to a customer. There are some wishes for features that I'm not sure at this point on how they are/could be implemented using Orbeon. So I would appreciate very much any feedback you can give. Some questions might be answered in a manual if that is the case you could answer simply RTFM. Version management Orbeon default stores forms in the eXist database. Is there a way to manage different versions for forms using this database? Can yo recommend alternatives if version management is not supported. If we really want version management, what do you think about using Subversion. Can we use the REST Web API for that? Generic building blocks for forms Is it possible to construct a form from pre-defined form components? We would like to be able to define and use reusable chunks of forms definition, logic and validation. Different forms variants Is it possible to create different variants of a form for different types of users using some kind of extension mechanism. We want to be able to create a generic form and then allow some users to make changes to it, to make it specific for their purpose. Ideally it would be possible to keep track some how of the changes made and merge them if a new generic version is made available. I thought about using Subversion for version management, I thought we could then also use it to support different variants for a form by branching in Subversion. Wizard Is it possible to present a form as a wizard using multiple screens and some kind of progress indicator. Validations Is it possible to do multi-field validations. What functionality is there to do create custom validations e.g. using Javascript? Saving form state If the user does not submit directly, is the forms state maintained? Or does the user have to fill in all fields anew? Is it possible to fill in a form without a internet connection? Business rules Do you of applications where Orbeon was used together with a business rule framework/engine. Thanks in advance, Onno -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Administrator
|
> Version management
> Orbeon default stores forms in the eXist database. Is there a way to > manage different versions for forms using this database? Can yo > recommend alternatives if version management is not supported. If we > really want version management, what do you think about using > Subversion. Can we use the REST Web API for that? The eXist persistence layer does not support versioning at the moment. The Oracle XML kind of does, in that it keeps older versions. But this is not visible at the level of the REST API. See also this section on the wiki, which I just updated: http://wiki.orbeon.com/forms/doc/contributor-guide/form-builder-integration-notes#TOC-Support-for-versioning > Generic building blocks for forms > Is it possible to construct a form from pre-defined form components? > We would like to be able to define and use reusable chunks of forms > definition, logic and validation. We have basic support for this, in the form of what we call Section Templates: http://wiki.orbeon.com/forms/doc/user-guide/form-builder-user-guide#TOC-Section-templates (Note that this Form Builder guide is being written as we speak.) > Different forms variants > Is it possible to create different variants of a form for different > types of users using some kind of extension mechanism. We want to be > able to create a generic form and then allow some users to make > changes to it, to make it specific for their purpose. Ideally it would > be possible to keep track some how of the changes made and merge them > if a new generic version is made available. I thought about using > Subversion for version management, I thought we could then also use it > to support different variants for a form by branching in Subversion. Currently there is no such extension mechanism. > Wizard > Is it possible to present a form as a wizard using multiple screens > and some kind of progress indicator. This is an oft-requested feature, but we don't have it yet. One approach was to: * Allow for sub-sections in Form Builder * Allow for top-level sections (possibly other sections) to be represented as a wizard > Validations > Is it possible to do multi-field validations. What functionality is > there to do create custom validations e.g. using Javascript? Could you precise "multi-field validations"? You can write custom validation using XPath expressions or schema types in XForms. We don't really have support for writing validation rules in JavaScript. > Saving form state > If the user does not submit directly, is the forms state maintained? > Or does the user have to fill in all fields anew? You have the notion of "saving" the form and "submitting" the form to a service. This might help. > Is it possible to > fill in a form without a internet connection? We have some code in the XForms engine for offline support using Google Gears, but this is not integrated in Form Runner yet. > Business rules > Do you of applications where Orbeon was used together with a business > rule framework/engine. I don't think we have particular recommendations on this point. -Erik -- Orbeon Forms - Web Forms for the Enterprise Done the Right Way http://www.orbeon.com/ -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Hi Erik,
Thanks for your valuable input. As the simplest example of a multi-field validation, fields could be mutually exclusive (ie. only one field should be entered), another example is that 'end date' should be after a 'start date'. More complex validations could involve a validation of a value of a field based on value of other fields. Schema types don't support but with XPath expressions it can be done I think. That looks like a viable option. I think I was looking for something like Schematron for implementing business rule, see http://en.wikipedia.org/wiki/Schematron. This looks like something that could be integrated in Orbeon? I just scanned the content btw, I know no more about it then what is described on that page. Any thoughts on using Subversion as database for storing forms? Is it a stupid idea? For version management and to allow multiple instances of a form to exists in Subversion branches? Best Regards, Onno On Fri, Jun 5, 2009 at 1:58 AM, Erik Bruchez<[hidden email]> wrote: >> Version management >> Orbeon default stores forms in the eXist database. Is there a way to >> manage different versions for forms using this database? Can yo >> recommend alternatives if version management is not supported. If we >> really want version management, what do you think about using >> Subversion. Can we use the REST Web API for that? > > The eXist persistence layer does not support versioning at the moment. > > The Oracle XML kind of does, in that it keeps older versions. But this is > not visible at the level of the REST API. > > See also this section on the wiki, which I just updated: > > http://wiki.orbeon.com/forms/doc/contributor-guide/form-builder-integration-notes#TOC-Support-for-versioning > >> Generic building blocks for forms >> Is it possible to construct a form from pre-defined form components? >> We would like to be able to define and use reusable chunks of forms >> definition, logic and validation. > > We have basic support for this, in the form of what we call Section > Templates: > > http://wiki.orbeon.com/forms/doc/user-guide/form-builder-user-guide#TOC-Section-templates > > (Note that this Form Builder guide is being written as we speak.) > >> Different forms variants >> Is it possible to create different variants of a form for different >> types of users using some kind of extension mechanism. We want to be >> able to create a generic form and then allow some users to make >> changes to it, to make it specific for their purpose. Ideally it would >> be possible to keep track some how of the changes made and merge them >> if a new generic version is made available. I thought about using >> Subversion for version management, I thought we could then also use it >> to support different variants for a form by branching in Subversion. > > Currently there is no such extension mechanism. > >> Wizard >> Is it possible to present a form as a wizard using multiple screens >> and some kind of progress indicator. > > This is an oft-requested feature, but we don't have it yet. One approach was > to: > > * Allow for sub-sections in Form Builder > * Allow for top-level sections (possibly other sections) to be represented > as a wizard > >> Validations >> Is it possible to do multi-field validations. What functionality is >> there to do create custom validations e.g. using Javascript? > > Could you precise "multi-field validations"? > > You can write custom validation using XPath expressions or schema types in > XForms. > > We don't really have support for writing validation rules in JavaScript. > >> Saving form state >> If the user does not submit directly, is the forms state maintained? >> Or does the user have to fill in all fields anew? > > You have the notion of "saving" the form and "submitting" the form to a > service. This might help. > >> Is it possible to >> fill in a form without a internet connection? > > We have some code in the XForms engine for offline support using Google > Gears, but this is not integrated in Form Runner yet. > >> Business rules >> Do you of applications where Orbeon was used together with a business >> rule framework/engine. > > I don't think we have particular recommendations on this point. > > -Erik > > -- > Orbeon Forms - Web Forms for the Enterprise Done the Right Way > http://www.orbeon.com/ > > > > -- > You receive this message as a subscriber of the [hidden email] mailing > list. > To unsubscribe: mailto:[hidden email] > For general help: mailto:[hidden email]?subject=help > OW2 mailing lists service home page: http://www.ow2.org/wws > > -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
Administrator
|
Onno,
We are using MSV for validation, and I see that there is an MSV add-on for MSV to support Schematron. I never used it, and am not even sure it really does what you are looking for. But with some luck it isn't something too hard to try. If you get to investigate this, you'll let us know what your findings are. No, it isn't. I think it even makes a lot of sense. It would be relatively easy to implement (I imagine that doing a PUT of the file would create a new version of the file), would allow the forms to be easily edited "by hand", and obviously would provide version management. The only part which would be harder to implement (and most likely not very efficient) is the search part. But overall this sounds like a very good idea! Alex |
In reply to this post by Erik Bruchez
FYI -- Not really an answer to your question, and perhaps you are already doing this, but to assist in your thinking of versioning and how to select versions here is a technique we have built into the schema for this. The issue for us is that instances may be created with one version of a schema/form at one time and another version at another time. However, we still need to edit instances created with older versions later and they are essentially treated as the same thing from a users point of view. What we are doing is to add a <VersionText/> tag to our schema with a fixed text value of the version string. Any instance created against this schema will not validate unless it has that tag with the specific fixed value. This has some advantages, including that the instance specifically declares the version it was created with, and this allows the schema file name itself to remain constant. It then is a (relatively) simple matter to read the value of this version tag for any particular instance. For example, in order to display the instance with the correct form for editing. Cheers! -jason |
Administrator
|
> FYI -- Not really an answer to your question, and perhaps you are
Something similar to what you describe is exactly what we had in mind:
> already > doing this, but to assist in your thinking of versioning and how to > select > versions here is a technique we have built into the schema for this. > > The issue for us is that instances may be created with one version > of a > schema/form at one time and another version at another time. > However, we > still need to edit instances created with older versions later and > they are > essentially treated as the same thing from a users point of view. > > What we are doing is to add a <VersionText/> tag to our schema with > a fixed > text value of the version string. Any instance created against this > schema > will not validate unless it has that tag with the specific fixed > value. This > has some advantages, including that the instance specifically > declares the > version it was created with, and this allows the schema file name > itself to > remain constant. > > It then is a (relatively) simple matter to read the value of this > version > tag for any particular instance. For example, in order to display the > instance with the correct form for editing. * Data would open with the version of the form it was created with * An optional migration process (possibly manual) could bring older data up to date -Erik -- Orbeon Forms - Web Forms for the Enterprise Done the Right Way http://www.orbeon.com/ -- You receive this message as a subscriber of the [hidden email] mailing list. To unsubscribe: mailto:[hidden email] For general help: mailto:[hidden email]?subject=help OW2 mailing lists service home page: http://www.ow2.org/wws |
In reply to this post by Alessandro Vernet
Onno - your requirements are very similar to mine. I also need to support business rules - I'm very interested to see if Schematron is a possibility. Let me know if you have any additional info on this.
Brian
|
Administrator
|
Brian,
Have you already tried using <xforms:bind constraint="...">? This allows you to define constraints using XPath expressions, in a way that is very similar to what Schematron does. Alex |
Free forum by Nabble | Edit this page |