NOTICE: Error in 08-June-2001 XForms 1.0 Working Draft

Greetings,

A namespace problem was called to my attention in the recently published
XForms document. It shows up in chapter 2, and perhaps other places as well.

In section 2.4, we attempted to show realism by declaring the instance data
as part of a namespace, with the following declaration:

xmlns="http://commerce.example.com/payment"


For the rest of the chapter to be correct, this should be

xmlns=""

which has the effect of 'turning off' the default namespace within the scope
of the provided initial instance data, thus leaving the elements as
namespace unqualified.

I apologize for any confusion this might have caused.

This will be fixed for the next Working Draft. Note that our general
approach is subject to change, so there's no guarantee that this is how
things will be in the final Recommendation. Feedback is welcome!

Thanks,

Micah Dubinko
Co-editor, XForms




P.S. What if you really want namespaces in the instance data?

To have namespace qualified instance data you can either

1) declare a namespace prefix on the containing document and use it
consistently. E.g..

<html xmlns="..htmlns.." xmlns:xform="..xformsns.." xmlns:foo="..your ns..">
...
  <xform:instance>
    <foo:payment>
      <foo:cc>
        ...

The elements with binding expressions would then look like:

  <xform:selectOne ref="foo:payment/@type">
  ...
  <xform:inputText ref="foo:payment/foo:cc">
  ...
  <xform:inputText ref="foo:payment/foo:exp">



2) If you want to use default namespaces for readability, these are allowed
anywhere, of course, including in the instance data. Even with defaults,
however, there still needs to be a non-default prefix in scope where the
binding expressions are given:

<html xmlns="..htmlns..">
  <xform xmlns="..xformsns..">
    <instance>
      <payment xmlns="..your ns..">
        <cc>
          ...

The elements with binding expressions would then look like:

<... xmlns="..xformsns.." xmlns:foo="..your ns..">
  <selectOne ref="foo:payment/@type">
  ...
  <inputText ref="foo:payment/foo:cc">
  ...
  <inputText ref="foo:payment/foo:exp">

Received on Monday, 11 June 2001 03:12:08 UTC