Forms are vital components of many business processes. Forms provide the interface for providing crucial information: requests, approvals, who, what, how many, when, and so on. Forms are significant factors in determining how efficiently a process runs -- and in turn, how smoothly your entire business operates.
With this in mind, IBM has introduced IBM Workplace Forms, a family of products designed to help you create, deploy, and manage XML forms-based processes. With Workplace Forms, you can quickly and efficiently design standards-based, secure forms, using an easy-to-use WYSIWYG form designer. Workplace Forms also includes server components, including the Workplace Forms Server - API (which provides helper routines that make building these applications easier), and Workplace Forms Server - Webform Server (which provides servlet and portlet wrapper technology, allowing "zero-footprint" Web browsers to work with forms). And Workplace Forms includes a client forms viewer browser plug-in that provides users additional functionality, such as working with forms offline.
This article introduces Workplace Forms. We begin with a high-level overview of Workplace Forms and what it does (and doesn't do). We then take a closer look at the products that comprise the Workplace Forms family: Workplace Forms Designer, Workplace Forms Server, and Workplace Forms Viewer. We assume you're an experienced developer and/or designer of business processes, and have some familiarity with IBM Workplace products, such as IBM Workplace Collaboration Services.
Workplace Forms is built upon technology developed by PureEdge Solutions, a leading provider of electronic forms-based business process management software and services. IBM acquired PureEdge in mid-2005, and quickly incorporated its technology into the IBM Workplace product family.
With Workplace Forms, you can create forms that automate the capture and processing of business information. This helps speed up transactions, and increases operational efficiency. Workplace Forms uses open standards for data integration, providing a front-end to service-oriented architecture (SOA) based component applications. Workplace Forms is 100 percent XML, and supports JSR-168, JSR-170, Java 2 Platform, Enterprise Edition (J2EE), and Web services.
Workplace Forms provides a single envelope for all XML components (presentation, business logic, data, and XML attachments). You can build dynamic e-forms that can branch or change course, depending on user input. Security features help ensure your transactions are safe and haven't been tampered with. You can store and archive entire e-form records, and parse data for later reuse. A built-in compression feature helps reduce form size.
You can integrate Workplace Forms with a number of other IBM technologies, including IBM Workplace products, Lotus Notes/Domino, DB2, WebSphere Portal, and MQ Workflow. Workplace Forms also integrates with most PKI technology. And although the product is a recent addition to the IBM Workplace family, it is based on proven technology, used by 3.5 million users worldwide.
As mentioned earlier, Workplace Forms consists of three products:
- IBM Workplace Forms Designer is the primary tool for creating e-forms. Workplace Forms Designer provides an easy-to-use interface, with user-friendly features, such as drag-and-drop creation of form components.
- IBM Workplace Forms Server consists of three components. The Workplace Forms Server - API provides integration capabilities. The Workplace Forms Server - Deployment Server is a light-weight installation system for deploying the IBM Workplace Forms Viewer (described later in this section) to the user's desktop. The Workplace Forms Server - Webform Server is a server-side component that translates XFDL into HTML/JavaScript, providing a zero-footprint "thin client" rendering system.
- IBM Workplace Forms Viewer is a browser plug-in that provides enhanced features to users working with Workplace Forms applications. (Note that Workplace Forms Viewer isn't a requirement for working with Workplace Forms forms; users can use an out-of-the-box Web browser to do this. Workplace Forms Viewer, however, provides more features and functionality.)
Experienced Notes/Domino users will notice that Workplace Forms follows roughly the same basic client/server/designer structure as Notes, Domino, and Domino Designer (with some significant differences, of course). This may help our Notes/Domino audience understand how these three products relate to each other.
The primary target audience for Workplace Forms are business analysts and others involved in the design and implementation of business processes within an organization. Some of these may be existing processes, based on inefficient or obsolete forms (which may even be paper-based -- yes, they're still out there). Workplace Forms will help you create efficient business processes, and bring old processes into the 21st century. Extensive programming skills are not required; Workplace Forms uses a form-centric programming language based on declarative business rules (XFDL). Figure 1 shows an example of a form displayed within Workplace Forms Designer.
Figure 1. Workplace Forms form

In technical terms, Workplace Forms consists of document-centric component technology, designed to be integrated with middleware, such as portals, content repositories, and workflow systems. Workplace Forms can be integrated with other IBM Workplace applications, through custom portlets, servlets, or scripts.
Workplace Forms stores form documents in a class of XML documents called Extensible Forms Description Language (XFDL). XFDL was defined to standardize the process of digitally representing complex forms, such as business and government forms. XFDL supports high-precision layout, integrated computations and input validation, digital signatures, and other features. (For more on XFDL, see the Workplace Forms XFDL Specification 2.5, which you can download from the Workplace Forms documentation.)
On the client side, Workplace Forms applications can be viewed through a standard Web browser, or through a browser with the Workplace Forms Viewer plug-in for a richer user experience. When using Workplace Forms Viewer, users can work with forms offline. Digital signatures are also supported. Data, logic and presentation can be signed, allowing for a complete transaction record.
Workplace Forms Designer and Workplace Designer
It may help to understand how Workplace Forms Designer relates to the similarly named IBM Workplace Designer, which IBM introduced earlier in 2005. Both Workplace Forms Designer and Workplace Designer are development tools, designed to build graphical, user-facing IBM Workplace applications. But there are significant differences between the two. Workplace Forms Designer lets you create XML e-forms for automating forms-based business processes. Workplace Designer is intended for script developers who want to build re-usable components (deployed as portlets) for IBM Workplace products, such as Workplace Collaboration Services and Workplace Services Express. In general, the necessary level of prior development experience is not as rigorous with Workplace Forms Designer as it is with Workplace Designer (although even very experienced developers will find Workplace Forms Designer useful for creating e-forms). For more on Workplace Designer, see the developerWorks Lotus articles, "Introducing IBM Workplace Designer" and "An inside look at IBM Workplace Designer."
The following sections look at the three Workplace Forms products in more detail.
Workplace Forms Designer is the development component of Workplace Forms. Like Domino Designer and Workplace Designer, Workplace Forms Designer is a tool for creating user-facing applications, to be hosted on the server and used by clients. Figure 2 shows the Workplace Forms Designer interface.
Figure 2. Workplace Forms Designer

Workplace Forms Designer lets you build forms quickly and easily. You can re-use existing form components, so you can leverage earlier work and quickly design and build new forms. Re-using components also helps you maintain a consistent "look and feel" across all your forms. Forms can be designed once, and then displayed by a variety of Web browsers and rich clients.
It doesn't take a great deal of prior programming experience to create forms with Workplace Forms Designer. In fact, you can create an e-form from an existing paper form, using a feature called template image. This feature lets you load a scanned image of a paper form into Workplace Forms Designer (in JPG or BMP format). This image is then displayed in the Workplace Forms Designer interface, where you can trace over all the elements, reproducing the paper form pixel-for-pixel.
In addition to scanning in a paper form and using the template image to create a new form, Workplace Forms Designer offers three other ways to create a form:
- From scratch, starting with a blank workplace. Designing a form from scratch lets you create the exact content and layout you want. You can also take advantage of all the types of items offered by Workplace Forms Designer, because you won't be constrained by the original paper form or existing online form. You should create forms from scratch when there are no existing online or paper forms to leverage (or they're all so bad they're not worth saving!).
- Using an existing Workplace Forms sample form as a starting point, and adapting it to your needs. This is especially useful if you have little or no previous form design experience, or if you're simply in a hurry. There are four sample forms available:
graphicExamples.xfdl offers examples of simple bitmaps and formulas for controlling how they work online. This form is intended to demonstrate what can be done with Workplace Forms Designer, and is not intended as a "real world" form. However, this form can help you "get your feet wet" with form design, and you can use its components in your own forms.
policy.xfdl is a sample insurance policy form. This form includes some more advanced features, such as total values, signatures, mandatory fields, and an "auto-populate" feature that helps fill in the form for the user.
por.xfdl is a sample purchase order form. This form includes formulas to calculate totals, and changes images based on these calculations.
purchaseMulti.xfdl is a form consisting of several purchase orders. - Converting an existing proprietary (non-Workplace Forms) form (in PDF, Microsoft Word, Accelio, Jetform, or other format) to XFDL, and importing it into Workplace Forms Designer. This requires assistance from IBM Workplace Forms Support.
After you create a form, you can preview it to prior to deployment, to ensure it's working the way you expect.
Although designed to be usable by an inexperienced application developer, Workplace Forms Designer does offer more advanced features that veteran programmers can take advantage of. For example, Workplace Forms Designer can read client Java and C/C++ extensions. This lets you create rich form applications by creating custom extensions, or leveraging existing business logic. Workplace Forms Designer also enables Web Service Client support, providing faster form design by leveraging existing assets (for example, applications) through Web services and service-oriented architectures.
Workplace Forms Designer interface
A key aspect of the Workplace Forms Designer is ease-of-use, providing intuitive features that help make designing and creating forms as painless as possible. The Workplace Forms Designer interface includes design tools such as grids, rulers, "snap-to" functionality, and absolute and relative positioning. The user interface is completely WYSIWYG, to help ensure that little is lost between the form as originally envisioned and its ultimate implementation. The drag-and-drop feature lets you create links between form fields and existing XML schemas, without any actual programming required.
One commonly used feature is rulers. Rulers help you size and position items precisely (see figure 3).
Figure 3. Rulers

Notice the red lines in figure 3. These follow your mouse pointer as you move it around the workplace, letting you know the exact coordinate of your current position at all times.
A related feature is guides (see figure 4). These can be "dragged out" of rulers, providing a vertical or horizontal line to reference as you place components on the workspace.
Figure 4. Guides

Items placed near these guides automatically "snap" to them, allowing for precise positioning on the page.
The Workplace Forms Designer interface also offers a set of toolbars, to provide easy access to all the items that can be placed on a form. Figure 5 shows the standard toolbar.
Figure 5. Standard toolbar
One of the biggest advantages of an online form, compared to a paper form, is the ability to build "intelligence" into the online form. XFDL forms can provide sophisticated error checking as the user fills out the form, preventing possible errors (and wasted time as incomplete or erroneous forms are returned to the sender). Workplace Forms Designer allows you to add error checking to your forms, ensuring that the form is properly and completely filled out before the user submits it for further processing. This lets you enable client-side and server-side validation and enforcement of your business rules, eliminating most rework and providing secure transactions and dynamic routing.
To help you get started, Workplace Forms Designer includes a sample form with built-in intelligence. You can copy this functionality into your own forms, and then adapt it to your requirements as necessary.
Workplace Forms Designer requires a computer with a minimum 500 MHz CPU (1.5 GHz recommended), 256 MB RAM (1 GB recommended), 200 MB disk space, and a display with 1024 x 768 resolution in 16-bit color. Supported operating systems are Microsoft Windows 2000 service pack 2, service pack 3, service pack 4; and Microsoft Windows XP service pack 1, service pack 2.
Workplace Forms Designer also requires Microsoft Internet Explorer 4.0, or later, for viewing the online help, and IBM Workplace Forms Viewer 2.5 for previewing forms. (We discuss Workplace Forms Viewer later in this article.)
For more information on Workplace Forms Designer, see its product documentation.
As we mentioned earlier, the Workplace Forms Server consists of three basic components:
- Workplace Forms Server - Webform Server provides the main XFDL/HTML translation and related functions. The Webform Server translates Workplace Forms forms (in XFDL format) and renders them in HTML or JavaScript format. This allows Web browser users to view and work with the forms, enter information into them, approve, sign, and submit the forms, all with no additional software required at the client end (although the Workplace Forms Viewer is also available to clients, to provide a richer experience while working with forms). The Webform Server can then receive the completed forms in HTML, translate them back into XFDL, and pass them along to your application for further processing.
- Workplace Forms Server - API consists of specialized functions that allow C and Java programmers to access XFDL forms directly. The API is composed of two primary sections, the Form Library (for working with XFDL forms as structured data types) and the FCI Library (for creating your own functions). Install this component if developers in your environment need to work with Workplace Forms APIs when creating applications. Use the API to create portlets or servlets that can parse and interact with forms, or to create extensions for Workplace Forms Viewer. These extensions add custom functionality to the Viewer.
- Workplace Forms Server - Deployment Server allows you to automatically distribute software to your users (a very useful feature in environments with limited administration resources, or if you want to control and standardize your users' desktops). The Deployment Server is often used to distribute the Workplace Forms Viewer to users. It can also update software when required, automatically checking each user's version, and updating it when necessary. Install this component if you intend to use these automated deployment capabilities.
Workplace Forms Server - Webform Server architecture
The Webform Server consists of the Translator, the Log Server, and a portlet/servlet. Figure 6 illustrates how these interact.
Figure 6. Webform Server architecture

The portlet/servlet controls the basic incoming and outgoing form processing. This component passes form requests to the Translator for form conversion between XFDL and HTML. Optionally, it interacts with other applications, and/or an external forms repository. Each form application has its own portlet/servlet; it is up to the developer to create the portlet/servlet for a particular application. The Webform Server provides a framework for creating the portlet/servlet. The Webform Server documentation also includes complete documentation for how to create, configure, and implement your own portlets and servlets, including descriptions of the available methods and (for more advanced programmers) APIs. (If you plan to use APIs, you must install the separate Workplace Forms Server - API.) Servlets and portlets can be relatively simple, or more sophisticated. You can even design a portlet that uses multiple "sub-portlets" (useful for displaying multiple panes to the user). To help you get started, the Webform Server comes with a sample servlet and sample portlet, which you can use and adapt to the needs of your own forms application.
The Translator consists of two sub-components, the access control server and the file cache. The Translator performs the conversion from XFDL to HTML, and back again. When it translates a form into HTML, the Translator stores the original XFDL form in the file cache, and metadata in the access control server. To convert the form from HTML back to XFDL, the Translator retrieves the original form from the file cache, and transfers the data received from the completed HTML form.
The Log Server records all transactions performed by the portlet/application and Translator. This can be useful for performance analysis, error checking, and troubleshooting.
These components work together to execute the three basic tasks performed by the Webform Server: forms requests (retrieving a requested XFDL form, translating it to HTML or JavaScript, and presenting it to the user), forms submissions (receiving a completed HTML form from the user, converting it back into XFDL, and processing it as appropriate), and "special actions" (for example, re-computing data on the form).
You can install the Workplace Forms Server on a single server, or in a distributed environment. You may choose a distributed installation if your site handles a high volume of traffic, or if you're hosting a large number of forms applications. You can also install the Workplace Forms Server on a cluster, for better load-balancing and reliability.
The hardware/software requirements for the Workplace Forms Server are as follows:
Webform Server
To run a Webform Server application from a servlet, you need either IBM WebSphere Application Server 5.0.x or later, or Tomcat 5.0.28 or later. To run a Webform Server application from a portlet, you need IBM WebSphere Portal Server 5.0.2 (JSR-168 enabled) or later. Any Web (HTTP) server is supported.
Clients accessing the Webform Server must be running Microsoft Windows IE 6.0 service pack 1 on Microsoft Windows XP and Microsoft Windows 2000, or IE 6.0 for Microsoft Windows XP service pack 2.
API
In a Windows environment, one of the following is required:
- C application development environment for 32-bit applications, such as IBM Visual Age C++ or Microsoft Visual C++.
- Java development environment, such as Java Developer's Kit V1.2, or later.
- COM-compliant development environment, such as Microsoft Visual Basic.
In a Unix environment, one of the following is required:
- Any application development environment that can communicate with C libraries.
- Java Developer's Kit V1.2, or later.
- For AIX, IBM Java Runtime Environment 1.3.0, or later.
Deployment Server
On the server, you need one of the following servlet runners:
- JRUN 3.1 or later.
- Tomcat 4.0 or later.
Web server is required (for example, the internal Web server of the servlet runner, or any Web server that supports the servlet runner). In addition, one or both of the following digital certificates is required to configure the Deployment Server:
- Code Signing Certificate for Microsoft browsers.
- Code Signing Certificate for Netscape browsers.
For clients, supported browsers are Microsoft Windows IE 5.0, or higher, and Netscape 4.8, or higher. For both browsers, support for JavaScript and Java applets must be enabled for all browsers. Supported operating systems include:
- Microsoft Windows 98
- Microsoft Windows Me
- Microsoft Windows 2000
- Microsoft Windows XP
- Microsoft Windows NT4 service pack 6a
Complete installation, configuration, and maintenance information for Workplace Forms Server can be found in the product documentation.
The Workplace Forms Viewer is the "enhanced" client component of Workplace Forms. As mentioned previously, users can access Workplace Forms applications using a zero-footprint Web browser, via the Webform Server. However, the Workplace Forms Viewer provides additional functionality, such as working with forms offline.
The Workplace Forms Viewer (see figure 7) provides full connectivity with real-time integration using Web Services.
Figure 7. Workplace Forms Viewer

The Workplace Forms Viewer standard interface includes the Viewer window, a title bar, and a toolbar. The title bar appears at the top of the window and displays the name of the form (or, in the case of a multi-page form, it can show the name of the current page). The toolbar (see figure 8) contains a set of buttons to perform standard form-related activities (open form, save form, print form, mail form, and so on).
Figure 8. Workplace Forms Viewer toolbar
With the Workplace Forms Viewer, users can open forms, enter information into them, approve and sign them, and submit them for further processing. The interface offers a number of usability features, such as keyboard commands, zoom in/out, and spell checking (based on a user-managed dictionary), to help users quickly and accurately complete the fields in the form. You can also "mail-enable" forms so you can send them to other users, and work with attached files included with the form.
You can configure the Workplace Forms Viewer through a set of user-defined preferences. These help determine how the Workplace Forms Viewer looks and functions. For instance, you can change accessibility settings, or enable the ability to mail forms. You can also set more advanced preferences, such as how a form appears on your screen, and the ability to work offline, as well as select security-related settings (verifying the digital signature of another user, for example).
The minimum system requirements for the Workplace Forms Viewer are a PC equipped with a 500 MHz CPU, with 256 MB RAM, 200 MB disk space, and 800x600 16-bit color display. Supported operating systems include Microsoft Windows 2000 service pack 2, service pack 3, service pack 4; and Microsoft Windows XP service pack 1, service pack 2. The Workplace Forms Viewer can run stand-alone, or within one of the following browsers:
- Microsoft Windows IE 6.0 service pack 1, or 5.5 service pack 2
- Netscape 7.0, 7.1, 7.2
- Mozilla 1.7
You can learn more about the Workplace Forms Viewer by reading its product documentation.
This concludes our overview of IBM Workplace Forms. As you can see, Workplace Forms is a full-featured product family for developing, hosting, and using advanced electronic forms, to help improve the speed and efficiency of your business processes. Application developers will find Workplace Forms Designer powerful and easy to use, providing an environment that allows you to create and deploy your forms rapidly and with a minimum of fuss. System administrators will welcome the straightforward management and deployment features offered by the Workplace Forms Server. And users will enjoy the flexibility of the Workplace Forms Viewer, allowing them to take advantage of its rich features, such as offine mode. For more information, check out the IBM Workplace Forms product page.
- Learn more about IBM Workplace Forms by visiting its product page.
- You can also consult the IBM Workplace Forms documentation for detailed information about how this product works.
- For information about all IBM Workplace products, visit developerWorks Workplace.
- Get involved in the developerWorks community by participating in
developerWorks blogs.
Dick McCarrick is a content developer for developerWorks Lotus (formerly the Lotus Developer Domain) and developerWorks Workplace. Previously he was a member of the Domino/Notes Documentation team for over 11 years, playing a variety of roles in documenting many major components of Domino and Notes. He also wrote the occasional article for Iris Today (including Ask Professor INI) before joining the Notes.net/Lotus Developer Domain team permanently in 2002. In his spare time, Dick's leisure activities include running, fishing, woodworking, and reading about the natural sciences. An avid astronomer, he's former director of the Bridgewater (Mass.) State College Observatory. Dick lives in Vermont.
