inset
Forms Processing with InfoPath
May 30, 2005

The Microsoft platform closest to Visual Studio 2005 Tools for Office (VSTO 2005) and Adobe PDF for document processing is InfoPath, a forms design and data entry product that ships as a stand-alone product and with Office 2003 Professional Enterprise Edition. Microsoft has many platforms for forms processing solutions, including Windows Forms, ASP.NET Web Forms, and the Visual Basic 6 forms engine (formerly code-named Ruby). InfoPath uses XML to represent both the layout of forms and the data in them, and can validate input from users and route the resulting XML through business processes and corporate applications.

Microsoft has a number of server-side components to support processing of InfoPath forms and the resulting XML data. For example, Windows SharePoint Services, the Web hosting platform of Windows Server 2003, includes a Form Library component for distributing forms and receiving captured data. BizTalk Server includes XML data synchronization and routing features, and Microsoft partners such as K2.net and Captaris have extended these features to support workflow for document processing.

However, InfoPath also presents a number of disadvantages for forms processing. InfoPath can't generally replicate the look of existing paper forms as both PDF and Microsoft's upcoming XAML format can. Also, InfoPath has no free reader—users must have a full copy of the InfoPath product to enter data in a form.

Compared to Word or Excel, InfoPath also has disadvantages: Its user interface is less familiar and it doesn't readily support ad hoc changes to documents (such as inserting calculations and comments). VSTO 2005 does support development for InfoPath, but support is not as complete as that for Word and Excel. For example, developers can't debug InfoPath forms inside the Visual Studio integrated development environment (IDE), and client-side InfoPath code depends on COM APIs that are getting minimal maintenance from Microsoft and might not be preserved in future versions of Office, whereas Word and Excel are supported by managed APIs that will carry forward at least as far as Office 12.

In general, InfoPath makes the most sense for projects fitting the following profile:

  • There's an immediate need that can't wait for VSTO 2005 or XAML and associated tools
  • All clients are upgrading or have already upgraded to Office 2003 Professional Enterprise
  • Users are mainly entering data in forms rather than editing and formatting text, or performing calculations and analysis
  • Investment in client-side code can be kept relatively small.
          Back to associated article: Office Document Processing Platform Emerging