Fall back for missing xsi:type?

Hello,


Can anyone explain the following comment from the "changes since" in XSD 
1.1?

"When an |xsi:type| attribute appears on an element, and has a QName as 
its value, but the QName does not resolve to a known type definition, 
processors are now required to "fall back" to lax validation, using the 
declared {type <http://www.w3.org/TR/xmlschema11-1/#ed-type_definition>
definition} <http://www.w3.org/TR/xmlschema11-1/#ed-type_definition> of 
the ·governing element declaration· 
<http://www.w3.org/TR/xmlschema11-1/#key-governing-ed> as the ·governing 
type definition· 
<http://www.w3.org/TR/xmlschema11-1/#key-governing-type-elem>."



First, I believe that lax validation is by definition against 
xs:anyType, so I'm not sure what it means to do lax validation using 
some other type.

Second, such a case as is being described violates rule 4 of Element 
Locally Valid (Element) (§3.3.4.3) 
<http://www.w3.org/TR/xmlschema11-1/#cvc-elt> (the instance-specified 
type definition would be absent), and I don't see where there is any 
exception made to it.  There is some verbiage (in §3.3.4.3) about what 
happens to the governing type declaration in this case, but I don't 
think this verbiage is giving an exception to rule 4 (I assume it is 
summarizing the application of the definition of "governing type 
declaration").

Schema-Validity Assessment (Element) (§3.3.4.6) 
<http://www.w3.org/TR/xmlschema11-1/#cvc-assess-elt> does give a 
requirement for lax assessment according to xs:anyType, but I don't 
think it applies here because the situation described doesn't prevent 
assessment - it just has "invalid" as the outcome.  Besides that, the 
type to use for the lax assessment doesn't agree with the statement I 
quoted.

So, in short, I don't know what to make of the above statement.  Can 
anyone point me to where the "fall back" requirement can be found?

Thanks,

--
Kevin Braun
Objective Systems, Inc.
http://www.obj-sys.com

Received on Tuesday, 6 October 2009 20:47:48 UTC