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] Substitution Groups

[ Lists Home | Date Index | Thread Index ]

"Paul Spencer" <xml-dev@boynings.co.uk> writes:

> I have been trying to work with a set of published schemas that use
> substitution groups and found that the schemas themselves were not valid. So
> I started looking at other published schemas that use them and found that
> these were also not accepted by one or more XML processors (I tried Xerces,
> MSXML and .NET) or used some very complex work-arounds.

I'd be very interested to see concrete example docs and error messages
-- this has not surfaced before as an interop problem.

> Are substitution groups practical when the head of the group is in a
> different schema document from the members of the group? 


> The scenario is this:

> File A defines a complex data type AType and an element A of that type.
> File B defines a complex type BType that is an extension of AType and an
> element B of that type. Element B is in the substitution group for element
> A.

Yup, good design pattern.

> It as an error if File B does not <include> file A since the XML Processor
> can't find the head of the substitution group.

File B must <import> file A's namespace.  That's the minimum necessary
to declare victory.

> File A must <include> file B otherwise an instance that uses element B will
> be invalid.

No, bad idea.

Instance documents and/or validators and or validation API users must
find/point to both schema documents.  There are a number of ways to do
this -- which ones work/are sufficient is 

 - you may well point to file A in the <import> in file B;
 - your instance doc is likely to point to file A and/or file B;
 - your invocation might do likewise;
 - your validator may do it all on the basis of the namespace URIs
   in your instance.

 Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
                     Half-time member of W3C Team
    2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
            Fax: (44) 131 650-4587, e-mail: ht@inf.ed.ac.uk
                   URL: http://www.ltg.ed.ac.uk/~ht/
[mail really from me _always_ has this .sig -- mail without it is forged spam]


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

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