<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>15576</bug_id>
          
          <creation_ts>2012-01-15 17:39:30 +0000</creation_ts>
          <short_desc>Selectors3 changes the restrictions on the :lang pseudo-class</short_desc>
          <delta_ts>2012-12-04 00:53:23 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>CSS</product>
          <component>CSS Level 2</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>Windows 3.1</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anton P">antonsforums</reporter>
          <assigned_to name="Bert Bos">bert</assigned_to>
          
          
          <qa_contact>public-css-bugzilla</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>62747</commentid>
    <comment_count>0</comment_count>
    <who name="Anton P">antonsforums</who>
    <bug_when>2012-01-15 17:39:30 +0000</bug_when>
    <thetext>Reported by Arron Eicholz

5.11.4 (The language pseudo-class: :lang) says:
  # The pseudo-class &apos;:lang(C)&apos; matches if the element is in language C. Whether
  # there is a match is based solely on the identifier C being either equal to,
  # or a hyphen-separated substring of, the element&apos;s language value, in the
  # same way as if performed by the &apos;|=&apos; operator. The matching of C against the
  # element&apos;s language value is performed case-insensitively for characters
  # within the ASCII range.
  #
  # C must not be empty.

Selectors3, 6.6.3 (The language pseudo-class :lang) [http://www.w3.org/TR/selectors/#lang-pseudo] says:
  # Whether an element is represented by a :lang() selector is based solely on
  # the element&apos;s language value (normalized to BCP 47 syntax if necessary)
  # being equal to the identifier C, or beginning with the identifier C
  # immediately followed by &quot;-&quot; (U+002D). The matching of C against the
  # element&apos;s language value is performed case-insensitively. [...]
  #
  # C must be a valid CSS identifier [CSS21] and must not be empty. (Otherwise,
  # the selector is invalid.) 

In particular, selectors3 introduces normalization, removes the (implied) restriction that characters outside the ASCII range are matched case-sensitively, and introduces the restrcition that C must be a valid CSS identifier.

Should CSS21 be changed to match selectors3?

Conversation begins: http://lists.w3.org/Archives/Public/www-style/2011Aug/0630.html

Bug description: http://lists.w3.org/Archives/Public/www-style/2011Aug/0666.html</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>