- From: Henry S. Thompson <ht@inf.ed.ac.uk>
- Date: Sat, 02 Apr 2005 15:55:25 +0100
- To: "Stan Kitsis" <skits@microsoft.com>
- Cc: <xmlschema-dev@w3.org>
"Stan Kitsis" <skits@microsoft.com> writes:
> What should be the behavior of schema validators in the following
> example?
>
> <xs:element name="head" type="xs:integer" block="substitution"/>
>
> <xs:element name="member" type="xs:string" substitutionGroup="head"/>
>
> Is "member" element a "potential member" [of head's substitution group]?
Yes.
> [Is <member> element a] non-member of head's substitution group?
Yes.
> Should validators report an error/warning because "member" element's
> type is neither the same nor derived from "head" element's type?
Yes, because the relevant constraint [1] doesn't talk about
membership, just the relevant component properties:
"If there is a {substitution group affiliation}, the {type
definition} of the element declaration must be validly derived from
the {type definition} of the {substitution group affiliation}, given
the value of the {substitution group exclusions} of the
{substitution group affiliation}, as defined in . . . Type
Derivation OK (Simple) (3.14.6)"
> Should they ignore the type checking since "head" element blocks all
> substitutions and therefore "member" element is not a member of
> head's substitution group?
No.
> Should both checks be suspended until the time when "member" is used
> as a part of the substitution group?
No.
ht
[1] http://www.w3.org/TR/xmlschema-1/#e-props-correct
--
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]
Received on Saturday, 2 April 2005 15:02:58 UTC