Re: Multiple Settings in a Cue

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