Re: [xml-dev] "Introducing MicroXML, Part 1: Explore the basic principles of ...

From
Michael Kay <>
To
Date
2012-07-17T08:08:35Z
ID
<>
Thread
Re: [xml-dev] "Introducing MicroXML, Part 1: Explore the basic principles of ...
On 16/07/2012 23:43, John Cowan wrote:
> Michael Kay scripsit:
>
>> Giving access to the attributes of ancestor elements is a bit
>> questionable because it means the validity/type of an element
>> depends on the element's context and not only on its content.
> I'm not sure what that means.  Surely types that depend on the names of
> the ancestors are also "depending on the context"?  After all, the
> HyTime Lesson is that the element name is just another attribute value.
>
I was going to answer as follows:

"The change is that if you select an element as the validation root and 
do strict validation on it (which means looking for a global element 
declaration), then in XSD 1.0 the result didn't depend on anything in 
the instance outside the subtree rooted at that element; in XSD 1.1 it 
does."

On more careful examination, however, I see that we fixed this problem. 
Conditional type assignment only has access to the values of 
"inheritable attributes" that have the same validation context as the 
element being validated, so in effect attributes outside the validation 
root don't affect the outcome, just as element names outside the 
validation root don't.

Sorry for this excursion up the garden path.

Michael Kay
Saxonica