W3C home > Mailing lists > Public > www-style@w3.org > May 2013

Re: [selectors-api] References to Selectors 4

From: fantasai <fantasai.lists@inkedblade.net>
Date: Thu, 02 May 2013 13:33:40 -0700
Message-ID: <5182CDA4.3050909@inkedblade.net>
To: "public-webapps@w3.org" <public-webapps@w3.org>, Lachlan Hunt <lachlan.hunt@lachy.id.au>
CC: "www-style@w3.org" <www-style@w3.org>
On 04/03/2013 06:39 PM, fantasai wrote:
> http://www.w3.org/TR/selectors-api2/#the-scope-pseudo-class
> This section has already been copied to Selectors 4 (and has been
> for awhile, actually), so should be removed here and replaced with
> references to Selectors 4.
>    http://www.w3.org/TR/selectors4/#the-scope-pseudo
> If there's anything that needs to be fixed in Selectors 4 for this
> to be viable, then let us know and we'll fix it. :)
> http://www.w3.org/TR/selectors-api2/#grammar
> Tab just updated the grammar productions in Selectors 4 and defined
> some terms, so this section shouldn't need to define anything, just
> reference Selectors 4.
>    http://dev.w3.org/csswg/selectors4/#grammar
> http://www.w3.org/TR/selectors-api2/#processing-selectors
> We also added the algorithm for absolutizing a relative selector to
> the Selectors 4 spec, so you can reference "scope-relative selectors",
> as defined here:
>    http://dev.w3.org/csswg/selectors4/#scoping
> Please let us know if there are any errors.
> We'll try to publish a new WD soon with the updated definitions.

So, the new WD has been published:

However, in response to some Shadow DOM stuff [1] we've had to split
out the relative selectors section some more.

While doing that, we noticed a problem with the absolutizing algorithm
in Selectors API2: if you explicitly pass in an empty reference element
set, document.find() searches the whole document. It should instead
return nothing.

   document.find('img', [list-of-links]) /* find all images inside links */

   Suppose the dynamically-generated [list-of-links] happens to be empty.
   It returns all the images in the document, a very unexpected result.

We suggest that Selectors API 2 be updated to say that if a reference
element set is not given, the selector is assumed to be absolute (and
is parsed and interpreted accordingly) instead of relative.

Relevant terms in Selectors 4:
   relative selector, defined in #relative
   reference element set, used in #relative and #the-scope-pseudo
(We removed "contextual" because it seemed excessively verbose.)

~fantasai and TJ
Received on Thursday, 2 May 2013 20:34:07 UTC

This archive was generated by hypermail 2.4.0 : Friday, 25 March 2022 10:08:29 UTC