Do not go where the path may lead; go instead where there is no path and leave a trail.
Ralph Waldo Emerson
For months, people wondered what Microsoft's response to XForms would be. In the fall of 2002, Microsoft announced a new product code-named "XDocs" that appeared, at least on the surface, to be quite similar in functionality to an XForms implementation. The product came to be known officially as InfoPath and, due to the sheer size and influence of Microsoft, a subject of frequent comparison with XForms and other related technologies.
The information in this appendix is based on the Beta 2 Technical Refresh of Microsoft Office Infopath, so some details may change.
The InfoPath application, like an XForms implementation, converts user input into a new or modified XML, which can then be fed into a back-end system. A single application is used for both designing and completing a form. InfoPath is available only on the Windows platform, as part of Microsoft Office System 2003.
An InfoPath document is stored and processed as several files, which can be either compressed into a single CAB-compressed file with a file extension of .xsn or stored in the same directory.
This file is roughly analogous to an XForms Model, in that it contains the non-rendered basis for a form.
One or more XSLT files are always included, each one defining an InfoPath view, which presents an editable view of a portion of the XML data in an InfoPath form. Each XSLT accepts the XML instance as input, and produces an output format similar to HTML forms, but augmented with several InfoPath-specific features.
The XSLT portion doesn't have an equivalent in XForms, but the HTML-like format produced by the transformation is conceptually similar to the XForms User Interface.
This file contains the actual XML data that is edited by InfoPath. When the overall InfoPath form is published to a well-known location, the XML instance can be separately transported, via email or any other supported transport. A special pair of processing instructions included in this file help maintain the connection between the form data and the rest of the form:
<?mso-infoPathSolution solutionVersion="126.96.36.199" href="path/manifest.xsf" productVersion="11.0.5329" PIVersion="188.8.131.52" ?> <?mso-application-progid="InfoPath.Document"?>
When Internet Explorer encounters any XML document with these processing instructions, it attempts to launch the locally installed InfoPath application, pointing it towards the indicated manifest file.
It's possible for the InfoPath document to contain other user-inserted documents as well, including images, XML that can be used as a data source, and even HTML files that can be displayed in a special area called the Task Pane.