[whatwg] Spec comments, section 4.8

In 4.8.2.1.9:

It's kind of a nitpick, but I don't think this sentence is accurate:
"Another example of an image that defies full description is a
fractal, which, by definition, is infinite in complexity."

First of all, we're talking about describing images here, which are
presumably projected onto finite-resolution displays, and which are
certainly being processed by finite-resolution retinas.  Visually,
it's not possible for anything to have infinite complexity.

Second of all, mathematically, fractals are rather interesting things,
but "infinite in complexity" is not a correct description by any
definition of complexity I'm aware of.  Fractals are often generated
by very simple definitions or computer programs, so they have low
Kolmogorov complexity.  Something like a Sierpinski triangle is very
simple to explain, understand, draw, and picture.  You could describe
one like this: "An equilateral triangle pointing upward.  A
downward-pointing triangle of half the height has been removed from
the middle, leaving three upward-pointing triangles each half as tall
as the original.  From each of those three, another downward-pointing
triangle has been removed, leaving nine quarter-height triangles, and
so on ad infinitum."  That's an accurate and precise description.

I'm not sure fractals are a good example here at all.  But if they
are, at least the text ", which, by definition, is infinite in
complexity" should be removed.

In 4.8.10.4:

The NETWORK_LOADED state is described (normatively) as "The entire
media resource has been obtained and is available to the user agent
locally.  Network connectivity could be lost without affecting the
media playback."  This suggests to me that it would be incorrect for
this to be the state of the resource if, during playback of a lengthy
video, the user agent began deleting the already-played earlier part
of the video, so that the full data was no longer available.  However,
the resource fetch algorithm sets NETWORK_LOADED regardless of whether
earlier parts of the resource are still available, and nothing I can
see ever changes the network state from NETWORK_LOADED to any other
state.  This seems contradictory, or at least confusing.

In 4.8.10.5:

There are some Unicode characters (U+231B? an hourglass?) here that
are showing up as white boxes for me at the beginning of some of the
list elements.

"HTTP partial range requests" sounds odd to me, and "partial range" is
redundant.  Maybe just "HTTP range requests"?  The HTTP spec uses
"range retrieval requests".

In 4.8.10.7:

"The user agent cannot be in this state if playback has ended, as the
current playback position can never advanced in this case."

"advanced" -> "advance"?

In 4.8.10.10:

"If the attribute is absent, then the user agent should avoid making a
user interface available that could conflict with an author-provided
user interface. User agents may make the following features available,
however, even when the attribute is absent:

"User agents may provide controls to affect playback of the media
resource (e.g. play, pause, seeking, and volume controls), but such
features should not interfere with the page's normal rendering. For
example, such features could be exposed in the media element's context
menu."

This doesn't make a lot of sense to me.  I would have expected a list
of features after the first quoted paragraph, but instead there's
another paragraph that partially repeats the content of the first
paragraph.  It reads like it originally said something different, and
then something was chopped out and not patched up properly.

This isn't really a comment, since it's too late to change it, but I'm
curious: why is the default that the author provides controls, instead
of the UA?  It seems like it would be simpler for the UA to supply
controls unless the author opts out.  Would you expect many authors to
manually supply controls?

In 4.8.10.12:

Is "The user agent stops fetching the media data before it is
completely downloaded" really a good description for abort?  It can
trigger during the NETWORK_LOADED state, can't it?  Also, doesn't it
only fire when the load is aborted by the user or a script?

"play" and "playing" have confusingly similar names.

Received on Monday, 17 August 2009 17:27:01 UTC