- From: Kyle Barnhart <kyle@barnhart.ca>
- Date: Tue, 27 Nov 2012 14:16:27 -0500
- To: Simon Pieters <simonp@opera.com>
- Cc: Loretta Guarino Reid <lorettaguarino@google.com>, public-texttracks@w3.org
- Message-ID: <CAD7oyVDnWKafd3UEBM2_wHUP+88X4Sc1uCVXJcmyg0zpWS28zA@mail.gmail.com>
Let me point out why I asked this question. Twice in the WebVTT specification it is explicitly pointed out that an "ordered list" is used. - WebVTT Internal Node Objects have an ordered list of child WebVTT Node Objects [1] - WebVTT Internal Node Objects also have an ordered list of class names [1] In addition the word "append" is used 27 times in the specification indicating that order is important. In the parse WebVTT settings algorithm [2], it only states that there is a list of setting token. There is no reference to order. In the split a string on spaces algorithm [3], it specifies only that a list is created. It also states "add" to the list and not "append". The common micro syntax document [3] uses the word "append" 9 times. In addition there are explicit instruction for ordered and unordered sets of tokens. The order of a list is so often explicitly stated or implied through the phrases "ordered list" and "append" it appears to be the precedent that lists which must be ordered must use those phrases. I looked very hard for some sort of clarification that lists are ordered by default but I could not find any. If explicitly stating or implying that something is ordered is the precedent, then when it is not explicitly stated or implied, I must assume that it may not be ordered. What it means is that I could create the list from adding to the start or inserting to the middle or some other method. Or use some complex data structure that adds key value pairs by some means that does not preserver order. All of this would be perfectly valid according to the specifications, but would mean that the order of the list across implementations is unpredictable. [1] http://dev.w3.org/html5/webvtt/#webvtt-cue-text-parsing-rules [2] http://dev.w3.org/html5/webvtt/#parse-the-webvtt-settings [3] http://dev.w3.org/html5/spec//common-microsyntaxes.html#split-a-string-on-spaces On Tue, Nov 27, 2012 at 10:22 AM, Simon Pieters <simonp@opera.com> wrote: > On Tue, 27 Nov 2012 16:12:01 +0100, Loretta Guarino Reid < > lorettaguarino@google.com> wrote: > > Why would it not be ordered? >>> >> >> >> Because the entire paragraph says: >> >> The WebVTT cue settings part of a WebVTT >> cue<http://dev.w3.org/html5/**webvtt/#webvtt-cue<http://dev.w3.org/html5/webvtt/#webvtt-cue>>consists >> of zero or >> >> more of the following components, in any order, >> separated from each other by one or more U+0020 SPACE characters or U+0009 >> CHARACTER TABULATION (tab) characters. Each component must not be included >> more than once per WebVTT cue >> settings<http://dev.w3.org/**html5/webvtt/#webvtt-cue-**settings<http://dev.w3.org/html5/webvtt/#webvtt-cue-settings> >> >string. >> >> >> So the cue settings components can be in any order. >> > > Those are requirements for writing, not for parsing. Requirements in that > section don't apply to you. > > The list I thought you were referring to is the one in "split a string on > spaces" algorithm, referenced from http://dev.w3.org/html5/** > webvtt/#parse-the-webvtt-**settings<http://dev.w3.org/html5/webvtt/#parse-the-webvtt-settings> > > > -- > Simon Pieters > Opera Software >
Received on Tuesday, 27 November 2012 19:16:58 UTC