Altova Mailing List Archives>Archive Index >xmlschema-dev Archive Home >Recent entries >Thread Prev - Question on xmlschema-test-collection >Thread Next - RE: [xmlschema-dev] [xmlschema-dev]To: xmlschema-dev@--.--- Date: 7/13/2004 1:23:00 PM Hello,
I asked a similar question earlier, but I would like clarification since I=
didn't make it clear earlier that I wanted to restrict xs:anyType.
Is the following schema valid?
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:element name="root" type="empty"/>
<xs:complexType name="empty">
<xs:complexContent>
<xs:restriction base="xs:anyType">
<xs:sequence>
<xs:any minOccurs="0"
maxOccurs="0" processContents="lax"/>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:schema>
XSV 2.5, XMLSpy">XMLSpy, and Xerces-J 2.6.2 all accept this schema as valid, but
Xerces-C 2.5 reports an error claiming that maxOccurs=0 is illegal. When=
this was pointed out on the xerces-c list the folks there seemed
unconvinced and replied:
>'the derivation by restriction has some constraints, for some reference,
>please see the following table:
>http://www.w3.org/TR/xmlschema-0/#restrictsTable and
>http://www.w3.org/TR/xmlschema-1/#section-Built-in-Complex-Type-Definition
>You'll see that anyType has { minOccurs, maxOccurs } as { 1, 1 } which
>can't be restricted.'
As I understand it, the restrictsTable referred to above (which has been
amended in an errata [1]) only "shows several examples" of how element
definitions may be restricted, it's not an exhaustive list of what is
allowed. Also, case 5.3 of [2] says "the particle of the complex type
definition itself must be a =B7valid restriction=B7 of the particle of the=
{content type} of the {base type definition}". In the built in complex
type definition [3] the {particle} of the {content type} is a sequence with=
{minOccurs, maxOccurs} = {0, unbounded}, which can be restricted to {0,=
0}.
However, I'm unlikely to convince anyone on the Xerces-C list that the
above schema is correct (or that everyone else is wrong) without some sort=
of confirmation from this list.
Finally, is
<xs:complexType name="empty"/>
equivalent (in the sense that <root/> is the only valid document) to the
definition above?
Thanks in advance,
Keith
References
[1] http://www.w3.org/2001/05/xmlschema-errata.html#e0-20
[2] http://www.w3.org/TR/xmlschema-1/#derivation-ok-restriction
[3]=
http://www.w3.org/TR/xmlschema-1/#section-Built-in-Complex-Type-Definition
--------------------------------------------------
Keith Suderman
Technical Specialist
American National Corpus
suderman@c...
http://americannationalcorpus.org
From nobody@w... Wed Jul 14 02:18:48 2004
Return-Path: <nobody@w...>
X-Original-To: xmlschema- | ||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
