[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