Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. From the Projects page, click the name of the project with the forms that will use the schema.
  2. Click Schemas from the left-hand menu.
  3. From the Schemas page, click the Add icon.
  4. On the Upload Schema Page, type a meaningful name for your schema and provide a description. (These are optional but highly recommended.) The Name and Description are each limited to 255 characters.
  5. Click Browse, locate the schema XSD file or zipfile with multiple related XSDs on disk.
  6. If there are multiple global elements in the zipfile(s) specify exact name (relative to the top level directory separated by the '/' character of the XSD file containing the root schema.
  7. Click Upload.

...

Tip

Important notes about uploading schemas:

  1. You may add as many schemas as you require require; however, you cannot have two or more data sources in your project with the same root element name.
  2. You may use global elements from uploaded schemas in any and all forms in the project.
  3. If you want to use the same schema elements in multiple projects, upload the schema to each project separately.   
  4. If your schema references another schema, you must upload all related schemas in a single zipfile.
  5. If you upload a zipfile all the schemas in the zipfile must be related.
  6. If you have unrelated schemas you must upload them individually or alone in their own zipfile.
Note

If you add a data source (XSD) to your form/workflow that has the root element name "form" that  uses by default for the palette control XSD, you will see an application error. To resolve, edit the form or workflow "Element Name" property and change it from the default "form" to whatever you want to call it.

Adding Elements to a Form’s Data Sources

...

Adding multiple data sources from the same namespace will cause a clash in your form. And in fact  will assist you by preventing you from making this mistake. A warning message is displayed in the Add Data Source panel when you click plus.

Similarly, multiple XSD files composing a single logical namespace is not supported. Instead, merge all XSD files for the same namespace into a single XSD file and then upload into .

Generating Controls from Schema Elements

...

Schema elements that specify element restrictions will automatically be displayed as selection controls. It will display as a dropdown if there are four or more valid choices and a radio button if there are fewer than four valid values. You can change the display type between radio and dropdown and checkbox using the Display As property.

Xsd:boolean types will automatically be displayed as a boolean checkbox. If checked, the value will be 'true' and if unchecked it will be 'false' if the element is required and no value if optional. You can set the label of the true and false options via the Labels property. However only the 1st option which maps to the 'true' choice will be displayed. If you add more then 2 labels the extra labels will be auto removed. If you set only a single label a 2d label of 'false' will be auto added for you.   

...

  • Change the control Name — although this does not change the underlying XSD element name.
  • Create rules that rely on the controls. 
  • Set default value for the controls.
  • Rearrange the location of controls in your form. This includes moving sections into tabs or panels. As noted above, in addition to the normal drag and drop restrictions, you may not drag any control into or out of a repeat control generated from a schema element. 
  • Modify the control’s Display As property to change how the control looks on the form. The Display As property appears only for controls created from schema elements and appears instead of the Control Type property that you see for controls you have dragged in from the palette.   
  • Change the control’s label. You’ll see the new label name in the Submissions Repository Data Tab and in Excel if you download the submission results. However, the Submissions XML document for the schema will reflect the original element name.

...

You can see an element’s XSD type by clicking the control in your form and hovering over the Properties area of the Forms Designer--the XSD type and the global element to which it is bound will be displayed as a tooltip. See Display As below. The only way to change the validation for a control generated from a schema element is to revise the schema and update the schema in  with the new version. The same is true for other changes you wish to make that you cannot accomplish in the Forms Designer.

...

This will change the control's appearance ''' but will not affect how the control validates data'''.   If you need to modify the control's validation behavior, you must update the schema.

To see the control's underlying data type and the global element to which it is bound,  you can hover over the property tab. The expanded Data Source shown in the image below, displays the XSD path stated in the hover - the control named giftidea, is part of a complex type control named address, which is bound to the global element, addressBook. The underlying data type for the giftidea control, which was changed to display as a dropdown, will remain xs:string. 

...

When you open (edit) any form/workflow that used the schema, the Data Sources area will be refreshed automatically. Do not delete the updated elements from the Data Sources area unless you are absolutely sure no controls in your form were generated from the elements in the previous version of the schema.  ''' Also, do not delete the elements and try to re-add them'''. This will cause any controls that relied on the schema to become unbounded and moved out of the schema XML document into the form's default XML document.

...

Tip

Searching submissions using a Repeat control from schema is not supported.

Deleting Unused Data Source Elements

...

Schemas Choice Groups are not yet supported. The 1st choice appear on the form as required even though only one is. Do not use elements of type Choice in your forms. 


Code Block
languagehtml/xml
<xs:element name="promotion">
  <complexType>
    <choice>
       <element name="Discount" /> 
       <element name="None" />
     </choice>
   </complexType>
</xs:element>

...

Schema controls can be initialized from an xml document using the form's doc action and manually set document URIs. See the integration chapter with details on initializing Forms with XML Documents.