The adaptive forms feature of Adobe Experience Manager (AEM) forms allows you to create engaging, responsive, and adaptive forms.
When you create adaptive forms, you can select a form model. It is important to carefully choose the data model that not only suits your requirements but extends your existing investments in XFA and XSD assets, if any. You create an adaptive form:
- Without a form model
Adaptive forms created with this option don't use any data model. The data XML generated from such forms has flat structure with fields and corresponding values.
- Using an XML Schema Definition (XSD)
XML schema represents the structure in which data is produced or consumed by the back-end system in your organization. You can associate an XML schema to an adaptive form and use its elements to add dynamic content to the adaptive form. The elements of the schema will be available for use in the content finder at the time of adaptive form authoring.
- Using Form Templates
It is an ideal form data model if you have investments in XFA-based HTML5 forms. It provides a direct way to convert your XFA-based forms into adaptive forms. Any existing XFA rules are retained in the associated adaptive forms. The resulting adaptive forms support XFA constructs, such as validations, events, properties, and patterns.
With adaptive forms, you can break down a form into logical sections. You can let users see a particular section and hide the rest. Or, you can specify which sections of a form you want users to see in case of a large forms. You can author adaptive forms to dynamically adapt to user inputs by adding or removing form sections based on user response, device, or work environment. End users can focus on filling one section at a time.
The touch-optimized UI for authoring adaptive forms is intuitive, and provides:
- Drag-and-drop functionality
- Standard form components
- Integrated repository for assets
When you create a new or edit an existing adaptive form, you use the following UI elements:
- Page toolbar
- Adaptive form page
- Component toolbar
To use classic authoring UI, replace /editor.html/ with /cf#/ in the form URL, which enforces the classic authoring mode.
The Sidebar allows you to
- See form content such as panels, components, fields, and layout.
- Edit component properties.
- Search, view, and use assets in your AEM Digital Asset Management (DAM) repository.
- Add components on your form.
The sidebar comprises the following browsers:
- Content browser
In the content browser, you can see
- Form Objects
Shows object hierarchy of the Form. Author can navigate to specific form component by tapping that element in Form Object Tree. Author can search objects and rearrange them from this tree.
- Data Model Objects
Lets you see the form model hierarchy.
It allows you to drag and drop form-model elements on the adaptive form. The added elements automatically get converted into form components while retaining their original properties. You can see data model objects when your form uses XML Schema Based or XDP based template.
- Form Objects
- Properties browser
Lets you edit the properties of a component. Properties change according to a component. To see properties of the adaptive form container:
Select a component, then tap > Adaptive Form Container, and then tap .
- Assets browser
Segregates different types content such as images, documents, pages, movies, and so on. For more information about finding assets in DAM, see Finding and Viewing Digital Assets.
- Components browser
Includes components that you can use to build an adaptive form. You can drag components from onto the adaptive form to add form elements, and configure added element as per the requirements. The following table describes the components listed in components browser.
|Adaptive Form Footer
||Adds the page header that typically includes logo of a corporation, title of the form, and summary.
|Adaptive Form Header||Adds the page footer that typically includes copyright information, and links to other pages.|
|Button||Adds a button, which you can configure to perform actions, such as save, reset, go next, go previous, and so on|
|Chart||Adds a chart that you can use in adaptive forms and documents for visual representation of two-dimensional data in repeatable panels and table rows.|
|Check box||Adds a check box|
|Date picker||Adds a calender field to pick a date|
|Document Fragment||Lets you add reusable components of a correspondence.|
|Document Fragment Group||Lets you add group of related document fragments that you can use in a letter template as a single unit.|
|Drop-down list||Adds a drop-down list - single or multi-select|
Adds a signing area where users can sign the form. It allows you to configure Adobe Document Cloud eSign services or scribble signatures signing services.
For adaptive forms using XDP Form template, the E-sign component shows the original form template associated with the adaptive form.
Note: Adaptive forms containing E-sign components do not
Adds a button that allows users to browse and attach supporting documents to the form.
You can associate a unique identifier to each attachment a user submits. To associate a unique identifier with each attachment, perform the following steps:
|File attachment listing
||Adds a field that lists all the attachments uploaded using the File Attachment component.
|Image||Allows you to insert an image|
|Numeric box||Adds a field for capturing numeric values|
|Panel||Adds a panel or subpanel|
|Password box||Adds a field for capturing a password|
|Radio button||Adds radio buttons|
|Previous button||Adds a button that users require to go back to the previous page or panel.
|Reset button||Adds a button to reset form fields|
|Scribble signature||Adds a field for capturing scribble signatures|
|Separator||Enables visual segregation of panels in your form|
|Static text||Allows you to specify static text|
|Submit button||Adds a submit button to submit the form to the configured submit action.|
|Summary||Adds summary text that authors specify. It shows up after the form is submitted.|
|Table||Adds a table that lets you organize data in rows and columns.|
|Terms and conditions
||Adds a field that authors can use to specify the terms and conditions for users to review before filling the form|
|Text box||Adds a text box in which a user can specify the required information|
For adaptive forms using XDP Form template, the Verify component renders the form for users to verify the information.
Note: Adaptive forms containing Verify components do not support anonymous users.
|Date input field||Use Date Input Field component in your form, to let customers fill day, month, and year separately in three boxes. You can customize the look and feel of the component, and change the date format. For example, you can let your customers input dates in MM/DD/YYYY or DD/MM/YYYY format.|
|Numeric Stepper||Use Numeric Stepper in your form to let your customers input a numeric value, which they can increase or decrease based on a predefined step.
|Image Choice||Use Image Choice component in your form to let your customers select an image to provide information. You can use the information to provide personalized services to your customers.
|Switch||Adds a switch that performs a toggle or enable/disable action.
You cannot add more than two options in the Switch component.
Since a switch can have only two values: On or Off, mandatory is not applicable. At-least one value is saved irrespective of the user input.
Each component has associated properties that control its appearance and functionality. To configure the properties of a component, tap the component and tap to open the component properties in the Properties browser.
A component is identified with its element name. When you tap , you can change the name of the component by changing the Element Name field value in the properties browser.
The Element Name field accepts letters, numbers, hyphens (-), and underscores (_) only. Other special characters are not allowed, and element name should begin with a letter.
The page toolbar on the top provides options that let you preview the form, change form properties, and edit form layout. You can preview the form when you author it, and make changes accordingly.
In the page toolbar, you see:
- Toggle Side Panel : Lets you show or hide Sidebar.
- Page information : Lets you view page properties, publish/unpublish a form, start a form workflow, and open the form in classic UI.
- Emulator : Lets you emulate the look of your form for different display sizes such as tablets and phones.
- Edit: Lets you select other modes such as: Edit, Style, Developer, and Design.
- Edit: Lets you edit the properties of the form and its components. For example, adding a component, dropping an image, and specifying mandatory fields.
- Style: Lets you style the appearance of components of your form. For example, in style mode, you can select a panel and specify its background color.
- Developer: Lets a developer to:
- Discover what forms are composed of.
- Debug what is happening where and when, which in turn helps to resolve issues.
- Design. Lets you enable or disable custom components, or out-of-the-box components that are not listed in the Sidebar.
- Preview: Lets you preview how the form looks when you publish it.
When you select a component, you see a toolbar that lets you work it. You get options to cut, paste, move, and specify properties of the components. Your options are:
A. Configure: When you tap Configure, component properties are visible in the sidebar. Configuring these properties let you customize the data capturing experience. You can change the element name of the component, specify the label text in the Title field of the component. Element name lets you capture values users enter using the component. In the component properties, you specify the behavior of the component, and manage user input. Configure properties in the sidebar to capture user data and use it for further processing. Properties for adaptive form container let you specify Client libraries, Layouts, Themes, Document of Record settings, save settings, submission settings, and metadata settings.
B. Copy: You can use the copy option to copy a component and paste it in other places in the form. When you paste a component, the pasted component gets a new element name but retains the properties of the copied component.
C. Cut: You can use the cut option to move a component from one place to another in the adaptive form.
D. Delete: Lets you delete the component from the form.
E. Insert: Lets you insert a component above the selected component.
F. Paste: Lets you paste the component you cut or copied using the options described above.
G. Edit rules: Lets you open the rule editor. For more information, see Rule Editor.
H. Group: Lets you select multiple components if you want to cut, copy, or paste more than one components together.
I. Parent: Lets you select the parent of a component. For example, a text field lies within a sub-section, which resides in a section. The section resides in the guide root panel, and the adaptive form container is the parent of a guide root panel. For a component, you can see all the options with the hierarchy sorted bottoms-up.
For example, if you tap Parent for a text box, you can see:
- Adaptive Form container
J. Others: Provides more options to work with the selected component.
- View SOM expression
- Save a panel as fragment (for panels only)
- Add child panel (for panels only)
- Add panel toolbar (for panels only)
- Replace (not for panels)
The adaptive form page is the actual form. It is like any other WCM page modeled as the WCM cq:Page component. The following image shows the content structure of a typical adaptive form.
The content structure typically contains the following primary components:
- guideContainer: The root of an adaptive form, which is marked as Start of adaptive form in the adaptive form UI. In this component, you can specify:
- Mobile Layout of the adaptive form: Defines the appearance of the form on mobile devices.
- Thank You page: Defines the page where the user is redirected after submitting the form.
- Submit Action: Defines how the form is processed on the server once the user submits the form.
- Styling: Specifies the path to the CSS file used to customize the appearance of the form.
- rootPanel: The root panel of an adaptive form. It can contain subpanels under the items node. Each panel including the root panel can have a layout associated with it. The layout of the panel dictates how the form is laid out. For example, in the Accordion layout, its items are laid out as Accordion steps.
- toolbar: An adaptive form container has an associated global toolbar, which is global to the form. This toolbar can be added using the Add Toolbar action in the edit bar, which allows authors to add actions, such as Submit, Save, Reset, and so on.
- assets: This node contains additional information used for form authoring. For example, form model details, localization details, and so on).