RE: any validation for elements

I think your interpretation is pretty close.
 
Why use strict? It's useful when you are writing a schema that you expect to
be imported into another schema. It says "at this point you can insert any
element that has been defined in the importing schema".
 
With lax, if you find an element that has a definition in the schema, then
you validate it according to that definition (that is, you validate the
whole subtree). There's some debate about what you do with elements that
don't have a definition in the schema, the usual view seems to be that you
carry on doing lax validation to the grandchildren and so on.
 
Michael Kay
http://www.saxonica.com/



  _____  

From: xmlschema-dev-request@w3.org [mailto:xmlschema-dev-request@w3.org] On
Behalf Of Shlomo Yona
Sent: 06 March 2007 15:56
To: xmlschema-dev@w3.org
Subject: xsd:any validation for elements



Hello,

 

I'm not sure that I'm clear about the parsing instructions for xsd:any. Your
help in interpretation of the standard is most appreciated:

 

The "skip" parser instruction in xsd:any says (I think) - only perform well
formedness and namespace checks but don't try to validate element names and
types.

The "lax" parser instruction in xsd:any says (I think) - same as skip but if
you encounter an element name that is defined in your schema, then validate
it against the schema.

The "strict" says (I think) - same as "lax" but if you don't know the
element name - it is a validation error.

 

The following things make me think that I misinterpret the standard
correctly:

*	Why use "strict"? you might as well not defined your content group
as xsd:any. 

*	The "lax" confuses me because I'm not sure if when I encounter <a> I
should make sure that all its child elements and attributes conform with the
schema or just <a> itself with its attributes 

 

Actually, there are a few more unclear things, but I might resolve them if I
get the above stuff straight.

 

Thanks in advance for your help.

 

 

Shlomo.

Received on Tuesday, 6 March 2007 21:26:15 UTC