RE: Question about 3.4.2, <restriction> content

> -----Original Message-----
> From: Alain Frisch [mailto:Alain.Frisch@inria.fr] 
> Sent: Thursday, April 21, 2005 7:29 PM
> To: W3C XML Schema Comments list
> Subject: Question about 3.4.2, <restriction> content
> 
> In section 3.4.2, we can read:
> 
> =============================================================
> <restriction
>    base = QName
>    id = ID
>    {any attributes with non-schema namespace . . .}>
>    Content: (annotation?, (simpleType?, (minExclusive | 
> minInclusive | 
> maxExclusive | maxInclusive | totalDigits | fractionDigits | length | 
> minLength | maxLength | enumeration | whiteSpace | pattern)*)?, 
> ((attribute | attributeGroup)*, anyAttribute?))
> </restriction> 
> =============================================================
> 
> I'm wondering why the ? after "pattern)*)"  is here, since it 
> does not change the language recognized by the regular expression.

You're right...either the '?' after simpleType or after the entire clause COULD be removed and the language would be the same.  Those regexes are programatically generally from reading the schema-for-schemas and I'm not sure it's worth tracking down how to "simplify" the regex...if it were wrong then it would certainly be worthwhile.  Maybe Henry could comment on the work involved.

pvb

Received on Friday, 22 April 2005 17:58:06 UTC