[dfdl-wg] Ambiguous XPaths to hidden elements
Westhead, Martin (Martin)
westhead at avaya.com
Thu Jan 19 10:26:17 CST 2006
Hi All,
I believe the XPath standard permits the extension of the language by
the addition of new functions. If I'm correct 1 and 2 are not a change
to the language but are (I believe) a permitted extension.
However I would be happy with 1. It is probably tidier and as Steve
points out (later) it seems to be suggestive of a simple implementation.
Martin
>-----Original Message-----
>From: owner-dfdl-wg at ggf.org [mailto:owner-dfdl-wg at ggf.org] On Behalf Of
>Steve Hanson
>Sent: Thursday, January 19, 2006 1:44 AM
>To: Westhead, Martin (Martin)
>Cc: dfdl-wg at ggf.org; owner-dfdl-wg at ggf.org
>Subject: Re: [dfdl-wg] Ambiguous XPaths to hidden elements
>
>As a DFDL parser implementor I do not want modifications to the XPath
>syntax. I want to be able to reuse existing XPath implementations. It's
>also something else for the user to have to learn. So 2a/b/c are not
>attractive.
>
>Regards, Steve
>
>Steve Hanson
>WebSphere Message Brokers,
>IBM Hursley, England
>Internet: smh at uk.ibm.com
>Phone (+44)/(0) 1962-815848
>
>
>
> "Westhead, Martin
> (Martin)"
> <westhead at avaya.c
To
> om> <dfdl-wg at ggf.org>
> Sent by:
cc
> owner-dfdl-wg at ggf
> .org
Subject
> [dfdl-wg] Ambiguous XPaths to
> hidden elements
> 18/01/2006 20:24
>
>
>
>
>
>
>
>
>
>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
More information about the dfdl-wg
mailing list