# Microsoft.Search.Response.Form Schema Documentation

This topic contains documentation for the Microsoft.Search.Response.Form schema. For the text of the schema, see Microsoft.Search.Response.Form Schema.

## Documentation for the urn:Microsoft.Search.Response.Form schema

Forms allow interaction between a service and a user. This schema defines all form elements and their relationship to each other. A form is submitted when a user clicks a form element having the @action="requery" attribute. At this point, a new query is generated containing the data from the form.

## Basic Schema Attributes

Attribute | Value
--- | ---
targetNamespace | urn:Microsoft.Search.Response.Form
elementFormDefault | qualified
attributeFormDefault | unqualified (default)

## Declared Namespaces

Namespace | Prefix
--- | ---
urn:Microsoft.Search.Types | t:
urn:Microsoft.Search.Response.Form | (default)
http://www.w3.org/2001/XMLSchema | xsd:
http://www.w3.org/XML/1998/namespace | xml:

## Imported Schemas

namespace | id | schemaLocation
--- | --- | ---
urn:Microsoft.Search.Types | (none) | Microsoft.Search.Types.xsd

## Overview

<Form>

<Button>

<Text/>

</Button>

<Checkbox>

<Text/>

<Frame>

</Frame>

</Checkbox>

<Edit>

<Text/>

</Edit>

<Hyperlink>

<Text/>

</Hyperlink>

<Label/>

<Listbox>

<Text/>

<Option>

<Text/>

</Option>

</Listbox>

<NewQuery>

<Text/>

</NewQuery>

<RadioGroup>

<Text/>

<Option>

<Text/>

<Frame>

</Frame>

</Option>

</RadioGroup>

<Frame>

<Button>

<Text/>

</Button>

<Checkbox>

<Text/>

<Frame>

</Frame>

</Checkbox>

<Edit>

<Text/>

</Edit>

<Hyperlink>

<Text/>

</Hyperlink>

<Label/>

<Listbox>

<Text/>

<Option>

<Text/>

</Option>

</Listbox>

<NewQuery>

<Text/>

</NewQuery>

<RadioGroup>

<Text/>

<Option>

<Text/>

<Frame>

</Frame>

</Option>

</RadioGroup>

</Frame>

</Form>

## Top-Level Elements

Element: Form

Forms are controls that allow users to refine their queries.

Property | Value
--- | ---
abstract | false (default)
name | Form
nillable | false (default)
type | complexType

Attributes

- Attribute: revision

  Unsigned integer indicating the revision of the schema used in the response.

  Property | Value
  --- | ---
  name | revision
  type | xsd:unsignedInt
  use | optional

- Attribute: build

  The build of the component used to generate the response.

  Property | Value
  --- | ---
  name | build
  type | t:String255
  use | optional

- Attribute: rtl

  If set to true, text on the forms is displayed right-to-left. If set to false, text on the forms is displayed left-to-right. If unspecified, the system will choose.

  Property | Value
  --- | ---
  name | rtl
  type | xsd:boolean
  use | optional (default)

- Attribute: propagate

  If set to false, any changes to the main query box will be passed with the requery generated by the form, rather than passing the original query.

  Property | Value
  --- | ---
  default | true
  name | propagate
  type | xsd:boolean
  use | optional (default)

- Attribute: separator

  If set to true, the form block is displayed with a separator below it to distinguish it from other portions of the results.

  Property | Value
  --- | ---
  default | false
  name | separator
  type | xsd:boolean
  use | optional (default)

Subelements: Choice

Only one element can be chosen.

The minimum number of occurrences (minOccurs) for the choice is 0.

The maximum number of occurrences (maxOccurs) for the choice is unbounded.

- Group Reference: NestedFormGroup

  A collection of form controls.

  Group Information

  Property | Value
  --- | ---
  ref | NestedFormGroup
  minOccurs | 1
  minOccurs | 1

