Jonas Sicking wrote:
Bjoern Hoehrmann wrote:
* Anne van Kesteren wrote:
The latest version of the draft (1.14) assumes (in an example) that you take prefixes from left to right...

  x|y:empty > a|b

... In short, defining this would expose implementations details for no good reason.

I would say that the same holds true for "must not call the resolver more than once" though. Since the proposed solution doesn't give deterministic behavior for any given NSResolver anyway, why not simply say that behavior in this case too is undefined.

I do not think it's wise to explicitly introduce undefined behaviour where it is not necessary. Although this requirement doesn't make the NSResolver behaviour any more predictable for the UA, it makes the UA's behaviour marginally more predictable for the author.

I.e. the behavior of the following NSResolver

var N = 0;
function resolver(prefix) {
  return ['http://myns1.org', 'http://myns2.org][N++];
}

is undefined for "x|y:empty > a|b", so why couldn't it be for
"x|y:empty > x|b".

Making that undefined creates a situation where, for example, the resolver could be called twice with the same prefix and gets different return values. That creates more problems than it solves.

--
Lachlan Hunt
http://lachy.id.au/

Reply via email to