- FB = Form Builder
- FR = Form Runner
- OF = Orbeon Forms
P1 featuresP1 (already planned, should be done soon): - FB: Performance
- FB: Usability improvements (make it faster to enter form fields and associated information)
P2 featuresP2 (likely to be done next, but we still need sponsoring for those): - Features
- FB: Handle repeat (already supported in FR)
- FB: Handle sub-sections (already supported in FR)
- OF: Required fields must provide the option of showing an *.
Later features
Later (would be nice, no planning yet, and yes we do need sponsoring for those!), in no particular order: Form Builder- Usability
- Make first section title optional (should simply be top-level grid? create section when adding new section?)
- Prevent creation of duplicate app name/form name: warn user if form w/ same app/form name created
- Editors: would be nice to show control labels and/or control types for control selection
- When adding a field, not intuitive that the current text field
is for the label. Add [Enter label] selected? Or background text that
disappears when user starts typing text?
- In-place label edit for radio buttons and checkboxes
- "Navigation" from control to control within Detail, Help and Validation editors. Also support switching language when it makes sense.
- Automatic proposal of form name based on form title?
- Use YUI KeyListener to implement keyboard shortcuts (e.g. CXV, etc.).
- "Apply" should be automatic when you click somewhere else
- Form logo at top of form should not show upload control right away, instead use button to add
- Cut/copy should cause status message to display (make message handling more generic; how?)
- Help icon should appear all the time if help is not blank, not only on hover (or different icon, or ...)
- Better tabindex handling esp. for dialogs
- Handle tabindex in itemset editor?
- consider dialog and repeat
- assign id in the >= 100
- handler adds value for repeat iterations
- Link to online help
- Controls
- Include XBL bindings only for bindings in use at deployment/test time
- Text output control is not localizable
- should store its text in resources instance, instead of form instance
- Rich text input control, output HTML in FR
- Multi-line text output control
- UI to set incremental mode
- Easy switch between HTML area and regular textarea
- Easy switch between input, output, textarea, and secret
- Itemset editor
- validate that for multiple selection controls (e.g. checkboxes), the value must not contain spaces
- button to sort items
- allow insert an item other than at the end
- Move elements in instance when user moves controls in UI
- Detail/validation dialogs: like iTunes to navigate between
fields, instead of having to close the dialog all the time to navigate
to the next one
- Control labels: optional positioning on the left would be nice
- Date picker: format i18n
- Option for checkboxes and radio buttons appearance: vertical vs. horizontal -> set class
- Image buttons (ops-users question)
- Image widget must have read-only vs. read-write option (so users can upload their own images). Or, always display the upload field even in Form Runner for images
- Detail must enable editor for special control attributes
- built-in, like appearance, etc.
- custom attributes exposed by XBL components
- Button widget's label is empty by default so button appears very small
- Controls are not WYSIWYG
- Data model
- Specify external data model instead of letting FB dictate data model
- Upload/paste of XML file
- Allow binding controls to elements/attributes
- Is present, then disable FB modifications to data model
- Unable to handle a schema with targetNamespace
- Automatic initial generation of control ids/element names
- after label has been entered a first time
- poss: quick way of reviewing data model
- Validation: specify maximum length of field declaratively -> controls 1) validation constraint 2) HTML input length
- More common validation constraints. Ability to enter "facets" like XML Schema Part 2. Use @constraint, or create inline schema types?
- More XML Schema support
- Produce form template from schema
- Pick complex type and generate controls from that
- Allow specifying a schema which is global for the company (or
for the particular Form Builder install). It could be selectable in the
current UI
- If select control has a schema type containing an enumeration, should allow user to use that enumeration
- Other features
- Declarative description of services and actions
- currently this is code-generation
- instead produce instance describing fully the service, and runtime in FB executes service/action
- Form export/import of forms/form data
- Enable XPath 2.0 type annotations
- Section templates: actions / services within components
- Use fr:accordion for toolbox instead of custom accordion
- Deploy one or more forms from Summary page (can test, so why not deploy?)
- Noscript: produce fr:tr and fr:td?
- Doc: how to handle URLs to services for prod vs. validation environments
- Configuration for RTE: either RTE displayed inline, or HTML shown with edit button that opens the RTE in a dialog
- Handling concurrent writes/conflicts
- Base property to specify URL of services
- Roles to control e.g. who has the right to publish a form, etc.
- Ability to have select controls dependencies without using SOAP/JDBC.
- Better modularization of code. Needs xxforms:function for custom XPath functions
- Handle colspan
- Within a session, detect whether changes have modified the structure of the doc, + check whether there is form data for the given form, and warn on publish
- Publish must check whether form is already deployed, AND if so whether there is data for it in order to warn the user
- BUG: Safari 3.1 stops responding after a while (but "resurrect" if you click in the right place).
- Simple "style" editor to set form's colors, etc. a la blog
- BUG: Service Editor: test submission always have xxforms:username. If blank, the behavior will be slightly different from the actual submission without xxforms:username
- "Library sets": from UserVoice
- "I can see a need for a large collection of section templates for individual applications using form builder. Right now there is only one Library form, which could grow very large. I suggest supporting a set of Library forms available as a tree in the toolbar with selectable leaves for individual section templates."
Form Runner- Summary page
- Use a shorter format for the date of creation and last modification, so they take less horizontal space
- Fix alignment of text between the paging icons
- Introduce a help dialog shown the first time the page is open that presents the main operations
- Variable-width summary page for large number of columns (issue: make the datatable scrollable shows the scrollbar even if there is enough horizontal space)
- Switch to using the paging provided by the datatable
- Summary page should support sorting (bug)
- Summary page must be able to list forms available. Maybe list applications, then for a given application list forms?
- Summary page to allow to search by range if the type of a column is
numeric or is a date (or maybe allowing a range, like Gmail search does)
- Allow users to temporarily add columns based on the form fields, for fields that are not defined as appearing on the summary page by the form author.
- Allow users to export the data shown in the summary table in CSV or Excel format. When users click on the "export" button, a dialog will be shown with the following options:
- Export the summary data currently being viewed in CSV format
- Export all the data from the forms returned by the current search in XML format (when this option is chosen, a zip will be generated; it will be named app-form-date.zip, and contain one XML file for each form instance based on the current search)
- Summary page should not be case sensitive for eXist [check if still the case]
- Summary page must show Oracle errors
- Order of columns in summary page should be document order, not binds order
- Control which buttons you want on summary page => property
- Advanced search/xquery/export as XML
- Detail page
- "Wizard" appearance for sections
- Add page size selector (like new XForms Controls example)
- Add smart error / warning icons (need new native visited flag + use span layout)
- CSS: need mechanism of "theme" for alerts, labels, radio buttons layout based on ancestor class, e.g. fr-radio-vertical, fr-radio-horizontal; fr-label-top, fr-label-left; etc.
- Time: allow hours/minutes without seconds (HH:MM)
- XML view button
- Auto PDF output to produce header/footer/page numbers based on CSS 3 margin boxes and running elements
- Next/prev doc when viewing a form
- Submit (POST) to a particular URL during the send process. See [ #314761 ] FR: RFE: Ability to POST form data to a particular URL upon send
- Other
- Better / official integration with Liferay
- CMIS integration (would help support Alfresco, etc.)
Orbeon Forms- Credit card component (using card type)
- Refactor instance inspector code to use variables, iterate, etc.
Thoughts about repeatsPossibly several types of repeats: - Repeat fr:grid, could be done w/ minOccurs/maxOccurs attrs instead of fr:repeat
- Appearance w/ headers (1 row repeated)
- Appearance w/o headers (> 1 row repeated)
- Repeat fr:section
Nested repeats are more complex. In general, solution to issue of nesting from the layout pov must be found. Thoughts about handling concurrent writersCurrently, nothing protects concurrent writes of form types or form data. Some system of detection / locking must be put in place. Idea: - Optimistic approach
- Store in db username + timestamp
- Warn user of overwrite
- User timeout for warning
- Certain operations clear username ("Close" button)
|