- From: <birkettd@vax.cs.hscsyr.edu>
- Date: Mon, 13 May 1996 18:21:39 -0500 (EST)
- To: Koen Holtman <koen@win.tue.nl>
- Cc: Dave Kristol <dmk@allegra.att.com>, http-wg%cuckoo.hpl.hp.com@hplb.hpl.hp.com
I have no idea what any of this stuff means; I am just a lowly medical student in Syracuse, NY. Why is this happening to me? On Mon, 13 May 1996, Koen Holtman wrote: > Dave Kristol: > > > >Two questions about the grammar. > > > > Accept = "Accept" ":" #( > > media-range > > [ ( ":" | ";" > > range-parameter > > *( ";" range-parameter ) ] > > | extension-token ) > > > > > >1) Should that be *( (":" | ";") range-parameter ) ? > > That would also work, but it would even be more horrible. I have > received mixed comments about the : stuff at the web conference. Some > people like it, some people don't. The reason for having it is to get > rid of a potential syntactic ambiguity: some (future) MIME types could > have numeric parameters called `q'. Sure, the solution is horrible. > There is actually another solution, that you may call less or more > horrible, depending on the parsing technology you use. See below. > > >2) Is <extension-token> really useful? > > Yes. I have use for such an extension-token in my transparent content > negotiation design. Of course, I could also put it in another header, > or even in its own header, but I think it is nicest in Accept. > > > Isn't it syntactically ambiguous? > > No. A media-range always has a / in it, an extension-token never has a > / in it. > > >(Okay, okay, so it's LR(1). That's messy, if not unprecedented.) > > >It would be nice to have an example that shows both parameters and > >range-parameters, such as: > > text/html; level=1: q=0.9, text/html; level=2: q=1.0 > > Yes. > > --- > > Other solution to the syntactic ambiguity problem: > > Accept = "Accept" ":" #( > media-range > [ range-parameters ] ) > > media-range = ( "*/*" > | ( type "/" "*" ) > | ( type "/" subtype ) > ) *( ";" parameter ) > > range-parameters = ( ";" "q" "=" qvalue ) > *(";" extension-range-parameter ) > > extension-range-parameter = ( token "=" token ) > > extension-token = token > > together with the text: > > A media-range which includes a parameter with the attribute name "q" > MUST be followed by a range-parameters part. This rule is meant to > disambiguate the parsing of such constructs. An example is: > > text/x-example;q=0;r=3;q=1;r=4 > > which is "text/x-example;q=0;r=3" with a quality value of 1. > > In my opinion, It is not yet too late to switch to this solution; I > could propose appropriate edits to Jim Gettys if many people on this > list say they like it better than the solution with the colon. > > >Dave Kristol > > Koen. > >
Received on Monday, 13 May 1996 15:22:30 UTC