- Element: Frame

  A collection of form controls, displayed horizontally.

  Property | Value
  --- | ---
  abstract | false (default)
  minOccurs | 1
  maxOccurs | 1 (default)
  name | Frame
  nillable | false (default)
  type | FrameType

## Top-Level Types and Groups

- Group: NestedFormGroup

  Defines a collection of controls.

  Subelements: Choice

  Only one element can be chosen.

  - Element: Button

    A simple button.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | Button
    nillable | false (default)
    type | ButtonType

  - Element: Checkbox

    A check box.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | Checkbox
    nillable | false (default)
    type | CheckboxType

  - Element: Edit

    An edit control.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | Edit
    nillable | false (default)
    type | EditType

  - Element: Hyperlink

    A hyperlink.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | Hyperlink
    nillable | false (default)
    type | HyperlinkFormType

  - Element: Label

    A text label.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | Label
    nillable | false (default)
    type | TextType

  - Element: Listbox

    A list box or drop-down list control.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | Listbox
    nillable | false (default)
    type | ListboxType

  - Element: NewQuery

    A new query control.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | NewQuery
    nillable | false (default)
    type | NewQueryType

  - Element: RadioGroup

    A radio button group.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 1
    maxOccurs | 1 (default)
    name | RadioGroup
    nillable | false (default)
    type | RadioGroupType

- Complex Type: ButtonType

  Defines a simple button.

  Attributes

  - Attribute Group Reference: ControlAttributes

    Shared control attributes.

    ref | ControlAttributes

  - Attribute: tooltip

    Optional ToolTip.

    Property | Value
    --- | ---
    name | tooltip
    type | t:String2048
    use | optional

  - Attribute: icon

    Optional icon, which suppresses the display of text. Only the Go icon is currently supported.

    Property | Value
    --- | ---
    name | icon
    type | simpleType
    use | optional

    Base

    base | xsd:string

    Restrictions

    Restriction | Value
    --- | ---
    enumeration | go

  Subelements: Sequence

  Elements must appear in the specified order.

  - Element: Text

    The text for the control.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | TextType

- Complex Type: CheckboxType

  Describes a check box control with optional child controls.

  Attributes

  - Attribute Group Reference: ControlAttributes

    Shared control attributes.

    ref | ControlAttributes

  - Attribute: selected

    If set to true, the check box appears checked.

    Property | Value
    --- | ---
    default | false
    name | selected
    type | xsd:boolean
    use | optional

  Subelements: All

  All elements can appear in any order, but identical elements are grouped together.

  - Element: Text

    The text of the check box.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | TextType

  - Element: Frame

    Child elements under the check box.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Frame
    nillable | false (default)
    type | FrameType

- Complex Type: EditType

  Describes an edit control with an optional label.

  Attributes

  - Attribute Group Reference: ControlAttributes

    Shared control attributes.

    ref | ControlAttributes

  - Attribute: value

    Initial text inside the control.

    Property | Value
    --- | ---
    name | value
    type | t:String2048
    use | optional

  - Attribute: password

    If true, it indicates that the edit control is a password box and needs to be obscured.

    Property | Value
    --- | ---
    default | false
    name | password
    type | xsd:boolean
    use | optional

  - Attribute: rtl

    If set to true, text on the control is displayed right-to-left. If set to false, text on the control is displayed left-to-right.

    Property | Value
    --- | ---
    name | rtl
    type | xsd:boolean
    use | optional

  - Attribute: limit

    Maximum number of characters allowed.

    Property | Value
    --- | ---
    default | 256
    name | limit
    type | simpleType
    use | optional

    Base

    base | xsd:integer

    Restrictions

    Restriction | Value
    --- | ---
    minInclusive | 1
    maxInclusive | 4096

  - Attribute: width

    The width of the control in character units. If not specified, the control fills all available space.

    Property | Value
    --- | ---
    name | width
    type | simpleType
    use | optional

    Base

    base | xsd:integer

    Restrictions

    Restriction | Value
    --- | ---
    minInclusive | 1
    maxInclusive | 128

  Subelements: Sequence

  Elements must appear in the specified order.

  - Element: Text

    Text for the control's label.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | PositionalTextType

