I believe this is an error. The default value 'a' is a xs:string, xs:string is not a subtype of xs:token, and so the default value is statically an invalid type. That's bad. We could fix this with value="xs:token('a')", but then you'd have to use xs:token() whenever you wanted to specify the value, so users would hate us. 😄
Given that we're going to check the supplied value agains the list of values, there's no benefit in type checking against xs:token, or even xs:string, we should just remove the as type.
We have a number of steps that declare an option with enumerated values like so:
I believe this is an error. The default value
'a'
is axs:string
,xs:string
is not a subtype ofxs:token
, and so the default value is statically an invalid type. That's bad. We could fix this withvalue="xs:token('a')"
, but then you'd have to usexs:token()
whenever you wanted to specify the value, so users would hate us. 😄Given that we're going to check the supplied value agains the list of values, there's no benefit in type checking against
xs:token
, or evenxs:string
, we should just remove theas
type.