OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   RE: [xml-dev] XSD question

[ Lists Home | Date Index | Thread Index ]

>Subscribe by email to xmlschema-dev-request@w3.org

Well, as long as we've got the thread going here... 

>Lax processing is recursive, so the non-beta
>children of alpha will be laxly validated as well, unto the n-th

Then why was the word "children" used in the quoted passage ("...or any
items among its [children]")instead of "descendants"?

My experience seems to bear out what Dare says. Here's my schema:

  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";>
    <xs:element name="alpha">
          <xs:any processContents="lax" maxOccurs="unbounded"/>
    <xs:element name="beta">
          <xs:element name="c" type="xs:string"/>
          <xs:element name="d" type="xs:string"/>
Xerces C++ reports errors for the third beta element below, but not the

  <alpha xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
    <beta><c/><d/></beta> <!-- matches beta content model -->
      <beta><x/></beta> <!-- doesn't, but grandchild of alpha -->
    <beta><y/></beta>       <!-- doesn't -->
In the absence of the kinds of declarations described by Jeni for other
potential parents of beta, descendants of the processContents="lax"
element's children seem to be processed as if those children had a
processContents value of "skip". Otherwise, the x element in the second beta
element would have triggered an error, right? 

My basic goal is this: to write a schema that accepts everything in a
well-formed document except those elements specifically declared in that
schema, wherever they may turn up in the document. It's not looking
encouraging in XSD, although I have managed it in RNG. 



News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS