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

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>151429</bug_id>
          
          <creation_ts>2015-11-18 19:48:34 -0800</creation_ts>
          <short_desc>AX: aria-owns attribute does not work as expected</short_desc>
          <delta_ts>2015-11-20 09:41:56 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>Safari 9</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.11</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>151498</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jonathan Dallas">jondallas</reporter>
          <assigned_to name="Jonathan Dallas">jondallas</assigned_to>
          <cc>jcraig</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1143151</commentid>
    <comment_count>0</comment_count>
    <who name="Jonathan Dallas">jondallas</who>
    <bug_when>2015-11-18 19:48:34 -0800</bug_when>
    <thetext>Hello, my expectation for aria-owns is that a developer can use it to group controls that are not otherwise grouped in DOM. My understanding is it’s a way to achieve and extend similar functionality as native radio controls using the name attribute. The developer can put radio buttons anywhere on the page but if the name property matches they are grouped together and announced as such in assistive technology.

Spec for of aria-owns (which is brief and a little vague): http://www.w3.org/TR/wai-aria-1.1/#aria-owns


Here is a test case:
    &lt;div role=&quot;group&quot; id=&quot;group&quot;&gt;
        &lt;h1&gt;Single state inputs with descriptions&lt;/h1&gt;
        &lt;div role=&quot;textbox&quot; aria-selected=&quot;false&quot; aria-owns=&quot;group&quot;&gt;Alpha&lt;/div&gt;
        &lt;div&gt;Description&lt;/div&gt;
        &lt;div role=&quot;textbox&quot; aria-selected=&quot;true&quot; aria-owns=&quot;group&quot;&gt;Beta&lt;/div&gt;
        &lt;div&gt;Description&lt;/div&gt;
        &lt;div role=&quot;textbox&quot; aria-selected=&quot;false&quot; aria-owns=&quot;group&quot;&gt;Gamma&lt;/div&gt;
        &lt;div&gt;Description&lt;/div&gt;
    &lt;/div&gt;

I would expect the elements with role=&quot;textbook&quot; to announce that they are part of a group of three textbooks and state whether or not this textbook is the selected one. Currently VoiceOver does not do this, likely because this information is not added to the accessibility tree.

Attaching code for the example above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143154</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-11-18 19:49:01 -0800</bug_when>
    <thetext>&lt;rdar://problem/23606298&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143155</commentid>
    <comment_count>2</comment_count>
      <attachid>265839</attachid>
    <who name="Jonathan Dallas">jondallas</who>
    <bug_when>2015-11-18 19:49:36 -0800</bug_when>
    <thetext>Created attachment 265839
This is the simple test case shown above.

Adding the code for the test case in my message above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143157</commentid>
    <comment_count>3</comment_count>
      <attachid>265840</attachid>
    <who name="Jonathan Dallas">jondallas</who>
    <bug_when>2015-11-18 19:53:39 -0800</bug_when>
    <thetext>Created attachment 265840
Single state input group

Attaching and a more complex example usecase for aria-owns.

Each item should be announced similarly to a radio group (e.g. number of items in the group, and whether or not the current item is selected).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143456</commentid>
    <comment_count>4</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2015-11-19 14:53:01 -0800</bug_when>
    <thetext>The aria-owns relationship is backwards in your example. I expect you meant to do this:

&lt;div role=&quot;radiogroup&quot; aria-owns=&quot;r1 r2 r3&quot;&gt;
   &lt;div role=&quot;radio&quot; id=&quot;r1&quot;&gt;Alpha&lt;/div&gt;
   &lt;div role=&quot;radio&quot; id=&quot;r1&quot;&gt;Beta&lt;/div&gt;
&lt;/div&gt;
&lt;!-- this one, too. --&gt;
&lt;div role=&quot;radio&quot; id=&quot;r3&quot;&gt;Gamma&lt;/div&gt;


I would recommend re-filing with the corrected test case, and duping this one out to the new bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143457</commentid>
    <comment_count>5</comment_count>
    <who name="James Craig">jcraig</who>
    <bug_when>2015-11-19 14:53:50 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt;    &lt;div role=&quot;radio&quot; id=&quot;r1&quot;&gt;Beta&lt;/div&gt;

