Re: Exclusive C14N Error: Using #default in NMTOKENS

On Thursday 05 December 2002 12:36 pm, John Boyer wrote:
> However, the XForms guys immediately wanted to know why we wouldn't
> derive a type from NMTOKENS to describe the content model, so I thought
> I'd put it forward.

With respect to generally enabling the '#' character, I don't think we could 
derive from NMTOKENS [2] as I'm not sure how to preclude the occurrence of 
a lexical value [2]. We could go back to token [3] and derive from there, 
but then we would have to say myNMTOKEN is the whole set in XML1.0 plus the 
'#' character. and myNMTOKENS is a a union of myNMTOKEN separated by white 
space. I'm not too keen on that.

[1] http://www.w3.org/TR/xmlschema-2/#NMTOKENS
[2] http://www.w3.org/TR/xmlschema-2/#dt-lexical-space
[3] http://www.w3.org/TR/xmlschema-2/#token

With respect to adding our specific '#default' token, I suppose we could 
create type PrefixListType as NMTOKENS + '#default'. Something like:

    <attribute name="PrefixListType">
      <simpleType>
        <union>
          <simpleType>
            <restriction base='NMSTOKENS'/>
          </simpleType>
          <simpleType>
            <restriction base='string'>
              <enumeration value='#default'/>
            </restriction>
          </simpleType>
        </union>
      </simpleType>
    </attribute>

(I have no idea that this works absent testing/playing.) However, I figure 
the original creators of NMTOKEN had a good reason for preventing '#' from 
appearing there... and what's the benefit?

Received on Thursday, 5 December 2002 14:31:30 UTC