OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [xml-dev] %x;? - Opportunity for pedantry and exegesis



Pedantry and exegesis?  I'm there, baby!  (And I'm a little surprised to 
see that there's only been one other reply...)

At 11:55 27-09-2001, Tim Bray wrote:
>Consider the following content model fragment:
>
>  %x;?
>
>as in <!ELEMENT a (%x;?, y)>
>
>It has been argued to me that this can't possibly
>ever be well-formed per a careful reading of the XML
>spec, and the arguments look correct to me.
>
>See production [48] and section 4.4.8.

I concur (though you'd know better than I).  I was actually a little 
surprised to note that (foo ?) isn't legal, not even in SGML (see <URL: 
http://crism.maden.org/consulting/pub/sgmldefs.html#[130] >).

>I've been told that the XHTML DTDs would suffer
>if this is true.

A quick grep indicated that they might, but as Bill Lindsey noted, they 
dodge the bullet with things like:

<!ENTITY % table.content
      "( %caption.qname;?, %tr.qname;+ )"
 >
<!ELEMENT %table.qname;  %table.content; >

I think that, although perhaps unintended, this gotcha is a good one.  A 
compliant validating parser should detect the problem, which protects users 
from something like

<!ENTITY % x "x">
<!ELEMENT a (%x;?)>

changing into

<!ENTITY % x "x | y">
<!ELEMENT a (%x;?)>

which, if legal, would have surprising results.

-Chris
-- 
Christopher R. Maden, Principal Consultant, HMM Consulting Int'l, Inc.
DTDs/schemas - conversion - ebooks - publishing - Web - B2B - training
<URL: http://www.hmmci.com/ > <URL: http://crism.maden.org/consulting/ >
PGP Fingerprint: BBA6 4085 DED0 E176 D6D4  5DFC AC52 F825 AFEC 58DA