Typo: r1 should be r2, here.
&lt;div role=&quot;radio&quot; id=&quot;r2&quot;&gt;Beta&lt;/div&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1143671</commentid>
    <comment_count>6</comment_count>
    <who name="Jonathan Dallas">jondallas</who>
    <bug_when>2015-11-20 09:41:56 -0800</bug_when>
    <thetext>Multiple issues with this bug. Refiled as https://bugs.webkit.org/show_bug.cgi?id=151498

Thanks!

*** This bug has been marked as a duplicate of bug 151498 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>265839</attachid>
            <date>2015-11-18 19:49:36 -0800</date>
            <delta_ts>2015-11-18 19:49:36 -0800</delta_ts>
            <desc>This is the simple test case shown above.</desc>
            <filename>aria-owns_test_simple.html</filename>
            <type>text/html</type>
            <size>559</size>
            <attacher name="Jonathan Dallas">jondallas</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiAg
PHRpdGxlPmFyaWEtb3ducyB0ZXN0PC90aXRsZT4KPC9oZWFkPgo8Ym9keT4KICAgIDxkaXYgcm9s
ZT0iZ3JvdXAiIGlkPSJncm91cCI+CiAgICAgICAgPGgxPlNpbmdsZSBzdGF0ZSBpbnB1dHMgd2l0
aCBkZXNjcmlwdGlvbnM8L2gxPgogICAgICAgIDxkaXYgcm9sZT0idGV4dGJveCIgYXJpYS1zZWxl
Y3RlZD0iZmFsc2UiIGFyaWEtb3ducz0iZ3JvdXAiPkFscGhhPC9kaXY+CiAgICAgICAgPGRpdj7i
gJREZXNjcmlwdGlvbjwvZGl2PgogICAgICAgIDxkaXYgcm9sZT0idGV4dGJveCIgYXJpYS1zZWxl
Y3RlZD0idHJ1ZSIgYXJpYS1vd25zPSJncm91cCI+QmV0YTwvZGl2PgogICAgICAgIDxkaXY+4oCU
RGVzY3JpcHRpb248L2Rpdj4KICAgICAgICA8ZGl2IHJvbGU9InRleHRib3giIGFyaWEtc2VsZWN0
ZWQ9ImZhbHNlIiBhcmlhLW93bnM9Imdyb3VwIj5HYW1tYTwvZGl2PgogICAgICAgIDxkaXY+4oCU
RGVzY3JpcHRpb248L2Rpdj4KICAgIDwvZGl2PgoKPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>265840</attachid>
            <date>2015-11-18 19:53:39 -0800</date>
            <delta_ts>2015-11-18 19:53:39 -0800</delta_ts>
            <desc>Single state input group</desc>
            <filename>aria-owns_single_value_input_group.html</filename>
            <type>text/html</type>
            <size>2332</size>
            <attacher name="Jonathan Dallas">jondallas</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+CiAg
