[dfdl-wg] Ambiguous XPaths to hidden elements
Westhead, Martin (Martin)
westhead at avaya.com
Wed Jan 18 14:24:37 CST 2006
Hi folks,
This is to try to pick up on the issue identified by Suman in today's
call.
The Issue
Consider the following example:
<xs:element name="root">
<xs:complexType>
<xs:sequence>
<xs:annotation><xs:appinfo source="http://dataformat.org" />
<hidden>
<xs:element name="repeats" type="xs:integer"/>
</hidden>
</xs:appinfo></xs:annotation >
<xs:element name="testElement"
type="xs:integer " minOccurs="0" maxOccurs="unbounded"
dfdl:repeatCount="../repeats">
</xs:complexType>
</xs:element>
The problem is that the path "../repeats" can be broken by modifications
to the logical model due to name clashes on "repeats" and there are
cases that can be constructed where this would not be obvious to a user.
Possible Solutions
Possible fixes to this include:
1. Disallow XPath references to hidden elements the user is forced
to place the material into the global context to refer to it.
2. Provide a special XPath operator to indicate we are referencing
a hidden element, possibilities include:
a. "../hidden(repeats)"
b. "hidden(../repeats)"
c. "../dfdl:hidden/repeats"
3. Only allow hidden elements to be present in top level global
complex types. These can then be included where needed. (This is the
solution that Suman was pushing but I don't fully understand it - in
particular I don't see how it resolves the ambiguity issue.)
I believe my preference here is 2a or 2b followed by 1.
Comments/suggestions/opinions?
Thanks,
Martin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.ogf.org/pipermail/dfdl-wg/attachments/20060118/40d1a8f7/attachment.html
More information about the dfdl-wg
mailing list