Niels Grundtvig Nielsen wrote:
> Just upgraded to 3.6.1, now that I have been allotted time to
> concentrate on a DITA test project <g>
> 
> First question: whatever combination of letters and/or numbers I use as
> an arbitrary ID, validation always fails. It looks to me as though the
> ID has to be of type NMTOKEN ? which, according to w3c, is "any mixture
> of name characters". Tips on resolving this will be appreciated!
> 

I found this in the W3C recommendation (http://www.w3.org/TR/xml/):

---
Values of type ID  MUST match the Name production.

[4] NameChar ::= Letter | Digit | '.' | '-' | '_' | ':' | CombiningChar
| Extender

[5] Name ::= (Letter | '_' | ':') (NameChar)*
---

This is clearly not "any mixture of name characters".




---
PS: Strangely, W3C XML Schema (http://www.w3.org/TR/xmlschema-2/#ID) is
*more* *restrictive* (???)

xsd:ID is defined as follows:

[Definition:] ID represents the ID attribute type from [XML 1.0 (Second
Edition)]. The ?value space? of ID is the set of all strings that
?match? the NCName production in [Namespaces in XML]. The ?lexical
space? of ID is the set of all strings that ?match? the NCName
production in [Namespaces in XML]. The ?base type? of ID is NCName.

[4] NCName ::= (Letter | '_') (NCNameChar)* /*XML Name minus the ":"*/



Reply via email to