> Are you reading the same spec as me? My version of production 16 doesn't
> mention "data" at all; all it says is that if there are characters after the
> PITarget, the first one must be white space.
Granted, but it does use "S", which is used throughout the XML
recommendation to mean "semantically insignificant whitespace".
There is an implicit separation between the one-or-more whitespace
characters expressed by "S" and the remaining characters.
What you said would be better represented by
((#x20 | #x9 | #xD | #xA) (Char* - (Char* '?>' Char*)))?
> Anyone who
> is spending time writing yet another XML parser would be adding a lot more
> value to the community if they spent their time on producing a formal
> specification instead.
I firmly believe that it is only the experience of implementation
that shakes out these deficiencies. A formal specification is
essentially a piece of code that the creator believes has been debugged
when it has been desk-checked.
"Almost all theorems are correct, but almost all
proofs have bugs."
-- A mathematician of my acquaintance
-- John Cowan http://www.ccil.org/~cowan cowan@ccil.org You tollerday donsk? N. You tolkatiff scowegian? Nn. You spigotty anglease? Nnn. You phonio saxo? Nnnn. Clear all so! 'Tis a Jute.... (Finnegans Wake 16.5)