{"action":"created","comment":{"url":"https://api.github.com/repos/WICG/aom/pulls/comments/170150107","pull_request_review_id":98794249,"id":170150107,"diff_hunk":"@@ -278,52 +159,66 @@ class CustomCheckbox extends HTMLElement {\n   attributeChangedCallback(name, oldValue, newValue) {\n     switch(name) {\n     case \"checked\":\n-      this.accessibleNode.checked = (newValue !== null);\n+      this.shadowRoot.ariaChecked = (newValue !== null);\n     }\n   }\n \n   connectedCallback() {\n-    // When the custom checkbox is inserted in the page,\n-    // ensure the checked state is in sync with the checked attribute.\n-    this.accessibleNode.checked = this.hasAttribute(\"checked\");\n+    // Set the default semantics for the custom element\n+    // when it is inserted in the page.\n+    this.shadowRoot.role = \"checkbox\";\n+    this.shadowRoot.checked = this.hasAttribute(\"checked\");\n   }\n }\n \n customElements.define(\"custom-checkbox\", CustomCheckbox);\n ```\n \n-From the perspective of the embedding page, a custom checkbox would now\n-have this clean HTML, with the accessibility fully encapsulated into\n-the implementation rather than exposed as a leaky abstraction:\n+From the perspective of the embedding page, \n+a custom checkbox would now have this clean HTML, \n+with the accessibility fully encapsulated into the implementation \n+rather than exposed as a leaky abstraction:\n \n ```html\n <custom-checkbox checked>Receive promotional offers</custom-checkbox>\n ```\n \n-Furthermore, writing Accessible Properties would allow specifying accessible relationships without requiring IDREFs,\n-as authors can now pass object references.\n-Currently attributes like aria-describedby and aria-activedescendant\n-take one or more IDREFs, like this:\n+The page author could override the default semantics using ARIA \n+exactly as they would with a built-in element:\n \n ```html\n-<div role=\"listbox\" aria-describedby=\"id1 id2\" aria-activedescendant=\"id3\">\n+<!-- ARIA role overrides Shadow DOM role -->\n+<custom-checkbox role=\"radio\">\n+```\n+\n+#### Use case 2: Setting relationship properties without needing to use IDREFs\n+\n+Straight reflection of ARIA properties \n+would reflect relationship attributes like `aria-labelledby` as strings:\n+\n+```js\n+el.ariaDescribedBy = \"id1\";\n ```\n \n-Accessible Properties would allow passing object references instead:\n+We propose augmenting this API with non-reflected properties \n \n ```js\n-el.accessibleNode.describedBy = [accessibleNode1, accessibleNode2];\n-el.accessibleNode.activeDescendant = accessibleNode3;\n+el.ariaDescribedByElements = [labelElement1, labelElement2];\n+el.ariaActiveDescendantElement = ownedElement1;\n ```\n \n-Moreover, writing Accessible Properties would enable authors using Shadow DOM\n+This would allow specifying semantic relationships between elements","path":"explainer.md","position":422,"original_position":422,"commit_id":"71100e2f359ec2466e32ba04c4672a5272a0f8b8","original_commit_id":"71100e2f359ec2466e32ba04c4672a5272a0f8b8","user":{"login":"robdodson","id":1066253,"avatar_url":"https://avatars0.githubusercontent.com/u/1066253?v=4","gravatar_id":"","url":"https://api.github.com/users/robdodson","html_url":"https://github.com/robdodson","followers_url":"https://api.github.com/users/robdodson/followers","following_url":"https://api.github.com/users/robdodson/following{/other_user}","gists_url":"https://api.github.com/users/robdodson/gists{/gist_id}","starred_url":"https://api.github.com/users/robdodson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/robdodson/subscriptions","organizations_url":"https://api.github.com/users/robdodson/orgs","repos_url":"https://api.github.com/users/robdodson/repos","events_url":"https://api.github.com/users/robdodson/events{/privacy}","received_events_url":"https://api.github.com/users/robdodson/received_events","type":"User","site_admin":false},"body":"I might bring this justification up so it's before the code example. Like...","created_at":"2018-02-23T02:12:20Z","updated_at":"2018-02-23T02:12:20Z","html_url":"https://github.com/WICG/aom/pull/104#discussion_r170150107","pull_request_url":"https://api.github.com/repos/WICG/aom/pulls/104","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/WICG/aom/pulls/comments/170150107"},"html":{"href":"https://github.com/WICG/aom/pull/104#discussion_r170150107"},"pull_request":{"href":"https://api.github.com/repos/WICG/aom/pulls/104"}}},"pull_request":{"url":"https://api.github.com/repos/WICG/aom/pulls/104","id":170911372,"html_url":"https://github.com/WICG/aom/pull/104","diff_url":"https://github.com/WICG/aom/pull/104.diff","patch_url":"https://github.com/WICG/aom/pull/104.patch","issue_url":"https://api.github.com/repos/WICG/aom/issues/104","number":104,"state":"open","locked":false,"title":"Update explainer to reflect recent discussions","user":{"login":"alice","id":95208,"avatar_url":"https://avatars1.githubusercontent.com/u/95208?v=4","gravatar_id":"","url":"https://api.github.com/users/alice","html_url":"https://github.com/alice","followers_url":"https://api.github.com/users/alice/followers","following_url":"https://api.github.com/users/alice/following{/other_user}","gists_url":"https://api.github.com/users/alice/gists{/gist_id}","starred_url":"https://api.github.com/users/alice/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alice/subscriptions","organizations_url":"https://api.github.com/users/alice/orgs","repos_url":"https://api.github.com/users/alice/repos","events_url":"https://api.github.com/users/alice/events{/privacy}","received_events_url":"https://api.github.com/users/alice/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-02-23T01:26:16Z","updated_at":"2018-02-23T02:12:20Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9ead8401110ae0fee09215a8410de8c5577a2ceb","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/WICG/aom/pulls/104/commits","review_comments_url":"https://api.github.com/repos/WICG/aom/pulls/104/comments","review_comment_url":"https://api.github.com/repos/WICG/aom/pulls/comments{/number}","comments_url":"https://api.github.com/repos/WICG/aom/issues/104/comments","statuses_url":"https://api.github.com/repos/WICG/aom/statuses/71100e2f359ec2466e32ba04c4672a5272a0f8b8","head":{"label":"alice:gh-pages","ref":"gh-pages","sha":"71100e2f359ec2466e32ba04c4672a5272a0f8b8","user":{"login":"alice","id":95208,"avatar_url":"https://avatars1.githubusercontent.com/u/95208?v=4","gravatar_id":"","url":"https://api.github.com/users/alice","html_url":"https://github.com/alice","followers_url":"https://api.github.com/users/alice/followers","following_url":"https://api.github.com/users/alice/following{/other_user}","gists_url":"https://api.github.com/users/alice/gists{/gist_id}","starred_url":"https://api.github.com/users/alice/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alice/subscriptions","organizations_url":"https://api.github.com/users/alice/orgs","repos_url":"https://api.github.com/users/alice/repos","events_url":"https://api.github.com/users/alice/events{/privacy}","received_events_url":"https://api.github.com/users/alice/received_events","type":"User","site_admin":false},"repo":{"id":65822712,"name":"aom","full_name":"alice/aom","owner":{"login":"alice","id":95208,"avatar_url":"https://avatars1.githubusercontent.com/u/95208?v=4","gravatar_id":"","url":"https://api.github.com/users/alice","html_url":"https://github.com/alice","followers_url":"https://api.github.com/users/alice/followers","following_url":"https://api.github.com/users/alice/following{/other_user}","gists_url":"https://api.github.com/users/alice/gists{/gist_id}","starred_url":"https://api.github.com/users/alice/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alice/subscriptions","organizations_url":"https://api.github.com/users/alice/orgs","repos_url":"https://api.github.com/users/alice/repos","events_url":"https://api.github.com/users/alice/events{/privacy}","received_events_url":"https://api.github.com/users/alice/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/alice/aom","description":"Temporary brainstorming space for a11y-api","fork":true,"url":"https://api.github.com/repos/alice/aom","forks_url":"https://api.github.com/repos/alice/aom/forks","keys_url":"https://api.github.com/repos/alice/aom/keys{/key_id}","collaborators_url":"https://api.github.com/repos/alice/aom/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/alice/aom/teams","hooks_url":"https://api.github.com/repos/alice/aom/hooks","issue_events_url":"https://api.github.com/repos/alice/aom/issues/events{/number}","events_url":"https://api.github.com/repos/alice/aom/events","assignees_url":"https://api.github.com/repos/alice/aom/assignees{/user}","branches_url":"https://api.github.com/repos/alice/aom/branches{/branch}","tags_url":"https://api.github.com/repos/alice/aom/tags","blobs_url":"https://api.github.com/repos/alice/aom/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/alice/aom/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/alice/aom/git/refs{/sha}","trees_url":"https://api.github.com/repos/alice/aom/git/trees{/sha}","statuses_url":"https://api.github.com/repos/alice/aom/statuses/{sha}","languages_url":"https://api.github.com/repos/alice/aom/languages","stargazers_url":"https://api.github.com/repos/alice/aom/stargazers","contributors_url":"https://api.github.com/repos/alice/aom/contributors","subscribers_url":"https://api.github.com/repos/alice/aom/subscribers","subscription_url":"https://api.github.com/repos/alice/aom/subscription","commits_url":"https://api.github.com/repos/alice/aom/commits{/sha}","git_commits_url":"https://api.github.com/repos/alice/aom/git/commits{/sha}","comments_url":"https://api.github.com/repos/alice/aom/comments{/number}","issue_comment_url":"https://api.github.com/repos/alice/aom/issues/comments{/number}","contents_url":"https://api.github.com/repos/alice/aom/contents/{+path}","compare_url":"https://api.github.com/repos/alice/aom/compare/{base}...{head}","merges_url":"https://api.github.com/repos/alice/aom/merges","archive_url":"https://api.github.com/repos/alice/aom/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/alice/aom/downloads","issues_url":"https://api.github.com/repos/alice/aom/issues{/number}","pulls_url":"https://api.github.com/repos/alice/aom/pulls{/number}","milestones_url":"https://api.github.com/repos/alice/aom/milestones{/number}","notifications_url":"https://api.github.com/repos/alice/aom/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/alice/aom/labels{/name}","releases_url":"https://api.github.com/repos/alice/aom/releases{/id}","deployments_url":"https://api.github.com/repos/alice/aom/deployments","created_at":"2016-08-16T13:29:21Z","updated_at":"2017-03-31T03:56:27Z","pushed_at":"2018-02-23T01:24:27Z","git_url":"git://github.com/alice/aom.git","ssh_url":"git@github.com:alice/aom.git","clone_url":"https://github.com/alice/aom.git","svn_url":"https://github.com/alice/aom","homepage":null,"size":8458,"stargazers_count":1,"watchers_count":1,"language":"HTML","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":1,"open_issues":0,"watchers":1,"default_branch":"gh-pages"}},"base":{"label":"WICG:gh-pages","ref":"gh-pages","sha":"9d0d09f9fb2ac12ac044b94812542755c5786d3d","user":{"login":"WICG","id":13145324,"avatar_url":"https://avatars2.githubusercontent.com/u/13145324?v=4","gravatar_id":"","url":"https://api.github.com/users/WICG","html_url":"https://github.com/WICG","followers_url":"https://api.github.com/users/WICG/followers","following_url":"https://api.github.com/users/WICG/following{/other_user}","gists_url":"https://api.github.com/users/WICG/gists{/gist_id}","starred_url":"https://api.github.com/users/WICG/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WICG/subscriptions","organizations_url":"https://api.github.com/users/WICG/orgs","repos_url":"https://api.github.com/users/WICG/repos","events_url":"https://api.github.com/users/WICG/events{/privacy}","received_events_url":"https://api.github.com/users/WICG/received_events","type":"Organization","site_admin":false},"repo":{"id":50690291,"name":"aom","full_name":"WICG/aom","owner":{"login":"WICG","id":13145324,"avatar_url":"https://avatars2.githubusercontent.com/u/13145324?v=4","gravatar_id":"","url":"https://api.github.com/users/WICG","html_url":"https://github.com/WICG","followers_url":"https://api.github.com/users/WICG/followers","following_url":"https://api.github.com/users/WICG/following{/other_user}","gists_url":"https://api.github.com/users/WICG/gists{/gist_id}","starred_url":"https://api.github.com/users/WICG/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/WICG/subscriptions","organizations_url":"https://api.github.com/users/WICG/orgs","repos_url":"https://api.github.com/users/WICG/repos","events_url":"https://api.github.com/users/WICG/events{/privacy}","received_events_url":"https://api.github.com/users/WICG/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/WICG/aom","description":"Accessibility Object Model","fork":false,"url":"https://api.github.com/repos/WICG/aom","forks_url":"https://api.github.com/repos/WICG/aom/forks","keys_url":"https://api.github.com/repos/WICG/aom/keys{/key_id}","collaborators_url":"https://api.github.com/repos/WICG/aom/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/WICG/aom/teams","hooks_url":"https://api.github.com/repos/WICG/aom/hooks","issue_events_url":"https://api.github.com/repos/WICG/aom/issues/events{/number}","events_url":"https://api.github.com/repos/WICG/aom/events","assignees_url":"https://api.github.com/repos/WICG/aom/assignees{/user}","branches_url":"https://api.github.com/repos/WICG/aom/branches{/branch}","tags_url":"https://api.github.com/repos/WICG/aom/tags","blobs_url":"https://api.github.com/repos/WICG/aom/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/WICG/aom/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/WICG/aom/git/refs{/sha}","trees_url":"https://api.github.com/repos/WICG/aom/git/trees{/sha}","statuses_url":"https://api.github.com/repos/WICG/aom/statuses/{sha}","languages_url":"https://api.github.com/repos/WICG/aom/languages","stargazers_url":"https://api.github.com/repos/WICG/aom/stargazers","contributors_url":"https://api.github.com/repos/WICG/aom/contributors","subscribers_url":"https://api.github.com/repos/WICG/aom/subscribers","subscription_url":"https://api.github.com/repos/WICG/aom/subscription","commits_url":"https://api.github.com/repos/WICG/aom/commits{/sha}","git_commits_url":"https://api.github.com/repos/WICG/aom/git/commits{/sha}","comments_url":"https://api.github.com/repos/WICG/aom/comments{/number}","issue_comment_url":"https://api.github.com/repos/WICG/aom/issues/comments{/number}","contents_url":"https://api.github.com/repos/WICG/aom/contents/{+path}","compare_url":"https://api.github.com/repos/WICG/aom/compare/{base}...{head}","merges_url":"https://api.github.com/repos/WICG/aom/merges","archive_url":"https://api.github.com/repos/WICG/aom/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/WICG/aom/downloads","issues_url":"https://api.github.com/repos/WICG/aom/issues{/number}","pulls_url":"https://api.github.com/repos/WICG/aom/pulls{/number}","milestones_url":"https://api.github.com/repos/WICG/aom/milestones{/number}","notifications_url":"https://api.github.com/repos/WICG/aom/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/WICG/aom/labels{/name}","releases_url":"https://api.github.com/repos/WICG/aom/releases{/id}","deployments_url":"https://api.github.com/repos/WICG/aom/deployments","created_at":"2016-01-29T20:47:37Z","updated_at":"2018-02-22T14:03:14Z","pushed_at":"2018-02-23T01:26:17Z","git_url":"git://github.com/WICG/aom.git","ssh_url":"git@github.com:WICG/aom.git","clone_url":"https://github.com/WICG/aom.git","svn_url":"https://github.com/WICG/aom","homepage":"http://wicg.github.io/aom/","size":8489,"stargazers_count":161,"watchers_count":161,"language":"HTML","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":20,"mirror_url":null,"archived":false,"open_issues_count":76,"license":null,"forks":20,"open_issues":76,"watchers":161,"default_branch":"gh-pages"}},"_links":{"self":{"href":"https://api.github.com/repos/WICG/aom/pulls/104"},"html":{"href":"https://github.com/WICG/aom/pull/104"},"issue":{"href":"https://api.github.com/repos/WICG/aom/issues/104"},"comments":{"href":"https://api.github.com/repos/WICG/aom/issues/104/comments"},"review_comments":{"href":"https://api.github.com/repos/WICG/aom/pulls/104/comments"},"review_comment":{"href":"https://api.github.com/repos/WICG/aom/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/WICG/aom/pulls/104/commits"},"statuses":{"href":"https://api.github.com/repos/WICG/aom/statuses/71100e2f359ec2466e32ba04c4672a5272a0f8b8"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"robdodson"}}