What goes in the manifest.xsf file?

The manifest.xsf file defines the contents of the form template and how it should be edited (e.g. rules, calculations, data connections, and so on)

Some critical values are stored in the <xsf: xDocumentClass> tag. In my example, I am referring to a form named “Issue”.

manifest.xsf part 1

The key entries are the list of files in the manifest.xsf. These define what makes up the InfoPath form package. Hence, the tag is called <xsf:package>. The list of files is contained in the <xsf:files> tag. Each of the file entries is in a <xsf:file> tag.

For example the myschema.xsd file is defined as:

     <xsf:property name=”namespace” type=”string” value=”http://schemas.microsoft.com/office/infopath/2003/myXSD/2006-01-01″></xsf:property>
     <xsf:property name=”editability” type=”string” value=”full”></xsf:property>
     <xsf:property name=”rootElement” type=”string” value=”myFields”></xsf:property>
     <xsf:property name=”useOnDemandAlgorithm” type=”string” value=”yes”></xsf:property>

File entries will be required for template.xml, sampledata.xml, Issue.xsl, Submit.xml, and Issues.xml. The Issues.xml file defines the controls and other view constructs shown to the user in the form. There is one .xsl file for each view. This is not the same as the Notes view.

There are many more settings that I will try to cover later. But this is also where the fields in the list are defined.

   <xsf:field name=”Description” columnName=”Description” node=”/my:myFields/my: Description” type=”xsd:text”></xsf:field>
<xsf:field name=”Product” columnName=”Product” node=”/my:myFields/my: Product” type=”xsd:text”></xsf:field>
<xsf:field name=”ProductArea” columnName=”ProductArea” node=”/my:myFields/my: ProductArea” type=”xsd:text”></xsf:field>
<xsf:field name=”AssignedTo” columnName=”AssignedTo” node=”/my:myFields/my:AssignedTo” type=”xsd:text”></xsf:field>
<xsf:field name=”Status” columnName=”Status” node=”/my:myFields/my:Status” type=”xsd:text”></xsf:field>
<xsf:field name=”ResolvedOn” columnName=”ResolvedOn” node=”/my:myFields/my:ResolvedOn” type=”xsd:string”></xsf:field>
<xsf:field name=”Created” columnName=”Created” node=”/my:myFields/my:Created” type=”xsd:string”></xsf:field>
<xsf:field name=”Author” columnName=”Author” node=”/my:myFields/my:Author” type=”xsd:text”></xsf:field>


You can also define script element files in the manifest.xsf file. But then you get into requirements for including code with your InfoPath form. That may prevent you from using the form with Form Services and converting it to a web form.