<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="xhtml2.css" ?>
<!-- no doctype yet, but the id attribute needs to be of type ID, 
so the id (#) syntax works in CSS -->
<!DOCTYPE html [
<!ATTLIST section id ID #IMPLIED>
<!ATTLIST h id ID #IMPLIED>
<!ATTLIST div id ID #IMPLIED>
<!ATTLIST nl id ID #IMPLIED>
]>
<html xmlns="http://www.w3.org/2002/06/xhtml2" lang="en">
  <head>
    <title>Chapter 8: Form controls</title>
  </head>
  <body>
    <h>Chapter 8: Form controls</h>
    <section>
      <h>8.1 The XForms Form Controls Module</h>
      <section>
        <h>8.1.1 Implementation Requirements Common to All Form
        Controls</h>
        <p id="001">(must) Unless bound to form controls, instance
        data nodes are not presented to the user; consequently,
        there is no need for a form control corresponding to HTML
        input type="hidden".</p>
        <nl>
          <li href="chapter8/001.xml">Only values with bound UI
          controls should be displayed.</li>
        </nl>
        <p id="002">(must) Assertion: navindex This gives the
        author control over the sequence in which form controls are
        traversed.</p>
        <nl>
          <li href="chapter8/002.xml">Navindex must be respected
          when determining navigation order.</li>
        </nl>
        <p id="002">(must) Assertion Accesskey The value of this is
        typically a single character which when pressed together
        with a platform specific modifier key (e.g., the alt key)
        results in the focus being set to this form control.</p>
        <nl>
          <li href="chapter8/002.xml">Ensure that 
          <code>accesskey</code>
          is respected.</li>
        </nl>
        <p id="004">Assertion Accesskey (must) The user agent must provide a
        means of identifying the accesskeys that can be used in a
        presentation.</p>
<nl>
<li href="chapter8/002.xml">Ensure that access keys are displayed to
        the user.</li>
        </nl>
        <p id="005">Accesskey (may) This may be accomplished in different
        ways by different implementations, for example through
        direct interaction with the application or via the user's
        guide.</p>
<nl>
<li href="chapter8/002.xml">Ensure that platform conventions are met.
          </li>
        </nl>
        <p id="006">Accesskey (should) The accesskey requested by the author
        might not be made available by the player (for example it
        may not exist on the device used, or it may be used by the
        player itself). Therefore the user agent should make the
        specified key available, but may map the accesskey to a
        different interaction behavior.</p>
<nl>
<li href="chapter8/002.xml">Ensure that suitable fallbacks made
        available if the requested key is not available on the given
        device.</li>
        </nl>
        <p id="007">Appearance</p>
        <p id="008">Common A host language is expected to add attributes
        such as xml:lang as well as an attribute, typically named
        class, that holds a list of strings that can be matched by
        CSS class selectors.</p>
        <p id="009">Host language (should) A host language should add inline
        markup to the Inline content set.</p>
        <p id="010">Host language extensions (should) When the XForms
        Extension module is present, it too should be included in
        the UI Common content set.</p>
        <p id="011">Rendering Form controls when rendered display the
        underlying data values to which they are bound.</p>
<nl>
<li href="chapter8/001.xml">
Display values and enable editting via bound user interface
            controls.</li>
        </nl>
        <p id="012">(Must)(May) While the data presented to the user through
        a form control must directly correspond to the bound
        instance data, the display representation is not required
        to match the lexical value.</p>
<nl>
<li href="chapter8/003.xml">Possibly use rich date picker  for date
            time.</li>
        </nl>
        <p>(Should) For example, user agents should apply
        appropriate conventions to the display of dates, times,
        durations and numeric values including separator
        characters.</p>
<nl>
<li href="chapter8/003.xml">Display dates as per locale</li>
        </nl>
        <p id="013">(must) Form controls that write simpleContent to
        instance data must do so exactly as defined by the XForms
        Action 10.1.9 The setvalue Element</p>
<nl>
<li href="chapter8/001.xml">Ensure that value is correctly
            updated.</li>
        </nl>
        <p id="014">All form controls that read simpleContent instance data
        must do so as follows:</p>
<nl>
<li href="chapter8/001.xml">Ensure that values are correctly
            displayed.
          </li>
        </nl>
        <p id="015">(must) (?) Element nodes: if text child nodes are
        present, returns the string-value of the first text child
        node. Otherwise, returns "" (the empty string)</p>
        <p id="016">(must) Attribute nodes: returns the string-value of the
        node.</p>
        <p id="017">(must)m Text nodes: returns the string-value of the
        node.</p>
        <p id="018">(undefined) Namespace, processing instruction, comment,
        and the XPath root node: behavior is undefined.</p>
        <p id="019">(must) (should) Form controls must distinguish rendering
        between valid and invalid states. Control of this behavior
        should be made available to stylesheets.</p>
<nl>
<li href="chapter8/002.xml">Ensure that invalid state of a control is
        apparent to the user.</li>
        </nl>
        <p id="020">(must)(should) Form controls must render upon request an
        explanation of the current state of a form control,
        including validity and associated model item properties.
        Control of this behavior should be made available to
        stylesheets.</p>
<nl>
<li href="chapter8/002.xml">Ensure that user gets feedback about
        reason for state of a control.</li>
        </nl>
        <p id="021">(must) Form controls must provide a default explanation
        for the above when no user-specified explanation is
        available.</p>
<nl>
<li href="chapter8/001.xml">Ensure that default error messages are
            generated.</li>
        </nl>
      </section>
      <section>
        <h>8.1.2 input</h>
        <p>inputmode no assertions</p>
        <p>(must) incremental when true, this form control will
        generate xforms-value- changing events. The default value
        for this attribute is false.</p>
<nl>
<li href="chapter8/004.xml">Ensure that setting of attribute
        <code>incremental</code> is respected as the user types in his
        message.</li>
        </nl>
        <p>(must) Data Binding Restrictions: Binds to any
        simpleContent (except xsd:base64Binary, xsd:hexBinary or
        any datatype derived from these).</p>
<nl>
<li href="chapter8/005.xml">Invalid input control. Input controls may
        not bind to fields  of type binary or hex-binary.</li>
        </nl>
        <p>(must) Must allow entry of a lexical value for the bound
        datatype.</p>
<nl>
<li href="chapter8/002.xml">Ensure that user can type in valid
            data.</li>
        </nl>
        <p>(should) Implementations should provide a convenient
        means for entry of datatypes and take into account
        localization and internationalization issues such as
        representation of numbers.
        (may) For example, an input bound to an instance data
        node of type xsd:date might provide a calendar control to
        enter dates; similarly, an input control bound to of type
        boolean might be rendered as a checkbox.</p>
<nl>
<li href="chapter8/003.xml">Permit convenient date entry where
            possible.</li>
<li  href="chapter8/003.xml">Render input bound to boolean type as
            checkbox if possible.</li>
        </nl>
      </section>
      <section>
        <h>8.1.3 secret</h>
        <p>(must) Description: This form control is used for
        entering information that is considered sensitive, and thus
        not echoed to a visual or aural display as it is being
        entered, e.g., password entry.</p>
<nl>
<li href="chapter8/002.xml">Keystrokes not echoed in
            <code>xforms:secret</code></li>
        </nl>
        <p>inputmode No assertion</p>
        <p>(must) incremental when true, this form control will
        generate xforms-value- changing events. The default value
        for this attribute is false.</p>
<nl>
<li href="chapter8/002.xml">Ensure that default value of
        <code>incremental=false</code> is respected on control
        <code>xforms:secret</code></li>
        </nl>
        <p>(must) Data Binding Restrictions: Identical to
        input.</p>
        <p>(must) In general, implementations, including
        accessibility aids, must render a "*" or similar character
        instead of the actual characters entered, and thus must not
        render the entered value of this form control.</p>
<nl>
<li href="chapter8/002.xml">Ensure that  a cryptic character is echoed
        as user enters value into secret.</li>
        </nl>
        <p>[[Note: 'in general' must be deleted]]</p>
      </section>
      <section>
        <h>8.1.4 textarea</h>
        <p>inputmode</p>
        <p>(must) incremental when true, this form control will
        generate xforms-value-changing events. The default value
        for this attribute is false.</p>
<nl>
<li  href="chapter8/004.xml">Multiline message input via textarea with
            <code>incremental=true</code>.</li>
        </nl>
        <p>(May) In the above, the class attribute can be used by a
        style sheet to specify the display size of the form
        control. (move this  test to hosting collection).</p>
        <p>(must) Note that the constraints on how much text can be
        input are obtained from the underlying XForms Model
        definition and not from these display properties.</p>
<nl>
<li href="chapter8/004.xml">Display scrolls as user enters text, and
        display size does not limit how much text is entered.</li>
        </nl>
        <p>(must) Data Binding Restrictions: Binds to xsd:string or
        any derived simpleContent.</p>
<p>(must) Must allow entry of a lexical value for the bound
        datatype, including multiple lines of text.</p>
        <nl>
<li href="chapter8/004.xml">Ensure that user can enter text.
          </li>
        </nl>
      </section>
      <section>
        <h>8.1.5 output</h>
        <p>(must) Description: This form control renders a value
        from the instance data,</p>
<p>(must) but provides no means for entering or changing
        data.</p>
        <p>(must) It is typically used to display values from the
        instance, and is treated as display:inline for purposes of
        layout. [[delete "typically"]]</p>
        <p>(must?) Element output can be used to display the value
        at a particular location in the instance by using a binding
        expression;</p>
        <nl>
<li href="chapter8/001.xml">Ensure that value is correctly displayed
        and that it cannot be modified using the output control.
Ensure inline rendering semantics.</li>
        </nl>
        <p>(must?) it can also be used to display the result of
        evaluating an XPath expression by specifying the XPath
        expression to be evaluated via attribute value instead of
        ref.</p>
<nl>
          <li href="chapter8/006.xml">Ensure that computed values
        correctly displayed.</li>
        </nl>
        <p>(must) Note that attributes ref and value on element
        output are mutually exclusive.</p>

        <p>(no assertion) appearance This form control does not use
        the UI Common attribute group, but nevertheless still
        contains an appearance attribute, as defined above.</p>
        <p>(must) value An XPath expression to be evaluated. The
        result of the evaluation is rendered by the form
        control.</p>
<nl>
<li href="chapter8/006.xml">Display computed value </li>
        </nl>
        <p>(must) If binding attributes are present to select a
        node, this attribute has no effect.</p>
        <p>(must) Data Binding Restrictions: Binds to any
        simpleContent.</p>
        <p>(must) Must allow display of a lexical value for the
        bound datatype.</p>
        <p>(should) Implementations should provide a convenient
        means for display of datatypes and take into account
        localization and internationalization issues such as
        representation of numbers.</p>
<nl>
<li href="chapter8/003.xml">Display dates appropriate for the locale
            when using output.</li>
        </nl>
      </section>
      <section>
        <h>8.1.6 upload</h>
        <p>(none) mediatype Space-separated list of suggested media
        types, used by the XForms Processor to determine which
        input methods apply.</p>
        <p>(must) incremental When true, this form control will
        generate xforms-value-changing events. The default for this
        form control is false.</p>
        <p>(must) Data Binding Restrictions: This form control can
        only be bound to datatypes xsd:base64Binary or
        xsd:hexBinary, or types derived by restriction from
        these.</p>
<nl>
<li href="chapter8/007.xml">Do not allow binding <code>upload</code>
        to field of type <code>date</code></li>
        </nl>
        <p>(should) Implementations with a file system should
        support file upload - selecting a specific file.</p>
        <p>(must) The types of files presented by default must
        reflect the mediatype specified in the XForms Model, for
        example defaulting to only audio file types in the file
        dialog when the mediatype is "audio/*". In XForms 1.0,
        there is a 1:1 binding between a upload form control and
        one of the binary datatypes, although that single file may
        be compound (e.g. application/zip). [[Must?]]</p>
<nl>
<li href="chapter8/008.xml">Ensure that user can browse the file
        system if a file system is available on the device.</li>
<li href="chapter8/008.xml">Ensure that mediatype is respected when
        offering user the choice of files to upload.</li>
        </nl>
        <p>(should)(may) Implementations with specific
        pen/digitizer hardware should (and implementations with
        other pointing devices may) support scribble - allowing
        in-place creation of pen-based data.</p>
        <p>(should) Implementations with specific audio recording
        capabilities should support record audio - in-place
        recording of an audio clip.</p>
        <p>(should) Implementations with a digital camera/scanner
        interface or screen capture should support acquire image -
        in-place upload of images from an attached device.</p>
        <p>(should) Implementations with video recording capability
        should provide a record video option.</p>
        <p>(should) Implementations with 3d capabilities should
        provide a 3d interface option.</p>
        <p>(may) Implementations may provide proprietary
        implementations (for example, a mediatype of text/rtf could
        invoke an edit window with a proprietary word processing
        application)</p>
        <p>(none) Implementations are encouraged to support other
        input devices not mentioned here.</p>
        <p>(must) Implementations which cannot support upload for
        the given mediatype must make this apparent to the
        user.</p>
      </section>
      <section>
        <h>8.1.7 range</h>
        <p>(must) start Optional hint for the lexical starting
        bound for the range - a legal value for the underlying
        data. If provided, this value is used to further refine the
        constraints specified by the underlying model.</p>
        <p>(must) end Optional hint for the ending bound for the
        range - a legal value for the underlying data. If provided,
        this value is used to further refine the constraints
        specified by the underlying model.</p>
        <p>(should??) step Optional hint to use for incrementing or
        decrementing the value. Should be of a type capable of
        expressing the difference between two legal values of the
        underlying data. [[Should =&gt; must]]</p>
        <p>(must) incremental When true, this form control will
        generate xforms-value-changing events. The default for this
        form control is false.</p>
        <p>(must) Data Binding Restrictions: Binds only the
        following list of datatypes, or datatypes derived by
        restriction from those in the list: xsd:duration, xsd:date,
        xsd:time, xsd:dateTime, xsd:gYearMonth, xsd:gYear,
        xsd:gMonthDay, xsd:gDay, xsd:gMonth, xsd:float,
        xsd:decimal, xsd:double.</p>
        <p>(must) Must allow input of a value corresponding to the
        bound datatype.</p>
        <p>(should) Implementations should inform the user of the
        upper and lower bounds, as well as the step size,</p>
        <p>(may) In graphical environments, this form control may
        be rendered as a "slider" or "rotary control".</p>
        <p>(should =&gt; must) In the event of overlapping
        restrictions between the underlying datatype and the start
        and end hints, the most restrictive range should be
        used.</p>
<nl>
<li href="chapter8/009.xml">Range controls that test above
            assertions.</li>
        </nl>
      </section>
      <section>
        <h>8.1.8 trigger</h>
        <p>(must) Data Binding Restrictions: Binds to any node.</p>
        <p>(must) Implementation Requirements: The user agent must
        provide a means to generate an xforms-activate event on the
        form control. Graphical implementations would typically
        render this form control as a push-button with the label on
        the button face.</p>
        <p>(may) Style sheets can be used to style this form
        control as an image, hyperlink, or other presentation.</p>
        <p>(missing) Relevant on binding attrs</p>
<nl>
<li href="chapter8/010.xml">Test trigger assertions.</li>
        </nl>
      </section>
      <section>
        <h>8.1.9 submit</h>
        <p>(must) Data Binding Restrictions: Binds to any node.</p>
        <p>(must) Implementation Requirements: Upon receiving event
        xforms-activate, this form control dispatches event
        xforms-submit to the submission element specified by
        required attribute submission.</p>
        <p>(missing) Relevant on binding attrs</p>
<nl>
<li href="chapter8/010.xml">Activating control
            <code>submit</code>dispatches event
            <code>xforms-submit</code>
to the submission element.</li>
<li href="chapter8/010.xml">Control <code>submit</code> can bind to
            any node.</li>
<li href="chapter8/010.xml">Binding expression if present determines
            if the submit control is enabled.</li>
        </nl>
      </section>
      <section>
        <h>8.1.10 select</h>
        <p>(must) selection Optional attribute determining whether
        free entry is allowed in the list. Default is "closed".</p>
        <p>(must) incremental When true, this form control will
        generate xforms-value-changing events. The default for this
        form control is true.</p>
        <p>(may) Typically, a style sheet would be used to
        determine the exact appearance of form controls, though a
        means is provided to suggest an appearance through
        attribute appearance. The value of the attribute consists
        of one of the following values: "full": all choices should
        be rendered at all times. "compact": a fixed number of
        choices should be rendered, with scrolling facilities as
        needed "minimal": a minimum number of choices should be
        rendered, with a facility to temporarily render additional
        choices</p>
        <p>(must) Data Binding Restrictions: any simpleContent
        capable of holding a sequence.</p>
        <p>(must) The restriction to binding simpleContent exists
        when the choices are authored as part of the user interface
        control as shown in this section. Element itemset for
        creating dynamic selections described in 9.3.3 The itemset
        Element allows the available choices to be obtained from an
        XForms model, and when using that construct, the data
        binding restriction to simpleContent is relaxed.</p>
        <p>(must) Implementation Requirements: The label for each
        choice must be presented,</p>
        <p>(must) allowing at any number of selections, possibly
        none.</p>
        <p>(must) This form control stores the values corresponding
        to the selected choices as a space separated list in the
        location addressed by attribute ref.</p>
        <p>(must) The values to be stored are either directly
        specified as the contents of element value, or specified
        indirectly through binding attributes on element value.</p>
        <p>(may) Note that the datatype bound to this form control
        may include a non-enumerated value space, e.g.,
        xsd:string,</p>
        <p>(may) or a union of a enumeration and a non-enumerated
        datatype (called an open enumeration).</p>
        <p>(may) In this case, control select may have attribute
        selection="open".</p>
        <p>(should=&gt;must) The form control should then allow
        free data entry, as described in 8.1.2 The input
        Element.</p>
        <p>(may) The form control may permit multiple values to be
        entered through free entry.</p>
        <p>(must) For closed selections: If the initial instance
        value matches the storage value of one or more of the given
        items, those items are selected.</p>
        <p>(must) If there is no match, no items are initially
        selected.</p>
        <p>(must) For open selections: If the initial instance
        values match the storage value specified by one or more of
        the items, the all such matching items are selected.</p>
        <p>(must) If the initial instance values do not match the
        storage value specified by one or more of the items, all
        such non-matching items are included as selected values, as
        if entered through free entry.</p>
        <p>(must) Free entry text is handled the same as form
        control input 8.1.2 The input Element, possibly in
        multiplicity.</p>
        <p>(must) When using dynamic selections with complexTypes,
        open selection has no effect.</p>
        <p>(may) An accessibility aid might allow the user to
        browse through the available choices and leverage the
        grouping of choices in the markup to provide enhanced
        navigation through long lists of choices.</p>
<nl>
<li href="chapter8/0111.xml">Implements open and closed selections to
            test above.</li>
        </nl>
      </section>
      <section>
        <h>8.1.11 select1</h>
        <p>(must) selection Optional attribute determining whether
        free entry is allowed in the list. Default is "closed".</p>
        <p>(must) incremental When true, this form control will
        generate xforms-value-changing events. The default for this
        form control is true.</p>
        <p>(must) Data Binding Restrictions: Binds to any
        simpleContent.</p>
        <p>(must) The restriction to binding simpleContent exists
        when the choices are authored as part of the user interface
        control as shown in this section.</p>
        <p>(must) Element itemset for creating dynamic selections
        described in 9.3.3 The itemset Element allows the available
        choices to be obtained from an XForms model, and when using
        that construct, the data binding restriction to
        simpleContent is relaxed.</p>
        <p>(must) Implementation Requirements: The label for each
        choice must be presented,</p>
        <p>(must) allowing at all times exactly one selection.</p>
        <p>(must) This form control stores the value corresponding
        to the selected choice in the location addressed by
        attribute ref.</p>
        <p>(must) The value to be stored is either directly
        specified as the contents of element value, or specified
        indirectly through binding attributes on element value.
        [[order of which to choose?]]</p>
        <p>(may) Note that the datatype bound to this form control
        may include a non-enumerated value space, e.g.,
        xsd:string,</p>
        <p>(may) or a union of a enumeration and a non-enumerated
        datatype (called an open enumeration).</p>
        <p>(may) In this case, control select1 may have attribute
        selection="open".</p>
        <p>(should) The form control should then allow free data
        entry, as described in 8.1.2 The input Element.</p>
        <p>(must) For closed selections: If the initial instance
        value matches the storage value of one of the given items,
        that item is selected.</p>
        <p>(must) If there is no match, the first item is initially
        selected.</p>
        <p>(must) For open selections: If the initial instance
        value matches the storage value specified by one of the
        items, the first such matching item is selected.</p>
        <p>(must) Otherwise, the selected value is the initial
        lexical value.</p>
        <p>(must) Free entry text is handled the same as form
        control input 8.1.2 The input Element.</p>
        <p>(may) User interfaces may choose to render this form
        control as a pulldown list or group of radio buttons, among
        other options.</p>
        <p>(may) The appearance attribute offers a hint as to which
        rendering might be most appropriate,</p>
        <p>(should) although any styling information (such as CSS)
        should take precedence.</p>
        <nl>
<li href="chapter8/0111.xml">Implements open and closed selections to
            test above.</li>
        </nl>
      </section>
    </section>
    <section>
      <h>8.2 Common Markup for Selection Controls</h>
      <section>
        <h>8.2.1 choices</h>
        <p>no assertions</p>
      </section>
      <section>
        <h>8.2.2 item</h>
        <p>no assertions</p>
      </section>
      <section>
        <h>8.2.3 value</h>
        <p>(author must) Data Binding Restriction: All lexical
        values must be valid according to the datatype bound to the
        selection control.</p>
<nl>
<li href="chapter8/011.xml">Uses element <code>value</code></li>
        </nl>
        <p>(must) If inline content and a ref attribute are both
        specified, the ref attribute is used.</p>
      </section>
      <section>
        <h>8.3 Additional Elements</h>
        <section>
          <h>8.3.1 filename</h>
          <p>(must)[[vague]] This optional element provides a way
          for the upload form control to insert a filename, when
          available, that represents the chosen binary
          resource.</p>
<nl>
<li href="chapter8/008.xml">See tests for control
              <code>upload</code></li>
          </nl>
        </section>
        <section>
          <h>8.3.2 mediatype</h>
          <p>(must???)[[vague]] This optional element provides a
          way for the upload form control to insert a mediatype,
          when available, that represents the chosen binary
          resource.</p>
          <nl>
<li href="chapter8/008.xml">See tests for control
              <code>upload</code></li>
          </nl>
        </section>
        <section>
          <h>8.3.3 label</h>
          <p>(missing must) The label must be made available to the
          user</p>
          <p>(must) Linking Attributes Link to external label.</p>
          <p>(must) If the link traversal fails, it is treated as
          an error (4.5.3 The xforms-link-error Event).</p>
          <p>(must) The label specified can exist in instance data,
          in a remote document, or as inline text. If more than one
          source of label is specified in this element, the order
          of precedence is: single node binding attributes, linking
          attributes, inline text.</p>
          <p>(may?) An accessibility aid would typically speak the
          metadata encapsulated here when the containing form
          control gets focus.</p>
<!--todo-->
        </section>
        <section>
          <h>8.3.4 help</h>
          <p>(must) The optional element help provides a convenient
          way to attach help information to a form control. This is
          equivalent to a xforms:help event handler that responds
          with a &lt;message type="modeless"&gt;.</p>
          <p>(must) Linking Attributes Link to external help
          information.</p>
          <p>(must) If the link traversal fails, it is treated as
          an error (4.5.3 The xforms-link-error Event).</p>
          <p>(must) The message specified can exist in instance
          data, in a remote document, or as inline text. If more
          than one source of message is specified in this element,
          the order of precedence is: single node binding
          attributes, linking attributes, inline text.</p>
<!-- todo -test cases for indirect help resource -->
        </section>
        <section>
          <h>8.3.5 hint</h>
          <p>(must) The optional element hint provides a convenient
          way to attach hint information to a form control. This is
          equivalent to a xforms:hint event handler that responds
          with a &lt;message type="ephemeral"&gt;.</p>
          <p>(must) Linking Attributes Link to external hint.</p>
          <p>(must) If the link traversal fails, it is treated as
          an error (4.5.3 The xforms-link-error Event).</p>
          <p>(must) The message specified can exist in instance
          data, in a remote document, or as inline text. If more
          than one source of message is specified in this element,
          the order of precedence is: single node binding
          attributes, linking attributes, inline text.</p>
        </section>
        <section>
          <h>8.3.6 alert</h>
          <p>(may) The optional element alert provides a convenient
          way to attach alert or error information to a form
          control. Rendering of this element is
          implementation-defined.</p>
          <p>(missing must) When it gets executed</p>
          <p>(must) Linking Attributes Link to external alert.</p>
          <p>(must) If the link traversal fails, it is treated as
          an error (4.5.3 The xforms-link-error Event).</p>
          <p>(must) The message specified can exist at in instance
          data, in a remote document, or as inline text. If more
          than one source of message is specified in this element,
          the order of precedence is: single node binding
          attributes, linking attributes, inline text.</p>
        </section>
      </section>
    </section>
    <hr></hr>
    <address>
      <a href="mailto:steven.pemberton@cwi.nl">U-SRX41P\steven</a>
    </address>
<!-- Created: Thu Oct 31 19:07:48 WEST 2002 -->
<!-- hhmts start -->
<!-- hhmts end-->
  </body>
</html>

