The XForms Smartlet

Smartsite 7.2 - ...

In Smartsite 7.2, the XForms smartlet is dependant on Scf2. To enable Scf2 you must set the targetfolder parameter of the se:scf macro in your rendertemplate to "/Scf2".

The XForms Engine, and the XForms render Devices, are completely independent of Smartsite, and can be used in any .NET environment. This is in line with the abstract nature of XForms definitions. It is not without reason that the specification speaks about 'triggers' instead of 'buttons, for example. Even non-web applications could host the Smartsite XForms Engine, where rendering could use anything from Windows Forms, XAML, or other technologies.

In Smartsite, XForms integration is done using a Smartlet. The reasons for this are:

  • Consistency with other applications
  • Ease of deployment (Smartlet Editor, Smartlet Presets)
  • Standardized communication layer (Ajax/Json Smartlet communication)

So, the sml_xforms() Smartlet is used whenever an XForms form is to be embedded in a page.

Properties

Name Type Description Required Default Notes
form string Form Xml or Locator of the Form. Yes -
debug boolean Set to true to output XForms debug information. No
rendermode string (xhtml10strict|html5) Rendering mode. No xhtml10strict
statepersistance string (simple|full)

Used to set the way the XForms Engine will keep its state during a user session

In 'simple' mode, XForms user session state will be heavily compressed
using gzipped streams.
In 'full' mode, memory usage will be a lot higher, but performance of large forms will be noticeably better.

No simple Advanced use
formattingtemplate string Id of the formatting template to use. No -
formattingtemplatelibrary string Locator to the Formatting Template library. No -
smtpfromaddress string Email address to use when doing email submissions. No -
uservalues datatable User values to simulate input. No - Used for testing purposes
applicationid string No -
restoresessioniffound boolean No false
sessionstorage string (datacache|httpsession|workspace) No datacache
payload json Used to pass XForms client data over to the server, embedded in the Smartlet's Json data. n/a - internal, reserved
result string The Result of the XForms Render Device, to be passed to the XForms Client Layer for processing. n/a - internal, reserved