Form XML schema

Si applica a: CRM 2016 on-prem, CRM Online

The following is the schema definition for form customizations for Microsoft Dynamics CRM. For more information, see Personalizzare moduli di entità. You can find this schema in the SDK\Schemas\FormXML.xsd file in the SDK package. Scarica il pacchetto Microsoft Dynamics CRM SDK.

Schema

<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           elementFormDefault="qualified"
           attributeFormDefault="unqualified">
  <xs:include schemaLocation="RibbonCore.xsd" />
  <xs:element name="form"
              type="FormType" />
  <xs:complexType name="ClientFileIncludeAttributeType">
    <xs:attribute name="src"
                  use="required">
      <xs:simpleType>
        <xs:restriction base ="xs:string">
          <xs:pattern value ="(\$webresource:|/)(.)+"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>

  </xs:complexType>
  <xs:complexType name="ClientResourcesType">
    <xs:all>
      <xs:element name="internalresources"
                  minOccurs ="0"
                  maxOccurs ="1">
        <xs:complexType>
          <xs:all>
            <xs:element name ="clientincludes"
                        minOccurs ="0"
                        maxOccurs ="1">
              <xs:complexType >
                <xs:choice minOccurs="0"
                           maxOccurs ="100000" >
                  <xs:element name ="internaljscriptfile"
                              type="ClientFileIncludeAttributeType"
                              minOccurs ="0"
                              maxOccurs ="1" />
                  <xs:element name ="internalcssfile"
                              type="ClientFileIncludeAttributeType"
                              minOccurs ="0"
                              maxOccurs ="1" />
                </xs:choice>

              </xs:complexType >
            </xs:element>
            <xs:element name ="clientvariables"
                        minOccurs="0"
                        maxOccurs ="1">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name ="internaljscriptvariable"
                              minOccurs ="0"
                              maxOccurs ="100000">
                    <xs:complexType>
                      <xs:attribute name="name"
                                    use ="required">
                        <xs:simpleType>
                          <xs:restriction base ="xs:string">
                            <xs:pattern value="LOCID_([A-Za-z0-9_])+"/>
                            <xs:maxLength value ="32"/>
                          </xs:restriction>
                        </xs:simpleType>
                      </xs:attribute>
                      <xs:attribute name ="resourceid"
                                    use="required" >
                        <xs:simpleType>
                          <xs:restriction base ="xs:string">
                            <xs:pattern value="([A-Za-z0-9_.])+"/>
                          </xs:restriction>
                        </xs:simpleType>
                      </xs:attribute>

                    </xs:complexType>
                  </xs:element>
                </xs:sequence>

              </xs:complexType>
            </xs:element>
          </xs:all>

        </xs:complexType>
      </xs:element>
      <xs:element name="isvresources"
                  minOccurs ="0"
                  maxOccurs ="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name ="clientincludes"
                        minOccurs ="0"
                        maxOccurs ="1">
              <xs:complexType >
                <xs:sequence>
                  <xs:element name ="webresource"
                              minOccurs ="0"
                              maxOccurs ="100000">
                    <xs:complexType>
                      <xs:attribute name="path"
                                    type="xs:string"
                                    use ="required"/>
                      <xs:attribute name="type"
                                    use ="required">
                        <xs:simpleType>
                          <xs:restriction base="xs:string">
                            <xs:enumeration value="jscript"/>
                            <xs:enumeration value ="css" />
                          </xs:restriction>
                        </xs:simpleType>
                      </xs:attribute>

                    </xs:complexType>
                  </xs:element>
                </xs:sequence>

              </xs:complexType>
            </xs:element>
          </xs:sequence>

        </xs:complexType>
      </xs:element>
    </xs:all>

  </xs:complexType>
  <xs:complexType name="FormDisplayConditionsType">
    <xs:choice minOccurs="0"
               maxOccurs="1">
      <xs:element name="Everyone"
                  minOccurs="1"
                  maxOccurs="1">
        <xs:complexType>

        </xs:complexType>
      </xs:element>
      <xs:element name="Role"
                  minOccurs="1"
                  maxOccurs="unbounded">
        <xs:complexType>
          <xs:attribute name="Id"
                        type="FormGuidType"
                        use="required" />

        </xs:complexType>
      </xs:element>
    </xs:choice>
    <xs:attribute name="FallbackForm"
                  type="xs:boolean"
                  use="optional" />
    <xs:attribute name="Order"
                  type="xs:integer"
                  use="optional" />

  </xs:complexType>
  <xs:complexType name="FormLocalizedLabel">
    <xs:attribute name="LCID"
                  type="xs:integer" />
    <xs:attribute name="Text"
                  type="xs:string" />

  </xs:complexType>
  <xs:complexType name="FormLocalizedTitles">
    <xs:sequence minOccurs="1"
                 maxOccurs="unbounded">
      <xs:element name="Title"
                  type="FormLocalizedLabel" />
    </xs:sequence>

  </xs:complexType>
  <xs:complexType name="FormNavBarAreasType">
    <xs:sequence>
      <xs:element name="NavBarArea"
                  minOccurs="0"
                  maxOccurs="unbounded">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Titles"
                        minOccurs="1"
                        maxOccurs="1"
                        type="FormLocalizedTitles" />
          </xs:sequence>
          <xs:attribute name="Id"
                        type="xs:string"
                        use="required" />

        </xs:complexType>
      </xs:element>
    </xs:sequence>

  </xs:complexType>
  <xs:complexType name="FormNavBarType">
    <xs:choice minOccurs="0"
               maxOccurs="100000">
      <xs:element minOccurs="0"
                  maxOccurs="1"
                  name="NavBarItem">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Titles"
                        minOccurs="1"
                        maxOccurs="1"
                        type="FormLocalizedTitles" />
          </xs:sequence>
          <xs:attribute name="Icon"
                        type="xs:string"
                        use="required" />
          <xs:attribute name="Url"
                        type="xs:string"
                        use="required" />
          <xs:attribute name="Id"
                        type="xs:string"
                        use="required" />
          <xs:attribute name="PassParams"
                        type="FormCRM_Boolean"
                        use="optional" />
          <xs:attribute name="Sequence"
                        type="xs:nonNegativeInteger"
                        use="optional" />
          <xs:attribute name="Area"
                        type="xs:string"
                        use="optional" />
          <xs:attribute name="Client"
                        type="xs:string"
                        use="optional" />
          <xs:attribute name="AvailableOffline"
                        type="xs:boolean"
                        use="optional" />

        </xs:complexType>
      </xs:element>
      <xs:element name="NavBarByRelationshipItem"
                  minOccurs="0"
                  maxOccurs="1">
        <xs:complexType>
          <xs:all>
            <xs:element name="Titles"
                        minOccurs="0"
                        maxOccurs="1"
                        type="FormLocalizedTitles" />
            <xs:element name="ToolTip"
                        minOccurs="0"
                        maxOccurs="1">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Titles"
                              minOccurs="1"
                              maxOccurs="1"
                              type="FormLocalizedTitles" />
                </xs:sequence>

              </xs:complexType>
            </xs:element>
            <xs:element name="Privileges"
                        minOccurs="0"
                        maxOccurs ="1">
              <xs:complexType>
                <xs:sequence >
                  <xs:element name ="Privilege"
                              minOccurs ="1"
                              maxOccurs ="100000">
                    <xs:complexType>
                      <xs:attribute name ="Entity"
                                    type ="xs:string"
                                    use ="required"/>
                      <xs:attribute name="Privilege"
                                    type ="xs:string"
                                    use ="required"/>

                    </xs:complexType>
                  </xs:element>
                </xs:sequence>

              </xs:complexType>
            </xs:element>
          </xs:all>
          <xs:attribute name="RelationshipName"
                        type="xs:string"
                        use="required" />
          <xs:attribute name="Id"
                        type="xs:string"
                        use="required" />
          <xs:attribute name="Area"
                        type="xs:string"
                        use="optional" />
          <xs:attribute name="TitleResourceId"
                        type="xs:string"
                        use="optional" />
          <xs:attribute name="Client"
                        type="xs:string"
                        use="optional" />
          <xs:attribute name="AvailableOffline"
                        type="xs:boolean"
                        use="optional" />
          <xs:attribute name="Icon"
                        type="xs:string"
                        use="optional" />
          <xs:attribute name="Sequence"
                        type="xs:nonNegativeInteger"
                        use="optional" />
          <xs:attribute name="Show"
                        type="xs:boolean"
                        use="optional" />
          <xs:attribute name="ViewId"
                        type="FormISVGuid"
                        use="optional" />

        </xs:complexType>
      </xs:element>
    </xs:choice>
    <xs:attribute name="ValidForCreate"
                  type="FormCRM_Boolean"
                  use="optional" />
    <xs:attribute name="ValidForUpdate"
                  type="FormCRM_Boolean"
                  use="optional" />

  </xs:complexType>
  <xs:complexType name="FormNavigationType">
    <xs:all>
      <xs:element name="NavBarAreas"
                  type="FormNavBarAreasType"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="NavBar"
                  type="FormNavBarType"
                  minOccurs="0"
                  maxOccurs="1" />
    </xs:all>

  </xs:complexType>
  <xs:complexType name ="FormParametersType">
    <xs:choice minOccurs="1"
               maxOccurs ="100000">
      <xs:element name ="querystringparameter"
                  type="FormQueryStringParameterType"
                  minOccurs ="0"
                  maxOccurs ="1" />
    </xs:choice>

  </xs:complexType>
  <xs:complexType name="FormQueryStringParameterType">
    <xs:attribute name="name"
                  type="FormQueryStringParameterNameAttributeType"
                  use="required" />
    <xs:attribute name="type"
                  type="FormParameterAttributeType"
                  use="required" />

  </xs:complexType>
  <xs:complexType name="FormType">
    <xs:all>
      <xs:element name="ancestor"
                  minOccurs="0"
                  maxOccurs="1">
        <xs:complexType>
          <xs:attribute name="id"
                        type="FormGuidType"
                        use="required" />
        </xs:complexType>
      </xs:element>
      <xs:element name="hiddencontrols"
                  minOccurs="0"
                  maxOccurs="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="data"
                        minOccurs="0"
                        maxOccurs="unbounded">
              <xs:complexType>
                <xs:attribute name="id"
                              type="xs:string" />
                <xs:attribute name="datafieldname"
                              type="xs:string" />
                <xs:attribute name="classid"
                              type="FormGuidType" />
                <xs:attribute name="relationship"
                              type="xs:string" />

              </xs:complexType>
            </xs:element>
          </xs:sequence>

        </xs:complexType>
      </xs:element>
      <xs:element name="controlDescriptions"
                  minOccurs="0"
                  maxOccurs="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="controlDescription"
                        minOccurs="0"
                        maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="customControl"
                              minOccurs="0"
                              maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="parameters"
                                    minOccurs="0"
                                    maxOccurs="1">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:any minOccurs="0"
                                      maxOccurs="unbounded"
                                      processContents="skip"></xs:any>
                            </xs:sequence>
                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>
                      <xs:attribute name="id"
                                    type="FormGuidType"
                                    use="required" />
                      <xs:attribute name="formFactor"
                                    type="xs:integer"
                                    use="optional" />
                      <xs:attribute name="name"
                                    type="xs:string"
                                    use="optional" />
                      <xs:attribute name="version"
                                    type="xs:string"
                                    use="optional" />

                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:attribute name="forControl"
                              type="xs:string"
                              use="required" />

              </xs:complexType>
            </xs:element>
          </xs:sequence>

        </xs:complexType>
      </xs:element>
      <xs:element name="tabs"
                  minOccurs="1"
                  maxOccurs="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="tab"
                        minOccurs="1"
                        maxOccurs="100">
              <xs:complexType>
                <xs:all>
                  <xs:element name="labels"
                              type="FormXmlLabelsType"
                              minOccurs="0"
                              maxOccurs="1" />
                  <xs:element name="tabheader"
                              type="FormXmlHeaderFooterType"
                              minOccurs="0"
                              maxOccurs="1"/>
                  <xs:element name="tabfooter"
                              type="FormXmlHeaderFooterType"
                              minOccurs="0"
                              maxOccurs="1"/>
                  <xs:element name="columns"
                              minOccurs="1"
                              maxOccurs="1">
                    <xs:complexType>
                      <xs:sequence>
                        <xs:element name="column"
                                    minOccurs="1"
                                    maxOccurs="3">
                          <xs:complexType>
                            <xs:sequence>
                              <xs:element name="sections"
                                          minOccurs="0"
                                          maxOccurs="1">
                                <xs:complexType>
                                  <xs:sequence>
                                    <xs:element name="section"
                                                minOccurs="0"
                                                maxOccurs="unbounded">
                                      <xs:complexType>
                                        <xs:all>
                                          <xs:element name="labels"
                                                      type="FormXmlLabelsType"
                                                      minOccurs="0"
                                                      maxOccurs="1" />
                                          <xs:element name="rows"
                                                      minOccurs="0"
                                                      maxOccurs="1">
                                            <xs:complexType>
                                              <xs:sequence>
                                                <xs:element name="row"
                                                            minOccurs="0"
                                                            maxOccurs="unbounded">
                                                  <xs:complexType>
                                                    <xs:sequence>
                                                      <xs:element name="cell"
                                                                  minOccurs="0"
                                                                  maxOccurs="unbounded">
                                                        <xs:complexType>
                                                          <xs:all>
                                                            <xs:element name="labels"
                                                                        type="FormXmlLabelsType"
                                                                        minOccurs="0"
                                                                        maxOccurs="1" />
                                                            <xs:element name="control"
                                                                        type="FormXmlControlType"
                                                                        minOccurs="0"
                                                                        maxOccurs="1" />
                                                            <xs:element name="events"
                                                                        type="FormXmlEventsType"
                                                                        minOccurs="0"
                                                                        maxOccurs="1" />
                                                          </xs:all>
                                                          <xs:attribute name="auto"
                                                                        type="xs:boolean" />
                                                          <xs:attribute name="addedby"
                                                                        type="xs:string" />
                                                          <xs:attributeGroup ref="FormXmlCellCommon"/>
                                                        </xs:complexType>
                                                      </xs:element>
                                                    </xs:sequence>
                                                    <xs:attribute name="addedby"
                                                                  type="xs:string" />
                                                    <xs:attributeGroup ref="FormXmlRowCommon"/>
                                                  </xs:complexType>
                                                </xs:element>
                                              </xs:sequence>
                                              <xs:attribute name="addedby"
                                                            type="xs:string" />

                                            </xs:complexType>
                                          </xs:element>
                                        </xs:all>
                                        <xs:attribute name="group"
                                                      type="xs:string" />
                                        <xs:attribute name="name"
                                                      type="xs:string" />
                                        <xs:attribute name="showlabel"
                                                      type="xs:boolean" />
                                        <xs:attribute name="labelid"
                                                      type="FormGuidType"
                                                      use="optional" />
                                        <xs:attribute name="showbar"
                                                      type="xs:boolean" />
                                        <xs:attribute name="id"
                                                      type="FormGuidType" />
                                        <xs:attribute name="IsUserDefined"
                                                      type="xs:string" />
                                        <xs:attribute name="height"
                                                      type="xs:string" />
                                        <xs:attribute name="locklevel"
                                                      type="xs:nonNegativeInteger" />
                                        <xs:attribute name="layout"
                                                      type="xs:string" />
                                        <xs:attribute name="addedby"
                                                      type="xs:string" />
                                        <xs:attribute name="visible"
                                                      type="xs:boolean" />
                                        <xs:attribute name="availableforphone"
                                                      type="xs:boolean" />
                                        <xs:attribute name="rowheight"
                                                      type="xs:nonNegativeInteger"
                                                      use="optional" />
                                        <xs:attribute name="autoexpand"
                                                      type="xs:boolean"
                                                      use="optional" />
                                        <xs:attributeGroup ref="FormXmlSectionCommon"/>

                                      </xs:complexType>
                                    </xs:element>
                                  </xs:sequence>
                                  <xs:attribute name="addedby"
                                                type="xs:string" />

                                </xs:complexType>
                              </xs:element>
                            </xs:sequence>
                            <xs:attribute name="width"
                                          type="FormPercentageType"
                                          use="required" />


                          </xs:complexType>
                        </xs:element>
                      </xs:sequence>

                    </xs:complexType>
                  </xs:element>
                  <xs:element name="events"
                              type="FormXmlEventsType"
                              minOccurs="0"
                              maxOccurs="1" />
                </xs:all>
                <xs:attribute name="group"
                              type="xs:string" />
                <xs:attribute name="name"
                              type="xs:string" />
                <xs:attribute name="verticallayout"
                              type="xs:boolean" />
                <xs:attribute name="showlabel"
                              type="xs:boolean" />
                <xs:attribute name="labelid"
                              type="FormGuidType"
                              use="optional" />
                <xs:attribute name="id"
                              type="FormGuidType" />
                <xs:attribute name="IsUserDefined"
                              type="xs:string" />
                <xs:attribute name="locklevel"
                              type="xs:nonNegativeInteger" />
                <xs:attribute name="addedby"
                              type="xs:string" />
                <xs:attribute name="expanded"
                              type="xs:boolean" />
                <xs:attribute name="visible"
                              type="xs:boolean" />
                <xs:attribute name="availableforphone"
                              type="xs:boolean" />
                <xs:attribute name="collapsible"
                              type="xs:boolean" />


              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="showlabels"
                        type="xs:boolean" />
          <xs:attribute name="addedby"
                        type="xs:string" />
          <xs:attribute name="filterby"
                        type="xs:string" />
          <xs:attribute name="dashboardCategory"
                        type="xs:string" />
          <xs:attribute name="timeframe"
                        type="xs:string" />
          <xs:attribute name="primaryentitytypecode"
                        type="xs:string" />
          <xs:attribute name="entityview"
                        type="xs:string" />
          <xs:attribute name="tilespresent"
                        type="xs:boolean" />

        </xs:complexType>
      </xs:element>
      <xs:element name="header"
                  type="FormXmlHeaderFooterType"
                  minOccurs="0"
                  maxOccurs="1"/>
      <xs:element name="footer"
                  type="FormXmlHeaderFooterType"
                  minOccurs="0"
                  maxOccurs="1"/>
      <xs:element name="events"
                  type="FormXmlEventsType"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="formLibraries"
                  type="FormXmlLibraryType"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="externaldependencies"
                  type="FormXmlExternalDependenciesType"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="formparameters"
                  type="FormParametersType"
                  minOccurs="0"
                  maxOccurs="1">
        <xs:unique name="UniqueName">
          <xs:selector xpath ="./querystringparameter"/>
          <xs:field xpath ="@name"/>
        </xs:unique>
      </xs:element>
      <xs:element name ="clientresources"
                  type ="ClientResourcesType"
                  minOccurs ="0"
                  maxOccurs ="1"></xs:element>
      <xs:element name="Navigation"
                  type="FormNavigationType"
                  minOccurs="0"
                  maxOccurs="1"/>
      <xs:element name="DisplayConditions"
                  type="FormDisplayConditionsType"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="RibbonDiffXml"
                  type="RibbonEntityDiffXmlType"
                  minOccurs="0"
                  maxOccurs="1" />
    </xs:all>
    <xs:attribute name="enablerelatedinformation"
                  type="xs:boolean" />
    <xs:attribute name="relatedInformationCollapsed"
                  type="xs:boolean" />
    <xs:attribute name="hasmargin"
                  type="xs:boolean" />
    <xs:attribute name="addedby"
                  type="xs:string" />
    <xs:attribute name="shownavigationbar"
                  type="xs:boolean" />
    <xs:attribute name="showImage"
                  type="xs:boolean" />
    <xs:attribute name="maxWidth"
                  use="optional">
      <xs:simpleType>
        <xs:restriction base="xs:positiveInteger">
          <xs:minInclusive value="400" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>

  </xs:complexType>
  <xs:complexType name="FormXmlControlType">
    <xs:sequence>
      <xs:element name="labels"
                  type="FormXmlLabelsType"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="parameters"
                  minOccurs="0"
                  maxOccurs="1">
        <xs:complexType>
          <xs:choice minOccurs="1"
                     maxOccurs="1">
            <!-- LATER: (TobinZ, 2008-07-24) - Divide this list up into sets that are valid together. -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="Url"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="PassParameters"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="Security"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="Scrolling"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="Border"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="Preload"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="IsPassword"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="IsColorValue"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <!--Web Resource related parameters. Included in this section since they 
