W3C home > Mailing lists > Public > xml-editor@w3.org > April to June 2017

RE: Definition of the grammar syntax

From: Roy Walmsley <roy.walmsley@ntlworld.com>
Date: Tue, 9 May 2017 15:55:39 +0100
To: "'C. M. Sperberg-McQueen'" <cmsmcq@blackmesatech.com>
Cc: <xml-editor@w3.org>
Message-ID: <008301d2c8d4$52cfd5a0$f86f80e0$@ntlworld.com>

Thank you for your response. 

Sorry if I misled you slightly. I tended to write the e-mail in chronological order. Thus, after finding the Notation clause I hope that the text therein would have been sufficient to properly interpret the two production rules I quoted. It just so happened that I wanted to look at those rules as a reference for other, external, discussions, which is why they got a mention. It was not that there was anything amiss with those two rules in particular.

So yes, I didn't read the table of contents. When I wanted to know how to interpret the production rules I went straight to the Terminology clause, where I expected to find at least a reference to the notation used. And thinking about it, the single word heading "Notation" could be referring to anything. There's nothing to suggest it is defining the grammar for the production rules. So, even had I read the TOC, I would probably not have realised that was where to look.

All the best,


-----Original Message-----
From: C. M. Sperberg-McQueen [mailto:cmsmcq@blackmesatech.com] 
Sent: 09 May 2017 04:28
To: Roy Walmsley <roy.walmsley@ntlworld.com>
Cc: C. M. Sperberg-McQueen <cmsmcq@blackmesatech.com>; xml-editor@w3.org
Subject: Re: Definition of the grammar syntax

> On May 8, 2017, at 7:18 AM, Roy Walmsley <roy.walmsley@ntlworld.com> wrote:
> Hi,
> I was looking at the production rules in the XML specification (http://www.w3.org/TR/xml11). I wanted to fully understand the grammar used, so reviewed the opening sections of the document to look for a reference to the syntax / semantics that the grammar definitions are based on. For one who has limited familiarity with grammars, I do not fully understand, for example, the following:
> Production rule [1] document – see 
> https://www.w3.org/TR/2004/REC-xml11-20040204/#NT-document
> Production rule [10] AttValue – see 
> https://www.w3.org/TR/2004/REC-xml11-20040204/#NT-AttValue
> Nowhere in clause 1 could I find the normative reference to the grammar for these rules. Fortunately, I happened to scroll down to look at the references at the bottom of the document, and chanced upon clause 6 Notation. Please can a forward reference to this clause be added to clause 1.2 Terminology, so that readers are immediately aware where to locate this information. This would then align with  the other terminological details, such as, for example, the use of verbal forms and the reference to IETF RFC 2119.

That may be a good idea; the absence of a forward reference in 1.2 is (I suppose) based on the assumption that the reference to section 6 Notation in the table of contents already serves as a forward pointer of the necessary kind.  But your report provides evidence that for at least some readers the TOC is not enough.

As regards production 1 in XML 1.1, I share your confusion:  I do not know what it means.  Or rather, I am pretty sure that it means

[1] document ::= (prolog element Misc*) - (Char* RestrictedChar Char*)

and not

[1] document ::= prolog element (Misc* - Char*) RestrictedChar Char*

but I don't see anything in the section on Notation that one could use to prove either interpretation; I have the impression that somewhere along the way the responsible WG lost sight of the fact that the description of the grammar notation does not define a full precedence hierarchy, and that parentheses are necessary to avoid ambiguity and to keep the notation simple.

As for production 10, are you still confused or did section 6 answer your questions?

C. M. Sperberg-McQueen
Black Mesa Technologies LLC
Received on Tuesday, 9 May 2017 14:56:15 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:12:55 UTC