- Complex Type: HyperlinkFormType

  Defines a hyperlink that behaves like a button.

  Attributes

  - Attribute Group Reference: ControlAttributes

    Shared control attributes.

    ref | ControlAttributes

  - Attribute: tooltip

    Optional ToolTip.

    Property | Value
    --- | ---
    name | tooltip
    type | t:String2048
    use | optional

  Subelements: Sequence

  Elements must appear in the specified order.

  - Element: Text

    The text for the control.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | TextType

- Complex Type: TextType

  Defines a text label.

  Attributes

  - Attribute: rtl

    If set to true, the text is displayed right-to-left. If set to false, the text is displayed left-to-right.

    Property | Value
    --- | ---
    name | rtl
    type | xsd:boolean
    use | optional

    Simple Content

    Base

    base | xsd:string

- Complex Type: ListboxType

  Defines a list box control.

  Attributes

  - Attribute Group Reference: ControlAttributes

    Shared control attributes.

    ref | ControlAttributes

  - Attribute: dropdown

    If set to false, the control is a list box rather than a drop-down list.

    Property | Value
    --- | ---
    default | true
    name | dropdown
    type | xsd:boolean
    use | optional

  - Attribute: rtl

    If set to true, the control is displayed right-to-left. If set to false, the control is displayed left-to-right.

    Property | Value
    --- | ---
    name | rtl
    type | xsd:boolean
    use | optional

  - Attribute: width

    The width of the control in character units. If not specified, the control fills all available space.

    Property | Value
    --- | ---
    name | width
    type | simpleType
    use | optional

    Base

    base | xsd:integer

    Restrictions

    Restriction | Value
    --- | ---
    minInclusive | 1
    maxInclusive | 128

  Subelements: Sequence

  Elements must appear in the specified order.

  - Element: Text

    The text for the control.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | PositionalTextType

  - Element: Option

    An option in the list box.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | unbounded
    name | Option
    nillable | false (default)
    type | ListBoxOptionType

- Complex Type: ListBoxOptionType

  Defines an option in a list box.

  Attributes

  - Attribute: id

    Unique ID for the option.

    Property | Value
    --- | ---
    name | id
    type | t:IDType
    use | required

  - Attribute: selected

    If set to true, the option is selected by default.

    Property | Value
    --- | ---
    default | false
    name | selected
    type | xsd:boolean
    use | optional

  - Attribute: level

    Indentation level for the option.

    Property | Value
    --- | ---
    default | 1
    name | level
    type | simpleType
    use | optional

    Base

    base | xsd:integer

    Restrictions

    Restriction | Value
    --- | ---
    minInclusive | 1
    maxInclusive | 3

  Subelements: All

  All elements can appear in any order, but identical elements are grouped together.

  - Element: Text

    Text for the option.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | xsd:string

- Complex Type: NewQueryType

  Defines a link that launches a new query.

  Attributes

  - Attribute: query

    The actual query to be sent when the link is clicked.

    Property | Value
    --- | ---
    name | query
    type | xsd:string
    use | required

  - Attribute: tooltip

    An optional ToolTip.

    Property | Value
    --- | ---
    name | tooltip
    type | t:String2048
    use | optional

  - Attribute: category

    Category or group of services to be searched. If not specified, the currently selected set of services is searched.

    Property | Value
    --- | ---
    name | category
    type | t:CategoryType
    use | optional

  - Attribute: disabled

    If set to true, the link is disabled.

    Property | Value
    --- | ---
    default | false
    name | disabled
    type | xsd:boolean
    use | optional

  Subelements: Sequence

  Elements must appear in the specified order.

  - Element: Text

    The text for the link.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | TextType