can include Url, PassParameters etc-->
              <xs:element name="Height"
                          type="xs:unsignedInt"
                          minOccurs="0"
                          maxOccurs="1"/>
              <xs:element name="Width"
                          type="xs:unsignedInt"
                          minOccurs="0"
                          maxOccurs="1"/>
              <xs:element name="AltText"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1"/>
              <xs:element name="SizeType"
                          type="WebResourceSizeType"
                          minOccurs="0"
                          maxOccurs="1"/>
              <xs:element name="ShowInROF"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ShowOnMobileClient"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="HorizontalAlignment"
                          type="ImageHorizontalAlignmentType"
                          minOccurs="0"
                          maxOccurs="1"/>
              <xs:element name="VerticalAlignment"
                          type="ImageVerticalAlignmentType"
                          minOccurs="0"
                          maxOccurs="1"/>
              <xs:element name="Data"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="WebResourceId"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!--Parameters for unbound lookup control-->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="TargetEntities"
                          minOccurs="0"
                          maxOccurs="1">
                <xs:complexType>
                  <xs:sequence>
                    <xs:element name="TargetEntity"
                                minOccurs="1"
                                maxOccurs="unbounded">
                      <xs:complexType>
                        <xs:all>
                          <xs:element name="EntityLogicalName"
                                      type="xs:string"
                                      minOccurs="1"
                                      maxOccurs="1" />
                          <xs:element name="DefaultViewId"
                                      type="FormGuidType"
                                      minOccurs="0"
                                      maxOccurs="1" />
                          <xs:element name="IsDeDupLookup"
                                      type="xs:boolean"
                                      minOccurs="0"
                                      maxOccurs="1" />
                          <xs:element name="UnboundLookupStyle"
                                      type="xs:string"
                                      minOccurs="0"
                                      maxOccurs="1" />
                        </xs:all>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:choice>
            <!-- Parameters for the subgrid control and and reference panel subgrid control -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="ViewId"
                          type="FormGuidType"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="IsUserView"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="IsUserChart"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="RelationshipName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="RelationshipRoleOrdinal"
                          type="RelationshipRoleOrdinalType"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="TargetEntityType"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="AutoExpand"
                          type="GridResizeType"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="RecordsPerPage"
                          type="xs:unsignedShort"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="MaxRowsBeforeScroll"
                          type="xs:integer"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="EnableQuickFind"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="EnableJumpBar"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="EnableViewPicker"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ViewIds"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ChartGridMode"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="VisualizationId"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="EnableChartPicker"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="EnableContextualActions"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="TeamTemplateId"
                          type="FormGuidType"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="GridUIMode"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ReferencePanelSubgridIconUrl"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Parameters for the lookup control -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="DefaultViewId"
                          type="FormGuidType"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="FilterRelationshipName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="DependentAttributeName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="DependentAttributeType"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="AutoResolve"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ResolveEmailAddress"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="DefaultViewReadOnly"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ViewPickerReadOnly"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="AllowFilterOff"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="DisableMru"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="DisableQuickFind"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="DisableViewPicker"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="AvailableViewIds"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="EntityLogicalName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="IsInlineNewEnabled"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="InlineViewIds"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="UnboundLookupTypes"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="UnboundLookupBrowse"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="UnboundLookupControlType"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ShowAsBreadcrumbControl"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Parameters for the TextBox -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="MaxLength"
                          type="xs:integer"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="Format"
                          type="FormatType"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Parameters for the Label -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="IsTitle"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Parameters for the Numbers (i.e Whole, Decimal, Currency)-->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="MinValue"
                          type="xs:double"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="MaxValue"
                          type="xs:double"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="Precision"
                          type="xs:integer"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Parameters for the PickList Control and Two Value Option(Radio) Control -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="DefaultValue"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="OptionSetId"
                          type="FormGuidType"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Parameters for the quickformcollection control and reference panel quick form collection control -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="QuickForms"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="ControlMode"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ReferencePanelQuickFormCollectionIconUrl"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Parameters for the tabs control -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="DefaultTabId"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ShowArticleTab"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:group ref="SearchWidgetControlParameters"
                        minOccurs="0"
                        maxOccurs="unbounded" />
            </xs:choice>
            <!-- Link Control parameters -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="LinkControlDefinitionId"
                          type="FormGuidType"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ShowLinkControlLabel"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Bing Maps Control parameters -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="AddressField"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Timer Control parameters -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="FailureTimeField"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="SuccessConditionName"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="SuccessConditionValue"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="FailureConditionName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="FailureConditionValue"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="WarningConditionName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="WarningConditionValue"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="CancelConditionName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="CancelConditionValue"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="PauseConditionName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="PauseConditionValue"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Search Widget parameters -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:group ref="SearchWidgetControlParameters"
                        minOccurs="0"
                        maxOccurs="unbounded" />
            </xs:choice>
            <!-- Queue Control parameters -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="Streams"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="DashboardCategory"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="ShowAsTiles"
                          type="xs:boolean"
                          minOccurs="1"
                          maxOccurs="1" />
              <xs:element name="StreamNames"
                          type="xs:string"
                          minOccurs="1"
                          maxOccurs="1"/>
            </xs:choice>
            <!-- Date Range Control parameters -->
            <xs:choice minOccurs="1"
                       maxOccurs="unbounded">
              <xs:element name="AttributeLogicalName"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="TimeFrame"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
            <!-- Rich Editor Control parameters -->
            <xs:choice minOccurs="0"
                       maxOccurs="unbounded">
              <xs:element name="ReadOnly"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="IsViewExpandable"
                          type="xs:boolean"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ToolbarJSON"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
              <xs:element name="ExpandedToolbarJSON"
                          type="xs:string"
                          minOccurs="0"
                          maxOccurs="1" />
            </xs:choice>
          </xs:choice>

        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="id"
                  type="xs:string" />
    <xs:attribute name="uniqueid"
                  type="FormGuidType" />
    <xs:attribute name="classid"
                  type="FormGuidType" />
    <xs:attribute name="labelid"
                  type="FormGuidType" />
    <xs:attribute name="datafieldname"
                  type="xs:string" />
    <xs:attribute name="disabled"
                  type="xs:boolean" />
    <xs:attribute name="addedby"
                  type="xs:string" />
    <xs:attribute name="isunbound"
                  type="xs:boolean" />
    <xs:attribute name="isrequired"
                  type="xs:boolean" />
    <xs:attribute name="relationship"
                  type="xs:string" />
    <xs:attribute name="indicationOfSubgrid"
                  type="xs:boolean" />

  </xs:complexType>
  <xs:complexType name="FormXmlLibraryType">
    <xs:sequence>
      <xs:element name="Library"
                  minOccurs="1"
                  maxOccurs="50">
        <xs:complexType>
          <xs:attribute name="name"
                        type="xs:string"
                        use="required" />
          <xs:attribute name="libraryUniqueId"
                        type="xs:string"
                        use="required" />

        </xs:complexType>
      </xs:element>
    </xs:sequence>

  </xs:complexType>
  <xs:simpleType name="CrmEventType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="DataEvent" />
      <xs:enumeration value="ControlEvent" />
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="FormXmlHandlerType">
    <xs:sequence>
      <xs:element name="dependencies"
                  minOccurs="0"
                  maxOccurs="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="dependency"
                        minOccurs="0"
                        maxOccurs="unbounded">
              <xs:complexType>
                <xs:attribute name="id"
                              type="xs:string" />

              </xs:complexType>
            </xs:element>
          </xs:sequence>

        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="functionName"
                  type="xs:string"
                  use="required" />
    <xs:attribute name="libraryName"
                  type="xs:string"
                  use="required" />
    <xs:attribute name="handlerUniqueId"
                  type="xs:string"
                  use="required" />
    <xs:attribute name="enabled"
                  type="xs:boolean" />
    <xs:attribute name="passExecutionContext"
                  type="xs:boolean" />
    <xs:attribute name="parameters"
                  type="xs:string" />

  </xs:complexType>
  <xs:complexType name="FormXmlEventsType">
    <xs:sequence>
      <xs:element name="event"
                  minOccurs="1"
                  maxOccurs="unbounded">
        <xs:complexType>
          <xs:all>
            <xs:element name="Handlers"
                        minOccurs="0"
                        maxOccurs="1">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Handler"
                              type="FormXmlHandlerType"
                              minOccurs="0"
                              maxOccurs="50" />
                </xs:sequence>

              </xs:complexType>
            </xs:element>
            <xs:element name="InternalHandlers"
                        minOccurs="0"
                        maxOccurs="1">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="Handler"
                              type="FormXmlHandlerType"
                              minOccurs="0"
                              maxOccurs="50" />
                </xs:sequence>

              </xs:complexType>
            </xs:element>
            <xs:element name="dependencies"
                        minOccurs="0"
                        maxOccurs="1">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="dependency"
                              minOccurs="0"
                              maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:attribute name="id"
                                    type="xs:string" />

                    </xs:complexType>
                  </xs:element>
                </xs:sequence>

              </xs:complexType>
            </xs:element>
          </xs:all>
          <xs:attribute name="name"
                        type="xs:string" />
          <xs:attribute name="BehaviorInBulkEditForm"
                        type="BehaviorInBulkEditForm" />
          <xs:attribute name="application"
                        type="xs:boolean" />
          <xs:attribute name="active"
                        type="xs:boolean" />
          <xs:attribute name="eventType"
                        type="CrmEventType" />
          <xs:attribute name="attribute"
                        type="xs:string" />

        </xs:complexType>
      </xs:element>
    </xs:sequence>

  </xs:complexType>
  <xs:complexType name="FormXmlExternalDependenciesType">
    <xs:sequence>
      <xs:element name="dependency"
                  minOccurs="1"
                  maxOccurs="unbounded">
        <xs:complexType>
          <xs:attribute name="id"
                        type="xs:string" />

        </xs:complexType>
      </xs:element>
    </xs:sequence>

  </xs:complexType>
  <xs:complexType name="FormXmlLabelsType">
    <xs:sequence>
      <xs:element name="label"
                  minOccurs="0"
                  maxOccurs="unbounded">
        <xs:complexType>
          <xs:attribute name="description"
                        use="required"
                        type="xs:string" />
          <xs:attribute name="languagecode"
                        use="required"
                        type="xs:positiveInteger" />
          <xs:attribute name="addedby"
                        type="xs:string" />

        </xs:complexType>
      </xs:element>
    </xs:sequence>

  </xs:complexType>
  <xs:complexType name="FormXmlHeaderFooterType">
    <xs:sequence>
      <xs:element name="rows"
                  minOccurs="1"
                  maxOccurs="1">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="row"
                        minOccurs="0"
                        maxOccurs="unbounded">
              <xs:complexType>
                <xs:sequence>
                  <xs:element name="cell"
                              minOccurs="0"
                              maxOccurs="unbounded">
                    <xs:complexType>
                      <xs:all>
                        <xs:element name="labels"
                                    type="FormXmlLabelsType"
                                    minOccurs="0"
                                    maxOccurs="1" />
                        <xs:element name="control"
                                    type="FormXmlControlType"
                                    minOccurs="0"
                                    maxOccurs="1" />
                      </xs:all>
                      <xs:attributeGroup ref="FormXmlCellCommon"/>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
                <xs:attributeGroup ref="FormXmlRowCommon"/>
              </xs:complexType>
            </xs:element>
          </xs:sequence>

        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name="id"
                  type="FormGuidType"
                  use="required" />
    <xs:attributeGroup ref="FormXmlSectionCommon" />
  </xs:complexType>
  <xs:attributeGroup name="FormXmlSectionCommon">
    <xs:attribute name="columns"
                  type="xs:nonNegativeInteger" />
    <xs:attribute name="labelwidth"
                  type="xs:nonNegativeInteger" />
    <xs:attribute name="celllabelalignment"
                  use="optional">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Center"/>
          <xs:enumeration value="Left"/>
          <xs:enumeration value="Right"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="celllabelposition"
                  use="optional">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="Top"/>
          <xs:enumeration value="Left"/>
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>

  </xs:attributeGroup>
  <xs:attributeGroup name="FormXmlRowCommon">
    <xs:attribute name="height"
                  type="xs:string" />

  </xs:attributeGroup>
  <xs:attributeGroup name="FormXmlCellCommon">
    <xs:attribute name="id"
                  type="FormGuidType" />
    <xs:attribute name="showlabel"
                  type="xs:boolean" />
    <xs:attribute name="labelid"
                  type="FormGuidType"
                  use="optional" />
    <xs:attribute name="locklevel"
                  type="xs:nonNegativeInteger" />
    <xs:attribute name="rowspan"
                  type="xs:nonNegativeInteger" />
    <xs:attribute name="colspan"
                  type="xs:nonNegativeInteger" />
    <xs:attribute name="userspacer"
                  type="xs:boolean" />
    <xs:attribute name="ispreviewcell"
                  type="xs:boolean"/>
    <xs:attribute name="visible"
                  type="xs:boolean" />
    <xs:attribute name="availableforphone"
                  type="xs:boolean" />
    <xs:attribute name="isstreamcell"
                  type="xs:boolean" />
    <xs:attribute name="ischartcell"
                  type="xs:boolean" />
    <xs:attribute name="istilecell"
                  type="xs:boolean" />


  </xs:attributeGroup>
  <xs:simpleType name="BehaviorInBulkEditForm">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Disabled" />
      <xs:enumeration value="EnabledButNoRender" />
      <xs:enumeration value="Enabled" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FormCRM_Boolean">
    <xs:restriction base="xs:unsignedByte">
      <xs:minInclusive value="0" />
      <xs:maxInclusive value="1" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FormGuidType">
    <xs:annotation>
      <xs:documentation xml:lang="en">
        The representation of a GUID, generally the id of an element.
      </xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:string">
      <xs:pattern value="\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FormISVGuid">
    <xs:restriction base="xs:string">
      <xs:pattern value="\{?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}?" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name ="FormParameterAttributeType">
    <xs:restriction base ="xs:string">
      <xs:enumeration value ="Boolean" />
      <xs:enumeration value ="DateTime" />
      <xs:enumeration value ="Double" />
      <xs:enumeration value ="EntityType" />
      <xs:enumeration value ="Integer" />
      <xs:enumeration value ="Long" />
      <xs:enumeration value ="PositiveInteger" />
      <xs:enumeration value ="SafeString" />
      <xs:enumeration value ="UniqueId" />
      <xs:enumeration value ="UnsignedInt" />
    </xs:restriction>
  </xs:simpleType >
  <xs:simpleType name ="FormParameterPassAsAttributeType">
    <xs:restriction base ="xs:string">
      <xs:enumeration value ="QueryString" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FormPercentageType">
    <xs:restriction base="xs:string">
      <xs:pattern value="^(100|[0-9]{1,2})%$" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FormQueryStringParameterNameAttributeType">
    <xs:restriction base="xs:string">
      <xs:pattern value="(?![cC][rR][mM]_)([A-Za-z0-9])+([_])+([A-Za-z0-9_])*"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="GridResizeType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Auto"/>
      <xs:enumeration value="Fixed"/>
      <xs:enumeration value="AutoWithFixedMax"/>
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="ImageHorizontalAlignmentType">
    <xs:restriction base ="xs:string">
      <xs:enumeration value ="Left" />
      <xs:enumeration value ="Right" />
      <xs:enumeration value ="Center" />
      <xs:enumeration value ="NotSet" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="ImageVerticalAlignmentType">
    <xs:restriction base ="xs:string">
      <xs:enumeration value ="Top" />
      <xs:enumeration value ="Middle" />
      <xs:enumeration value ="Bottom" />
      <xs:enumeration value ="NotSet" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="RelationshipRoleOrdinalType">
    <xs:restriction base="xs:unsignedByte">
      <xs:enumeration value="1" />
      <xs:enumeration value="2" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name ="WebResourceSizeType">
    <xs:restriction base ="xs:string">
      <xs:enumeration value ="StretchToFit" />
      <xs:enumeration value ="StretchMaintainAspectRatio" />
      <xs:enumeration value ="Original" />
      <xs:enumeration value ="Specific" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="FormatType">
    <xs:restriction base ="xs:string">
      <xs:enumeration value ="SingleLineOfText" />
      <xs:enumeration value ="WholeNumber" />
      <xs:enumeration value ="DecimalNumber" />
      <xs:enumeration value ="Currency" />
      <xs:enumeration value="Date" />
      <xs:enumeration value="DateTime" />
      <xs:enumeration value="DateAndTime" />
      <xs:enumeration value="Url" />
      <xs:enumeration value="Ticker" />
      <xs:enumeration value="Email" />
      <xs:enumeration value="TextArea" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="solutionactionType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Added" />
      <xs:enumeration value="Removed" />
      <xs:enumeration value="Modified" />
    </xs:restriction>
  </xs:simpleType >
  <xs:attributeGroup name="FormXmlBaseElementCommon">
    <xs:attribute name="solutionaction"
                  type="solutionactionType" />
  </xs:attributeGroup>
  <xs:complexType name ="solutionStringType">
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionBooleanType">
    <xs:simpleContent>
      <xs:extension base="xs:boolean">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionFormGuidType">
    <xs:simpleContent>
      <xs:extension base="FormGuidType">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionUnsignedIntType">
    <xs:simpleContent>
      <xs:extension base="xs:unsignedInt">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionWebResourceSizeType">
    <xs:simpleContent>
      <xs:extension base="WebResourceSizeType">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionImageHorizontalAlignmentType">
    <xs:simpleContent>
      <xs:extension base="ImageHorizontalAlignmentType">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionFormatType">
    <xs:simpleContent>
      <xs:extension base="FormatType">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionImageVerticalAlignmentType">
    <xs:simpleContent>
      <xs:extension base="ImageVerticalAlignmentType">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionRelationshipRoleOrdinalType">
    <xs:simpleContent>
      <xs:extension base="RelationshipRoleOrdinalType">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionGridResizeType">
    <xs:simpleContent>
      <xs:extension base="GridResizeType">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name ="solutionUnsignedShortType">
    <xs:simpleContent>
      <xs:extension base="xs:unsignedShort">
        <xs:attributeGroup ref="FormXmlBaseElementCommon"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:group name="SearchWidgetControlParameters">
    <xs:choice>
      <xs:element name="FilterResults"
                  type="xs:string"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="AllowChangingFiltersOnUI"
                  type="xs:boolean"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="ShowLanguageFilter"
                  type="xs:boolean"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="ShowDepartmentFilter"
                  type="xs:boolean"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="EnableAutoSuggestions"
                  type="xs:boolean"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="SearchForAutoSuggestionsUsing"
                  type="xs:string"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="AutoSuggestionSource"
                  type="xs:string"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="SelectPrimaryCustomer"
                  type="xs:string"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="NumberOfResults"
                  type="xs:unsignedInt"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="ShowContextualActions"
                  type="xs:string"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="ActionList"
                  type="xs:string"
                  minOccurs="0"
                  maxOccurs="1" />
      <xs:element name="ReferencePanelSearchWidgetIconUrl"
                  type="xs:string"
                  minOccurs="0"
                  maxOccurs="1" />
    </xs:choice>
  </xs:group>
</xs:schema>

Vedere anche

Concetti

Personalizzare moduli di entità
Creare, installare e aggiornare una soluzione gestita
Creare, esportare o importare una soluzione non gestita

Altre risorse

Form XML reference

Microsoft Dynamics CRM 2016 and Microsoft Dynamics CRM Online
Send comments about this topic to Microsoft.
© 2015 Microsoft. All rights reserved.