Re: inconsistency in Schema Structures PR vis. element block attribute writes:

> This problem seems to be straightforward:  in section 3.3.2 of the Schema
> Structures document,
>   block = (#all | List of (substitution | extension | restriction | list |
> union))
> But in section 3.3.1,
> {disallowed substitutions}
> A subset of {substitution, extension, restriction}.
> and again in 3.3.2:
> {disallowed substitutions}
> A set depending on the
> ?actual value
> of the block
> [attribute],
> if present, otherwise on the
> ?actual value
> of the blockDefault
> [attribute]
> of the ancestor
> <schema>
> element information item, if present, otherwise on the empty string. Call
> this the EBV (for effective block value). Then the value of this property
> is the
> appropriate case among the following:
> 1 If the EBV is the empty string, then the empty set;
> 2 If the EBV is #all, then {extension, restriction, substitution};
> 3 otherwise a set with members drawn from the set above, each being present
> or absent depending on whether the
> ?actual value (which is a list) contains an equivalently named item.
> I take it that "union" and "list" are not legitimate values for "block" in
> element information items?

No, since an element with a type related to another by list or union
cannot in any case be substituted for it.

The general question of the interpretation of #all in the three or
four distinct places it occurs should probably be revisted by the WG.

  Henry S. Thompson, HCRC Language Technology Group, University of Edinburgh
          W3C Fellow 1999--2001, part-time member of W3C Team
     2 Buccleuch Place, Edinburgh EH8 9LW, SCOTLAND -- (44) 131 650-4440
	    Fax: (44) 131 650-4587, e-mail:

Received on Friday, 23 March 2001 05:10:14 UTC