PHRpdGxlPmFyaWEtb3ducyB0ZXN0PC90aXRsZT4KICA8c3R5bGU+CiAgICBib2R5IHsKICAgICAg
ICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbS1mb250OwogICAgICAgIGZvbnQtc2l6ZTogMnZ3
OwogICAgfQoKICAgIFtyb2xlPWdyb3VwXSA+IGRpdiB7CiAgICAgICAgbWFyZ2luLWJvdHRvbTog
MjBweDsKICAgIH0KCiAgICAudGV4dGJveCB7CiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2Nr
OwogICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7CiAgICAgICAgbWluLXdpZHRoOiAxNC4x
cmVtOwogICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweDsKICAgICAgICBvdXRsaW5lOiBu
b25lOwogICAgfQogICAgCiAgICBbYXJpYS1zZWxlY3RlZD1mYWxzZV0gLnRleHRib3g6aG92ZXIg
ewogICAgICAgIGN1cnNvcjogcG9pbnRlcjsKICAgIH0KCiAgICBbYXJpYS1zZWxlY3RlZD1mYWxz
ZV0gLnRleHRib3ggewogICAgICAgIG91dGxpbmU6IG5vbmU7CiAgICAgICAgYmFja2dyb3VuZDog
bGluZWFyLWdyYWRpZW50KCNlZWUsICNkZGQpOwogICAgICAgIHBhZGRpbmc6IDAuNWVtOwogICAg
ICAgIGJvcmRlcjogbm9uZTsKICAgICAgICBib3JkZXItcmFkaXVzOiAwLjJyZW07CiAgICAgICAg
Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICNiYmIsIDAgMCAxcHggMDsKICAgIH0KCiAgICBb
cm9sZT1ncm91cF0gfiAqIHsKICAgICAgICBjb2xvcjogZ3JleTsKICAgIH0KCiAgICAjdmVoaWNs
ZS10eXBlIHsKICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOwogICAgfQogIDwvc3R5
bGU+CjwvaGVhZD4KPGJvZHk+CiAgICA8aDE+U2luZ2xlIHZhbHVlIGlucHV0IGdyb3VwPC9oMT4K
ICAgIDxkaXYgcm9sZT0iZ3JvdXAiIGlkPSJncm91cCI+CiAgICAgICAgPGRpdiBhcmlhLW93bnM9
Imdyb3VwIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRl
eHRib3giPlNldCB0aGlzIGluc3RlYWQ8L2Rpdj4gPGxhYmVsPkFpcnBsYW5lPC9sYWJlbD4KICAg
ICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGFyaWEtb3ducz0iZ3JvdXAiIGFyaWEtc2VsZWN0ZWQ9
InRydWUiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0ZXh0Ym94IiBjb250ZW50ZWRpdGFibGU+
TXVzdGFuZzwvZGl2PiA8bGFiZWw+QXV0b21vYmlsZTwvbGFiZWw+CiAgICAgICAgPC9kaXY+CiAg
ICAgICAgPGRpdiBhcmlhLW93bnM9Imdyb3VwIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSI+CiAgICAg
ICAgICAgIDxkaXYgY2xhc3M9InRleHRib3giPlNldCB0aGlzIGluc3RlYWQ8L2Rpdj4gPGxhYmVs
PkJvYXQ8L2xhYmVsPgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+CgogICAgPGg0PlZhbHVlPC9o
ND4KICAgIDxzcGFuIGlkPSJtb2RlbCI+TXVzdGFuZzwvc3Bhbj4gPHNwYW4gaWQ9InZlaGljbGUt
dHlwZSI+QXV0b21vYmlsZTwvc3Bhbj4KCiAgICA8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpx
dWVyeS5jb20vanF1ZXJ5LTIuMS40LmpzIj48L3NjcmlwdD4KICAgIDxzY3JpcHQ+CiAgICAgICQo
Jy50ZXh0Ym94JykuY2xpY2soZnVuY3Rpb24oKXsKICAgICAgICAkKHRoaXMpLnBhcmVudHMoJyNn
cm91cCcpLmZpbmQoJ1thcmlhLXNlbGVjdGVkPSJ0cnVlIl0nKQogICAgICAgICAgICAuYXR0cign
YXJpYS1zZWxlY3RlZCcsIGZhbHNlKTsKICAgICAgICAkKHRoaXMpLnBhcmVudHMoJyNncm91cCcp
LmZpbmQoJy50ZXh0Ym94JykKICAgICAgICAgICAgLnByb3AoJ2NvbnRlbnRlZGl0YWJsZScsIGZh
bHNlKQogICAgICAgICAgICAudGV4dCgnU2V0IHRoaXMgaW5zdGVhZCcpOwogICAgICAgICQodGhp
cykucGFyZW50KCkuYXR0cignYXJpYS1zZWxlY3RlZCcsIHRydWUpOwogICAgICAgICQodGhpcyku
cHJvcCgnY29udGVudGVkaXRhYmxlJywgdHJ1ZSkudGV4dCgnJyk7CiAgICAgICAgJCgnI21vZGVs
LCAjdmVoaWNsZS10eXBlJykudGV4dCgnJyk7CiAgICAgICAgJCh0aGlzKS5mb2N1cygpOwogICAg
ICB9KTsKICAgICAgJCgnLnRleHRib3gnKS5rZXl1cChmdW5jdGlvbigpewogICAgICAgICBtb2Rl
bFZhbHVlID0gJCh0aGlzKS50ZXh0KCk7CiAgICAgICAgICQoJyNtb2RlbCcpLnRleHQobW9kZWxW
YWx1ZSk7CiAgICAgICAgIHZlaGljbGVUeXBlVmFsdWUgPSAkKHRoaXMpLnBhcmVudCgpLmZpbmQo
J2xhYmVsJykudGV4dCgpOwogICAgICAgICAkKCcjdmVoaWNsZS10eXBlJykudGV4dCh2ZWhpY2xl
VHlwZVZhbHVlKTsKICAgICAgfSk7CiAgICA8L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>