Hi All,
I just want to say that I hope you will change the resolution found in
[1] to one where there is only one type on a node. I have never thought
that there was a problem with that the equivalence statement. I like
that sentence because it uses all the inheritance rules from XML Schema
and validation requirements by using that single word "equivalent".
Best regards,
David
Klotz, Leigh wrote:
> Steven,
> Thank you for your response to this issue.
>
> My concern is that there are two independent sources of type
> information, and that the effects of these two sources under XForms 1.0
> and XForms Basic 1.0 might be different, depending on how conflicts are
> handled in XForms 1.0 full conformance. I gave a use case where an
> XForms 1.0 Basic author might consider authoring a form that would work
> properly in XForms Basic but not in XForms full conformance.
>
> It may be that the existing recommendation wording about xsi:type
> equivalence is sufficient, and I would like to hear from the Working
> Group about why it is not.
>
> Unfortunately, the proposed resolution does not address my concern about
> how to resolve the two sources of information; instead, it restates it
> to say that there are two sources of information, and offers no
> prescription for interoperability. Additionally, I am concerned that
> the solution proposed (having two separate pools of type information)
> makes XForms more difficult for authors, and am hopeful that there is a
> better solution.
>
> Therefore, I must with reluctance say that this response does not
> satisfy my comment.
>
> As you are aware, I rejoined the XForms Working Group on behalf of Xerox
> recently, though I was not a representative at the time the comment was
> filed. I look forward to working through this issue with the rest of
> the Working Group and hope for resolution to my comment at the next
> Face-to-Face meeting.
>
> Sincerely,
> Leigh L. Klotz, Jr.
> Xerox Corporation
>
>
>
> -----Original Message-----
> From: Steven Pemberton [mailto:steven.pemberton@cwi.nl]
> Sent: Tuesday, May 02, 2006 7:26 AM
> To: Klotz, Leigh; 'www-forms-editor@w3.org'
> Subject: Re: Problem with XForms 1.0 Basic Profile document when used
> with XFo rms Full processor
>
> Leigh,
>
> Thank you for your comment.
>
> The XForms WG discussed this issue[1] and resolved that the problem lay
>
> with the description of how types are bound to the data in XForms. They
>
> resolved to:
>
> "Issue an erratum for 6.1.1 Type property about how the type is bound to
>
> the data. It mustn't be done by equivalency to xsi:type attribute."
>
> If this reply satisfies your comment, please reply to this mail to that
>
> effect.
>
> Many thanks,
>
> Steven Pemberton
> For the XForms WG
>
> [1] http://www.w3.org/2006/03/23-xforms-minutes#item02
>
> On Tue, 31 Aug 2004 23:23:56 +0200, Klotz, Leigh
> <Leigh.Klotz@pahv.xerox.com> wrote:
>
>
>> In "3 Conformance", the XForms 1.0 Basic Profile CR [1] says
>> XForms Basic Profile processors may implement a subset of an XML
>>
> Schema
>
>> processor
>> [XML Schema part 1], [XML Schema part 2], requiring only what is
>> necessary
>> to process
>> the attribute xsi:type on instance data for simpleTypes only and the
>>
>
>
>> type
>> model
>> item property for simpleTypes only.
>>
>> In "3.3.1 The model Element", the XForms 1.0 REC [2] says
>> Optional list of xsd:anyURI links to XML Schema documents outside
>>
> this
>
>> model element.
>> The XForms Processor must process all Schemas listed in this
>>
> attribute.
>
>> My understanding is that the Basic Profile changes this "must" to
>>
> either
>
>> a
>> "must not" or perhaps a "should not" for XForms Basic.
>> In any case, I assume that the schema attribute (and similarly, the
>> embedded
>> xsd:schema element) are allowed in documents processed by an XForms
>>
> Basic
>
>> processor, but are to be ignored.
>>
>> Now, consider the following case where an instance contains an element
>>
>
>
>> with
>> a simple value (such as a decimal or a time) and a boolean attribute:
>>
>> <time precise="true">06:00:00</time>
>>
>> The goal of adding an attribute to an element of simple type content
>>
> is
>
>> common, and in fact the first qustion in a popular XML Schema FAQ [3]
>>
>
>
>> shows
>> that it is in fact, a frequently-asked question. The cited FAQ then
>> gives a
>> complexType definition extending a simple type and adding an
>>
> attribute.
>
>> Here is a complete XForms Full example, using XML Schema, a sample
>> instance
>> document, and an XHTML 1 document with XForms controls, using the XML
>> Schema. It relies on the XML Schema referred to from the model to
>>
> define
>
>> the type of the attribute as boolean, so that the XForms Processor may
>> display it as a checkbox.
>>
>> XForms Basic does not interpret the schema attribute, but it does
>> "process
>> ... type model item property for simpleTypes only" so we can add
>> <xf:bind ref="my:length/@my:precise" type="xsd:boolean" />
>> to the model, and both Full and Basic XForms Processors will display
>>
> the
>
>> attribute as a boolean (for example, as a checkbox in a graphical user
>> interface).
>>
>> Note that the base type of the element, xsd:time, is also one that
>>
> XForms
>
>> processors may choose to use for display purposes, perhaps by showing
>>
> a
>
>> time
>> chooser (see "8.1.2 The Input Element" [4]). So, the natural next
>>
> step
>
>> would be to bind that type to the node, as follows:
>> <xf:bind ref="my:length" type="xsd:time" />
>> This will indeed work in XForms Basic, because it will process the
>>
> type
>
>> model item property, and xsd:time is an XML Schema simpleType and is
>>
> in
>
>> the
>> list of types to be processed by XForms Basic.
>>
>> Unfortunately, XForms Full processors have already interpreted the XML
>> Schema specified by the model schema attribute, and have a conflicting
>>
>
>
>> type.
>>
>> Therefore, I believe that it is difficult to create XForms Full
>>
> profile
>
>> documents that also work in XForms Basic, unless some subtyping
>> allowances
>> are introduced into the consistency checking performed by the type
>>
> model
>
>> item property.
>>
>> Leigh.
>>
>> -------------------precision.xml---------------------
>> <?xml version="1.0" ?>
>> <data xmlns="http://www.example.com">
>> <time precise="true">06:00:00</time>
>> </data>
>> ---------------------precision.xsd-----------------------
>> <?xml version="1.0" ?>
>> <xsd:schema xmlns:my="http://www.example.com"
>> targetNamespace="http://www.example.com"
>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> elementFormDefault="qualified">
>> <xsd:element name="data">
>> <xsd:complexType>
>> <xsd:sequence>
>> <xsd:element ref="my:time" />
>> </xsd:sequence>
>> </xsd:complexType>
>> </xsd:element>
>> <xsd:element name="time" type="my:preciseTime"/>
>> <xsd:complexType name="preciseTime">
>> <xsd:simpleContent>
>> <xsd:extension base="xsd:time">
>> <xsd:attribute name="precise" type="xsd:boolean"
>>
> use="required"/>
>
>> </xsd:extension>
>> </xsd:simpleContent>
>> </xsd:complexType>
>> </xsd:schema>
>>
>> ---------------------precision.xhtml---------------------
>> <?xml version="1.0" encoding="iso-8859-1" ?>
>> <html xmlns="http://www.w3.org/1999/xhtml"
>> xmlns:xf="http://www.w3.org/2002/xforms"
>> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>> xmlns:my="http://www.example.com">
>> <head>
>> <title>XForms Samples</title>
>> <xf:model schema="precision.xsd">
>> <xf:instance src="precision.xml" />
>> <xf:bind nodeset="my:time" type="xsd:time" />
>> <xf:bind nodeset="my:time/@my:precise" type="xsd:boolean" />
>> </xf:model>
>> </head>
>> <body>
>> <h1>Precision</h1>
>> <xf:group>
>> <xf:input ref="my:time"><xf:label>Time</xf:label></xf:input>
>> <xf:input
>> ref="my:time/@my:precise"><xf:label>Precise?</xf:label></xf:input>
>> </xf:group>
>> </body>
>> </html>
>> -------------------------------------------------------------
>>
>> [1] http://www.w3.org/TR/2003/CR-xforms-basic-20031014/#id2606183
>> [2]
>>
>>
> http://www.w3.org/TR/2003/REC-xforms-20031014/index-all.html#structure-m
> odel
>
>> [3] http://www.mathling.com/xsd/
>> [4]
>>
> http://www.w3.org/TR/2003/REC-xforms-20031014/index-all.html#ui-input
>
>>
>
>
>
>
--
--------------------------------------------
David Landwehr (david.landwehr@solidapp.com)
Chief Executive Officer, SolidApp
Web: http://www.solidapp.com
Office: +45 48268212
Mobile: +45 24275518
--------------------------------------------