- Complex Type: RadioGroupType

  Defines a group of radio buttons.

  Attributes

  - Attribute Group Reference: ControlAttributes

    Shared control attributes.

    ref | ControlAttributes

  - Attribute: rtl

    If set to true, the radio button group is displayed right-to-left. If set to false, the radio button group is displayed left-to-right.

    Property | Value
    --- | ---
    name | rtl
    type | xsd:boolean
    use | optional (default)

  Subelements: Sequence

  Elements must appear in the specified order.

  - Element: Text

    The text for the radio button group label.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | TextType

  - Element: Option

    An individual radio button.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | unbounded
    name | Option
    nillable | false (default)
    type | RadioOptionType

- Complex Type: RadioOptionType

  Defines an individual radio button.

  Attributes

  - Attribute: id

    Unique ID for the option.

    Property | Value
    --- | ---
    name | id
    type | t:IDType
    use | required

  - Attribute: selected

    If set to true, the option is selected by default.

    Property | Value
    --- | ---
    default | false
    name | selected
    type | xsd:boolean
    use | optional

  - Attribute: disabled

    If set to true, the option is disabled.

    Property | Value
    --- | ---
    default | false
    name | disabled
    type | xsd:boolean
    use | optional

  Subelements: All

  All elements can appear in any order, but identical elements are grouped together.

  - Element: Text

    The text for the option.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Text
    nillable | false (default)
    type | TextType

  - Element: Frame

    Child elements under the radio button.

    Property | Value
    --- | ---
    abstract | false (default)
    minOccurs | 0
    maxOccurs | 1 (default)
    name | Frame
    nillable | false (default)
    type | FrameType

- Complex Type: PositionalTextType

  Defines the text label for a control, when the label may appear in different places with respect to the control.

  Attributes

  - Attribute: rtl

    If set to true, the text is displayed right-to-left. If set to false, the text is displayed left-to-right.

    Property | Value
    --- | ---
    name | rtl
    type | xsd:boolean
    use | optional (default)

  - Attribute: position

    Describes where the text label is positioned relative to the control.

    Property | Value
    --- | ---
    default | beside
    name | position
    type | simpleType
    use | optional

    Base

    base | xsd:string

    Restrictions

    Restriction | Value
    --- | ---
    enumeration | beside above

  Simple Content

  Base

  base | xsd:string

- Complex Type: FrameType

  Describes a group of controls that display side-by-side when possible.

  Attributes

  None

  Subelements: Sequence

  Elements must appear in the specified order.

  The minimum number of occurrences (minOccurs) for the sequence is 0.

  The maximum number of occurrences (maxOccurs) for the sequence is unbounded.

  - Group Reference: NestedFormGroup

    Group Information

    Property | Value
    --- | ---
    ref | NestedFormGroup
    minOccurs | 1
    minOccurs | 1

## Top-Level Attributes

- Attribute Group: ControlAttributes

  Defines attributes common to all form controls.

  - Attribute: id

    The ID for the control.

    Property | Value
    --- | ---
    name | id
    type | t:IDType
    use | required

  - Attribute: disabled

    If set to true, the control is disabled.

    Property | Value
    --- | ---
    default | false
    name | disabled
    type | xsd:boolean
    use | optional

  - Attribute: submitUrl

    The URL where the form data will be submitted if the control is clicked and it has a requery action. If absent, the service provider's registered query path is used.

    Property | Value
    --- | ---
    name | submitUrl
    type | xsd:anyURI
    use | optional

  - Attribute: action

    Action to perform.

    Property | Value
    --- | ---
    default | none
    name | action
    type | simpleType
    use | optional

    Base

    base | xsd:string

    Restrictions

    Restriction | Value
    --- | ---
    enumeration | requery none callback

©2003-2004 Microsoft Corporation. All rights reserved. Permission to copy, display and distribute this document is available at: http://msdn.microsoft.com/library/en-us/odcXMLRef/html/odcXMLRefLegalNotice.asp