13:59:45 RRSAgent has joined #pf 13:59:45 logging to http://www.w3.org/2007/01/23-pf-irc 14:00:29 RRSAgent, make log member 14:00:35 Zakim has joined #pf 14:00:40 Zakim, this is WAI_P 14:00:40 Al, I see WAI_PFWG(f2f-at-MgM)9:00AM in the schedule but not yet started. Perhaps you mean "this will be WAI_P". 14:00:54 Zakim, this will be WAI_P 14:00:54 ok, Al; I see WAI_PFWG(f2f-at-MgM)9:00AM scheduled to start now 14:01:06 Zakim, code? 14:01:06 the conference code is 92473 (tel:+1.617.761.6200 tel:+33.4.89.06.34.99 tel:+44.117.370.6152), Al 14:02:42 WAI_PFWG(f2f-at-MgM)9:00AM has now started 14:02:49 +MIT531 14:11:13 +??P8 14:12:12 n has joined #pf 14:12:29 Zakim, ??P8 is leesa 14:12:41 +leesa; got it 14:13:45 agenda+ scribing rotation for today 14:13:46 n_ has joined #pf 14:14:05 becka11y has joined #pf 14:14:15 MichaelC has joined #pf 14:15:10 Linda has joined #pf 14:18:11 becka11y has left #pf 14:18:48 Rich has joined #pf 14:20:11 janina has joined #pf 14:20:25 scribing rotation for today: janina, Rich, Michael, Becky 14:20:31 scribe: Janina 14:20:53 meeting: PF F2F at Jan 2007 MGM, day 1 14:20:55 chair: Al 14:23:16 -leesa 14:23:34 janina 2 mins: FSG is now Linux Foundation after merger with OSDL 14:24:27 +??P5 14:24:29 rich: talked with linux foundation ceo, will continue to support other initiatives like iaccessible2, other platforms 14:24:58 michael: working on "future of web a11y" presentation for paris conference next week 14:25:07 becka11y has joined #pf 14:25:36 michael: including need for tools to transparently support aria 14:25:57 michael: also testing caucus this wednesday 14:26:32 becky: very focussed on dojo, trying for 1.0 release in the summer, and wants it to be accessble 14:28:19 aaron: working to find funding for another developer and to extend other firefox developer's funding 14:29:29 the line is terible 14:29:41 aaron: aaron: has new test cases for live regions 14:30:05 aaron: will be demo'd at csun 14:30:13 linda: studying aria for this meeting 14:30:34 linda: doesn't see any major issues to support aria 14:30:51 linda: thinks will be supported 14:31:09 Zakim, who is here? 14:31:11 On the phone I see MIT531, ??P5 14:31:14 On IRC I see becka11y, janina, Rich, Linda, MichaelC, n, Zakim, RRSAgent, Al, DaveP 14:33:41 al: asat in with voice browser and with uawg. 14:34:00 al: voice browser so very different, 3 levels of refinement 14:34:55 al: have extensive diagrams of dom3 that emmulate vxml2 -- impressive uml diags 14:36:09 al: renewed my interest in state chart xml as mechanism for talking about building things 14:38:08 rich: intro 14:38:17 rich: how to deal with multi column lists and tree views 14:38:24 rich: grid with two nav modes 14:38:30 aaronlev has joined #pf 14:38:39 rich: up/down and the other that plus expand/collapse 14:38:54 rich: so stay with grid role and define nav model 14:39:18 rich: allows browser to map 14:39:30 rich: we think dave pawson is ok with this?? 14:39:38 dave, are you there? 14:40:05 Jon Gunderson's grid list 14:40:07 http://cita.uiuc.edu/software/mozilla/test/dhtml/grid/grid-1.html 14:41:09 rich: proposing default up/down with expand/collapse 14:41:19 al: up/down select a row--you get a highlight 14:41:28 rich: different from use cases i've seen on list 14:41:38 becky: this is like web mail 14:42:04 becky: so as you move row to row, the info you've asked for is spoken in that row, but you can still go cell to cell (left/right) 14:43:28 rich: we can't do the cells in desktop apps, just the rows 14:44:35 rich: we should put out to nav by cells, and would do trees--press enter to expand 14:44:46 rich: we have level support in aria 14:45:01 al: we have only two levels in html tables 14:45:03 q+ to say a tree typically uses arrow keys to open/close; will need to consider the expected UI (not that that necessarily affects ARIA properties) 14:45:33 al: persistent row is the headers--and that's a use case 14:45:40 rich: so, a more complex example 14:46:00 More complex examples: 14:46:02 http://turboajax.com/demos/grid3/ 14:46:54 rich: so we still have cells, but when expanded we get a sub table 14:47:51 rich: so, should we look at how daisy would handle this? 14:48:15 rich: do we give direction on how to address navigation? 14:48:36 al: I'd like ti go by queue ... 14:48:52 q- 14:49:38 rich: so, first i need to know that something has expanded, and i want to know what it is before I nave into it 14:49:48 q+ 14:49:51 rich: do we indicate to users through properties 14:50:52 al: the critical unit includes header and details of one topic 14:51:13 al: so, logically it's like tabs on the left 14:51:45 becky: tab panel? 14:51:47 al: yes 14:52:16 al: highly orthodox re the daisy model 14:52:36 al: daisy says you can nav to peers or drill down into the internal structure 14:54:14 rich: but we don't do table nav like this today? 14:54:20 al: yes, but you can do tree nav 14:54:42 al: an attribute to id arc ties description to the title 14:54:48 rich: is that too expensive 14:54:56 becky: not bad. it's all there 14:55:14 becky: we're not adding text, just ids 14:55:39 becky: so what about the second example? 14:56:01 lisa: so we had the idea that tables could be linearized 14:56:34 lisa: so if you imaged not table 14:56:47 lisa: so in complex tables you'd just repeat lower and lower titles 14:58:30 lisa: so you can scan through the sections, then choose to hear details with some action like spacebar 14:58:48 lisa: i think it's the right nav 14:59:40 al: so we could have presented these examples as topic trees, show them unrolled 14:59:58 al: these appear to have canonical toc tree, even though presented as grids 15:00:52 rich: i'm concerned this doesn't match what's in guis today 15:01:05 +Dave_Pawson 15:01:24 Dave P back on line 15:01:34 becky: well it does, because click a node, it adds more rows in a lotus prototype in our dojo work 15:02:37 dave: this is a conversation i've had with rich on line 15:02:52 dave: i'M concerned about mixed vocabulary 15:03:35 dave: i see you're trying to use expansion to analogy with how windows expands trees 15:03:45 dave: difference with daisy 15:04:00 dave: so can we careful circumscribe our def of "tree" 15:04:50 rich:, so don't say tree, just explain the properties we have when the widget is expanded 15:06:15 lisa: i agree, trees, grids, tables, are just visual representations of what may well be the same thing, same data 15:06:35 My contention is that tree based data is not the same as table based data. 15:06:38 lisa: reason to keep them separate is so people understand they're supported 15:06:46 I don't think they should be mixed in terminology. 15:06:56 q+ to say that in "Al-speak" we now have three proposals that are "mathematically equivalent". Just need to acknowledge their equivalence, choose our own terms, and know we'll be mapping them to other things 15:07:16 +1 MichaelC 15:07:43 lisa: i do think you could make any one of these using headers 15:08:08 dave: agree except for word "tree" 15:08:29 dave: tree is only for where there is expanded or collapsed content 15:08:59 rich: so if we deal with properties ... 15:09:10 al: it's the age old issue of nestedd containers 15:09:21 al: and each nest should have a heading 15:09:46 http://turboajax.com/demos/grid3/ 15:11:42 rich: where have the additional rows gotten their headers? 15:11:50 michael: is it contained by something? 15:12:04 dave: no, question is do we have actual tree data? 15:12:25 michael: i'm guessing implementation is probably wrong, but we care about the use case 15:12:36 al: yes, in life it's probably sql data 15:13:00 dave is there benefit in wrapping the data? 15:13:10 al: yes, low vision, motor for fewer key strokes 15:13:30 dave: so, it's genuine tabular data, even though presented almost in tree 15:14:08 al: this is where we need a concrete prposal 15:14:20 al: two patterns both match the collection of data, and we allow the user to choose 15:14:45 dave: does the word "wrapped" help? that how it appears to me 15:14:48 al: yes 15:14:53 becky: no 15:15:04 al: product id could have been a product to the right? 15:15:09 becky: and you would repeat 15:15:18 al: no, it's one order 15:15:53 al: manifest ... manifest is a peer of product id 15:16:15 dave: is the source data is purely tabular then you can't use the term subtable without overloading the term 15:16:45 al: yes, but if you say the first is "manifest," manifest would contain additional items which are tabular collections of data 15:16:55 al: i meant the collection of rows 15:18:26 dave: ok, i came out of a meeting and i think my point is made 15:18:34 -Dave_Pawson 15:18:50 rich: yes, you want to address properties that don't associate with list or 15:18:52 ack m 15:18:52 MichaelC, you wanted to say that in "Al-speak" we now have three proposals that are "mathematically equivalent". Just need to acknowledge their equivalence, choose our own terms, 15:18:56 ... and know we'll be mapping them to other things 15:19:06 rich; so onceyou expand, how does one step in 15:19:30 rich: for each given cell, i like explicitly setting the described by -- and it's faster for the at 15:19:35 al: may be how it's done 15:19:44 rich: then you don't care whether it's a table or not 15:19:55 al: could be divs and spans and css layout 15:20:14 al: if we get the specs in sploace, it can be appropriately navigated 15:20:29 becky: from the ml point of view, you gain some navigation if you present as tables 15:21:15 al: so you should use id, and th, and only our new described by when the older ml doesn't serve 15:21:46 michael: we should check whether putting aria onto div/span gives us a full mapping 15:21:59 al: same question, can we get implementers to build that way 15:22:03 ichael: is that our goal 15:22:14 becky: and at performance is another question we need to answer 15:22:54 rich: we could use the same arrow nav 15:23:00 janina: yes, just in a different voice 15:23:04 \me taking a muinit brake 15:24:02 al: so what's the diff between a grid and a table? in a grid you can go right, then down, then left and then up and come back to where you started, can't do that in a table 15:25:55 michael: we don't need to worry about the ui so much 15:26:06 al: yes, but we need to make sure the ml supports all models of interaction 15:26:56 linda: from the ua pov, there's no design problem 15:27:14 rich: we just need to make sure we have the appropriate properties so the user doesn't get lost 15:30:09 rich: so do we agree on expandable property on row cell? 15:30:15 agreement 15:30:51 rich: i think we need some notion of a level 15:30:56 al: should it be computed 15:31:03 rich: it's a lot of work 15:31:08 al: but the authors will get it wrong 15:31:22 lisa: we have level 15:31:30 al: but not an integer an tuhor writes 15:31:40 aaron: yes, we can write it or calculate it 15:31:54 aaron: only the server knows, not the ua 15:32:56 aaron: my concern is that msaa and at-spi deal with trees very differently 15:33:46 aaron: we don't want to break people's expectations today 15:34:13 aaron: so we could have children of a tree item to give the same nav experience 15:35:08 aaron: currently atk doesn't expose the container for row objects 15:48:08 scribe: Rich 15:49:04 test 15:49:15 Tree grids 15:49:17 ATK: 15:49:19 ROLE_TREE_TABLE (supports Table interface) 15:49:21 - keycell cell cell cell cell cell 15:49:22 - keycell cell cell cell cell cell 15:49:24 - keycell cell cell cell cell cell 15:49:26 - keycell cell cell cell cell cell 15:49:27 - keycell cell cell cell cell cell 15:49:29 The key cell holds states, relations and fires events 15:49:30 Uses RELATION_NODE_CHILD_OF to imply depth, by pointing to another keycell 15:49:32 MSAA 15:49:33 ROLE_TABLE 15:49:35 - treeitem 15:49:37 - treeitem 15:49:38 - treeitem 15:49:40 - treeitem 15:49:41 - treeitem 15:49:43 Cells are not indivudually exposed. The name of each tree item is a contatenated verison of everything. 15:49:44 The description field is overriden to provide level and position info (this is a hack) 15:49:46 In IA2 we have the positionInGroup() method to return that info and avoid the description hack. 15:49:48 Proposal: 15:49:50 Combine the two, so mostly backward compatible 15:49:51 ROLE_TREE_TABLE -- Supports Table interface 15:49:52 - treeitem, can have table cell children 15:49:54 - treeitem, can have table child 15:49:56 - treeitem 15:49:58 - treeitem 15:50:00 - treeitem 15:50:02 Each table cell can implement the Text interface or have children that describe it's contents, 15:50:04 such as checkbox, image, progressmeter, button 15:50:37 aaron: ATK every cell is the tile of a table 15:51:00 aaron: there is no row to get focus 15:51:17 rich: you have activedescendant 15:51:35 aaron: yes, but the activedescendent is the first cell of reach row 15:52:05 aaron: There is no container object for a row 15:52:31 aaron: the way that you show depth is that the key row of a cell supports an ischildof 15:52:58 rich: this is a mess 15:53:06 aaron: it is terrible 15:53:27 s/tile/child 15:53:28 aaron: in Mozilla we implement both MSAA/IA2 and ATK 15:54:04 aaron: encapsulation by container is more efficient 15:54:14 s/aaron/Al/ 15:54:29 Al: It only goes as far as the key cells. 15:54:34 aaron: I did not follow 15:54:43 aaron: this is limiting because it is flat 15:54:59 Al: other than the keycells may have a grandchild relationship 15:55:13 aaron: they have no natural children - they are adopted 15:55:33 Al: You could mark up rich's examples with the summary and details at some depth 15:56:06 Al: in the topic with the childofs. You don't have a vehicle to define what range of cells have the focus. 15:56:20 aaron: msaa is also flat. There is a role of tree. 15:57:27 Aaron: you have to override the description field 15:57:51 Aaron: In IA2 you have the notion of positioningroup 16:01:19 Aaron: What IAccessible2 has is a container for each row in the tree and events/properties go on the row 16:01:36 Aaron: What is missing is individual objects for the cells 16:01:57 s/IAccesible2/MSAA/ 16:02:07 Aaron: ATK is the exact inverse 16:02:19 Rich: the way ATK implements it is the inverse 16:02:28 Rich: there is no container object for the rows 16:02:41 Aaron: we are lucky that they are the inverse 16:03:18 Rich: don't think IE is just going to use MSAA 16:03:30 Linda: true. UIA would be the route we are looking at 16:03:45 Aaron: I think we should harmonize the apis with tree grids 16:04:01 Aaron: the grand children are the cells 16:05:14 Aaron: There is a way to harmonize this with row children and cell grandchildren and the table interface on the top object 16:05:31 Al: Does the table interface provide for next row navigation? 16:06:10 Aaron: you need both the row and the cell objects 16:07:00 Aaron: I am proposing that we have all those objects 16:07:07 Al: Let me try to summarize. 16:07:38 Al: From your looking at the API bindings the logical way to keep the API binding software from going nuts that we follow the model that we were following 16:07:46 dpoehlman has joined #pf 16:07:56 Al: If we do each API differently we will have a problem 16:08:29 Aaron: I would like to define the proper vehicle which is backward compatible 16:09:09 See http://www.w3.org/2007/01/23-pf-irc#T16-08-29 16:09:42 Al: should we do an example? 16:11:02 Aaron: we need to ensure we supply row and cell information within the markup 16:11:43 Al: do we need a property of atomic for table rows to supply the entire information to the users 16:12:09 Al: the keystrokes go to the focus cell but css properties go on the entire TR to show and hide 16:12:41 Aaron: that is a problem. You would have focus events going to cells but in this API focus should go to the cell 16:12:55 s/the cell/the row/ 16:13:15 Al: teach me. In historical HTML containers never get focus 16:13:29 Al: in the HTML spec it does not have focus for IFrames 16:14:19 Al: I am just saying that part of this confusion is Jon gave the behavior of different browsers. 16:15:09 Al: You are telling me that in the UI that IFrames do get focus 16:15:27 Aaron: yes, because you would need to scroll it 16:15:40 Rich: sure. It is like a new web page 16:15:58 Aaron: If visually on the screen there should be a container object that gets focus 16:16:37 Becky: I can handle when a cell gets focus I really want the row to get focus visually 16:17:20 Becky: Except when a particular cell gets focus then the entire row gets focus but if I go to a differenct cell then if it is not consistent I have issues 16:17:36 Linda: Everything has a layout which is focusable 16:18:08 Linda: If I have table it is focusable via script 16:18:56 Al: Different browsers handled onblur differently 16:19:06 Linda: onblur is a different subject 16:19:36 Rich: Trying to summarize 16:20:21 1. In the markup we need to delineate cells and rows 16:21:32 2. If there are column and row headers and markup is not explicit (uses HTML tables) then each cell should provid a labelledby property 16:25:34 3. Expandable/collapsible rows should support the expanded property 16:26:32 4. Selected should be supported on cells or rows 16:29:10 s/should be supported/may be provided/ 16:29:35 s/rows should support/rows may provide/ 16:30:24 5. Checked may be provided on cells or rows 16:54:43 6. For a dynamic expandable grid (not all has been loaded at once) the author should supply posinset, level, setsize on each table row 16:57:13 7. For a preloaded expandable grid (all rows loaded) the author should supply (posinset, setsize, level) or owns for each row. 16:57:52 Note: 6 and 7 refer to mult-column grids 17:11:46 8. note: 6 and 7 also refer to single column grids 17:12:30 dpoehlman has left #pf 17:13:11 -??P5 17:13:13 Lunch break 17:23:41 http://turboajax.com/demos/grid3/ 17:41:29 +??P0 18:07:37 scribe: Michael_Cooper 18:07:41 scribeNick: MichaelC 18:09:20 rs: put something in that navigation by row and by cell? 18:10:54 ag: CG explored having defined "grid" navigation where the four arrow keys have specific behaviors 18:11:14 ... compare to DAISY where using the arrow keys in a cycle doesn't necessarily get you in the same place 18:11:38 ... need to support 2-d navigation off layout, and off tree 18:11:46 ... user needs to know which is being used 18:12:42 ... believe user should always be able to force into a particular mode 18:13:00 ... but script might not support it; AT needs to 18:13:18 rs: need to be able to go up and down topic tree 18:13:33 ag: in simple table, that's table, row, cell 18:13:48 ... as the three available levels 18:14:41 ... master-detail table at http://turboajax.com/demos/grid3/ is not a simple table 18:15:05 ... have row and cell navigation, and use for expand-collapse 18:15:21 ... don't use left/right arrows for expand/collapse because that's used for cell navigation 18:16:51 js: should be able to move to a column, then move up and down rows with focus staying in that column 18:20:53 al: in such a use case, wlil read the cell even though focus moving to row (reads the delta of the selection) 18:22:15 rs: question of focusing whole row, or just the cell 18:22:23 al: depends on editable, interactive, etc. 18:22:35 rs: how does user know what situation is when they land on it 18:22:41 js: AT needs to indicate 18:23:15 al: usually indicates 18:23:37 ... but navigation may depend on whether you're in an expandable/collapsable row or not 18:24:00 rs: prefer right/left arrow just for cell navigation 18:25:39 dp: if you move to either end of row, you're put in cell navigation; if you're in a row sticks in row 18:26:02 ag: prefer up/down arrow be row; right/left be cell 18:27:06 bg: how do you know how to navigate? 18:27:16 js: AT have specific ways to support 18:27:33 al: no standard way, you have to know the possibilities 18:27:37 ... we don't know the best way yet 18:28:04 ... we define the background markup, but others figure out the navigation 18:28:51 ... most of this is techniques 18:29:03 ... enter to enter cell mode, escape to exit 18:29:08 ag: prefer overflow the row mode 18:29:35 ... escape key should be left to OS 18:30:34 rs: specify cell navigation as default, but can override? 18:31:03 s/but can/but author can 18:32:06 ... concern that we know we have all the properties we need 18:32:15 al: we've got everything 18:33:34 rs: what do I do to switch from row to cell navigation 18:33:43 mc: leave that to AT/UA 18:33:50 ag: we need a consistent feel 18:34:25 ... we need to provide a document, but not required, keyboard navigation 18:34:35 s/document,/documented,/ 18:34:52 al: enter good way to enter children, and escape good way to return to parent 18:35:55 18:36:41 al: issue of whether in row or cell navigation handled by UA because either container or child has focus and AT reports which 18:36:48 cyns has joined #pf 18:36:58 18:37:50 mkaneko has joined #pf 18:40:23 continuing previous list 18:40:29 9. issue of whether in row or cell navigation handled by UA because either container or child has focus and AT reports which 18:40:36 Zakim, who is here? 18:40:36 On the phone I see MIT531, ??P0 18:40:37 On IRC I see mkaneko, cyns, aaronlev, becka11y, janina, Rich, Linda, MichaelC, n, Zakim, RRSAgent, Al 18:41:06 10. use of enter and escape is to go down and up level, respectively 18:42:36 s/enter and escape is/predefined keys 18:43:45 11. need to establish a common key convention to go down a level, and up a level. Discussion of enter and escape for those functions, but concerns about overloading 18:45:09 topic: Multilevel menus 18:45:19 +??P7 18:47:08 -??P0 18:48:03 ag: can have arbitrarily nested menus 18:48:16 ... want to ensure we have the needed ways to spec 18:49:42 bg: when get to a menu item that has submenu options 18:49:54 ... do you end up in the child menu automatically? 18:49:59 ... or explicitly open it? 18:50:18 dp: would like to first explicitly open the menu 18:50:25 ... or have option to skip 18:50:35 ... if open, can go into to start exploring the options 18:51:41 bg: want to avoid extra keystrokes 18:51:47 al: have "expanded" 18:51:58 ... but not on combobox 18:54:32 mc: expect to be able to open submenus on demand 18:54:46 bg: how do you know you can? 18:55:05 al: visual arrow, which represents the "haspopup" property 18:55:14 ag: making it very treelike 18:57:03 bg: but we're agreeing it's not exactly a tree 18:57:23 ag: use "menu" with "haspopup" 18:59:11 bg: unsure how to open submenu 18:59:24 action: Becky and Aaron to revisit multilevel menus 19:08:49 Rich has joined #pf 19:09:48 scribe: becka11y 19:10:21 topic: sitebuilder / Cynthia Shelly feedback 19:10:47 based on feedback sent to the public list - Cynthia will give oral overview 19:11:05 cs: conflicts between aria and html semantics 19:11:28 cs: concerned with interaction between built in html roles and aria 19:11:54 cs: concerned avail of aria will encourage dev. to create non-semantic html 19:12:15 cs: which will prevent older /other tools that don't support aria from working correctly 19:12:35 cs: already much div soup on the web with styled divs rather than semantic markup 19:13:13 cs: for ex: using a div and marking up as text input rather than using input element 19:13:45 cs: what about changing the role of an exising html element - marking an input as a list 19:14:29 cs: exp. has been that very good devs don't do a very good job of determining the correct roles 19:14:51 cs: there are some controls that could go either way - is it a menu or a tree? end up with inconsistencies 19:15:20 q+ 19:15:28 ack n 19:15:38 dpoehlman has joined #pf 19:16:04 rs: I think that devs will do div soup, etc whether aria is there or not 19:17:15 rs: need to be explicit that if html element is avail it should be used as it is defined 19:17:30 q+ 19:17:51 bg: what about a case of a tree that I create out of lists to make it degrade? I then want to mark the ul and li elements with roles of tree and treeitems 19:18:39 ag: but spec does rec. that author's use /prefer html semantics where avail. 19:19:28 ag: can do accessible things with script and style that can sway people who say that should only use straght html 19:19:54 ag: but, to RS argument - we need to allow people to go further 19:20:12 ag: it can have side effect to make it less painful to do bad things 19:20:14 ack Rich 19:20:17 q? 19:21:33 al: if create a widget set that provides correct aria markup doesn't this become less of an issue? 19:22:04 al: authors can use canned widget set but can also go further and create their own customized set - this tech. allows that 19:22:09 q? 19:22:13 ack aaron 19:22:16 q- 19:22:34 ack cyns 19:22:54 cs: ms approach in Windows LIve has been to attempt to model those controls in native html - menus for ex. are nested links 19:23:13 cs: we require script but it generates a semantically correct DOM 19:23:18 q+ 19:23:37 cs: they may not have the role of menu but since it is created from links it will allways work 19:23:59 cs: true that toolkits will hit many devs. there are still plenty of devs who "roll their own" 19:24:49 cs: concern is for those type of devs who are building commerce sites that build it with divs and spans and then will go back and make accessible via aria w/o going back and making correctly semanti 19:25:02 q+ 19:25:16 cs: concern isn't for windows live but for generic devs who think they have more knowledge than they do 19:25:56 al: think the realistically toolkits will hit the marjority of people 19:26:05 ack rich 19:26:05 q? 19:26:31 rs: using list of links is not a good idea because it puts everything in the tab order - it is accessible but not usable 19:27:01 rs: IBM is going to focus on a widget library with accessibility built in 19:27:25 rs: writing gui applications with or w/o aria is a very big job 19:27:44 rs: thus most organizations will use reusable libraries 19:28:15 q+ cyns 19:28:18 de: responding to rich - what does aol do? We don't have the time to focus on reusable widgets 19:28:29 dp: has mixed feelings about nested list of links 19:28:48 ack dpo 19:29:32 dp: dev community is split into several camps. devs I am most concerned about are ones that want me to join their organizations and list, these are the ones that have the ability to pull off the advanced techs 19:29:51 ack cyns 19:29:58 dp: people that are already developing "wrong" will continue to do so 19:30:12 cs: list of links implementation doesn't put everything into the tab order 19:30:36 q+ 19:30:47 cs: concern over inconsistenciies between toolkits 19:31:30 cs: there is a major retailer who has very bad a11y bugs in their controls even tho they are trying 19:31:55 cs: there are mid level product teams who roll their own web dev and get it wrong 19:32:32 cs: believe it is possible to model most ui via semantic html and script and make it accessible 19:32:39 al: how would you do a spreadsheet? 19:32:51 cs: hard to design off top of head - needs design work 19:34:01 dp: understand that if there is no scripting support, links would be available - how does this behave? 19:34:17 cs: aria has the same problem with no scripting - depends on wcag baseline 19:34:27 rs: are u saying no one should use a div? 19:34:42 cs: I think there are better semantic elements to use than a div 19:35:12 al: I think her concern is that some sites will be less accessible because of aria? 19:36:15 ag: aria is trying to make simple aria extentions to enhance a11y, but cs is saying that we could have stayed closer to semantic html 19:37:10 ag: are the MS libaries something that we can look at for help in creating an implementers guide and techniques? 19:37:58 ag: in the rules we say u should use html where it works and it would be helpful to add addn example 19:38:07 q+ 19:39:10 cs: has examples that she will share with pf 19:39:30 q? 19:39:53 ack dpoehlman 19:39:54 mc: will notify group when examples are publically avail. 19:39:59 ack dpoehlman 19:40:25 ack Rich 19:40:47 rs: when u have lists in lists - how does someone semantically know that something is expandable 19:40:56 cs: is a link that is scripted to open a list 19:41:38 cs: it has user tested quite well since using link can use onclick and have it keyboard accessible 19:42:13 rs: so why wouldn't redo a desktop to create menus as links. hard to believe that when go to an arbitrary page and know how those nested lists will behave 19:42:37 cs: felt to AT uses that list of links what there and it worked quite well - assuming titles of links were sufficient 19:43:03 cs: users expect web pages to work one way and desktop app to behave another. this method works more like users expect a web page to work 19:43:17 q? 19:43:38 cs: other issues are about making it easier for html implementors 19:43:58 cs: diff between html and xhtml implementation - most html devs don't understand the different 19:44:22 cs: fact that two implementations are so different that it will confuse devs 19:44:49 cs: other issue is about maintainability of web site -would like to see aria implementation separated out like css 19:45:07 q+ 19:45:16 cs: then someone could create aria sheet ( like a css sheet) that someone knowledgeable could create 19:45:32 al: problem is that DOM needs to be acertain way to properly expose roles 19:45:51 al: are u suggesting that aria is separated out like css? 19:46:00 cs: yes separate aria from markup 19:46:13 q+ 19:46:17 cs: would like to see more similarity between html and xhtml implementation 19:46:36 al: can use just the html implementaion 19:46:36 ack rich 19:46:46 cs: think there are alot of devs who want know which one to use 19:46:56 s/want/won't 19:47:24 rs: not sure what you are asking? do you want us to mark certain sections of doc as aria? 19:47:36 cs: would like to see the same syntax in html as xhtml 19:47:56 cs: would like to be able to just put a class on a tag and put all the role and state somewhere outside of the tag in a model much like css 19:48:13 rs: not sure separating out is possible in reasonable timeframe 19:48:30 al: that is what xbl does 19:48:44 al: that is being worked on by web app formats but is still years away 19:49:05 mc: agree it may be hears away, lisa's tool could do this 19:49:56 al: isn't that what Dojo does? 19:50:12 bg: dojo embeds all of the roles and states via scripting to html or xhtml works the same way 19:50:40 ag: aaron and I have had this conv. about xbl before 19:51:55 ag: approach of xbl would make us dependent on things that don't exist yet (or didn't exist at all when we started aria) 19:52:03 q+ to say we don't have to rule out binding in the future, but still provide techniques for what works now 19:52:30 ag: once html 5 gets underway we could modify aria to work with them - but they aren't there yet - we are working to build working model 19:52:45 ag: it may get re-engineered in new html reforms from new html working group 19:52:53 ack al 19:52:57 ack Al 19:53:07 rs: we are also working to build a style guide for this so we are consistent 19:53:23 ag: but there are two distinct style guides for xhtml and html 19:53:43 cs: my point is that many devs will make the wrong choice since they don't know the difference 19:54:50 mc: as in Wcag - there is the what would we like that doesn't work now vs. what works now ; 19:54:54 ackm 19:54:57 ack m 19:54:57 MichaelC, you wanted to say we don't have to rule out binding in the future, but still provide techniques for what works now 19:55:39 cs: would the group be open to seeing a proposal on separating aria stuff into separate constructs ( like css)? 19:55:57 mc: we can't promise what will become of a proposal but of course we want proposals 19:56:42 mc: provide a high level of propsal at first and if group feels it is worthwhile develop it further 19:56:54 cs: sounds like group is in favor of developing toolkits to help developers 19:57:12 q? 19:57:17 cs: could a typical college soph working in notepad do this - is that the target 19:57:17 q+ 19:57:33 rs: no - that is not target dev. 19:58:00 al: there are some constructs that are easier than others - example: required and describedby fill holes in html spec. 19:58:18 al: can publish articles on fundamentatl things that are simpler to use 19:58:39 cs: while they aren't building dojo web devs are building menus 19:58:58 al: but are using ajax and want to mark things as live regions 19:59:24 q+ to say that xml or css won't be written well in notepad? 19:59:28 al: full tree grid implentation - would recommend (even on the desktop) to find an existing one rather than building from scratch 20:00:10 al: my view of this tech. is that it is targeted to a trickle down discemination - we don't have the capacity to put hte power to create competitive gui interfaces into the sat. morning dev except via libraries 20:01:20 al: native posistioning of this tech. - big highly competitive web sites will use it; market forces will force others to be competitive with these - will be a trickle down - sat. morning devs will steal code from existing sites and will learn hwo to use 20:01:27 rs: expect supprt by tooling 20:02:03 al: I understand that there will be tools but there is a long distance between tools and sat. morning web dev. having access 20:02:20 previous comment was al gilman 20:02:50 aaron: I agree with concerns but we need to address the problems now - need to be able to make cool ajax apps accessible now 20:03:32 aaron: wish it could be more simple but it won't be like that until we raise the bar to make web more accessible 20:03:51 aaron: want this embedded in html 20:04:00 cs: agree that we want this in native html 20:04:27 rs: took 7 years for css 2 to reach mainstream use 20:04:56 aaron: we can't wait that long for better a11y - need something now 20:05:15 rs: agree that we want this in native html so am joining the html 5 working group 20:05:49 cs: forcing alignment of semantic html and aria is the goal 20:06:47 break 20:07:02 -??P7 20:26:49 topic: drag and drop 20:27:24 -MIT531 20:27:25 WAI_PFWG(f2f-at-MgM)9:00AM has ended 20:27:26 Attendees were MIT531, leesa, Dave_Pawson 20:29:44 rs: problem with dnd spec is not what is in it but when it will actually show up? could be years 20:30:03 rs: issues: when will it be complete? when will it show up in mainstream browsers 20:30:29 rs: how does it address AT - there are new events? there is no a11y api 20:30:49 rs: several different types: drag start, drag in, etc. 20:31:31 Issues with waiting on Drag and Drop API 20:31:31 * How long before will show up in browsers? 20:31:31 * What major browser manufacturer will implement? 20:31:31 * What is the runway for standards completion? 20:31:31 * How does this address the AT? These are new events. 20:31:32 Possible strategy to address using ARIA model 20:31:34 1. DragStart is performed using a keyboard with a pop-up menu ot select the action. 20:31:34 rs: suggest drag start be implemented via keyboard with a ocntext menu; 20:31:36 2. DragStart sets a property called dragsourcenode=True and visibibly shows the drag starting point (based on the dragsourcenode being set). 20:31:39 3. User uses keyboard navigation defined by the application to navigate to each element which is a designated target. Navigation could be assisted by role landmarks, or other roles possibly. As a minimum, DOM navigation should be used. 20:31:43 4. Upon entering a node dragtargetnode is set to true on the node and a relationship is defined to associate the source and the target. Setting a target results in an event notification to the AT and the activation of a target style like a dotted border or insert line. 20:31:47 5. To drop, three options should be available Drop Before, Drop, Drop After and they should be available via a context menu. All drag properties are then cleared. Some sort of event could be fired to indicate the drag operation was complete 20:31:51 6. This proposal may require accessibility API changes. The OS does provide Drag and drop events, however these are not exposed as accessibility API and we may not be able to simulate the OS. If this were to occur that should be something the browser developers should do in the WebAPI effort. 20:32:32 see direct input from Rich for proposal 20:35:48 aaron: regarding drop - how is this different than not being able to click anywhere 20:36:30 algilman: u can't navigate to the insertion point when it is between item 3 and item 4 20:36:53 algilman: currently can only focus to an existing objects 20:37:05 aaron: can you navigate to any pixel point in this proposal? 20:37:57 aaron: usually dragging to another object but sometimes dragging to a particular pixel point 20:38:25 rs: think there is another way - that bg and I submitted as a patent - need to make that open source 20:39:04 algilman: agree that this proposal doesn't address droping at a particular pixel point 20:40:04 rs: once have established pt in dom structure can drop before, drop on, drop after or drop as child 20:40:17 rs: proposal will likely require a11y api changes 20:40:41 dp: apple may have apis for drag n drop 20:40:47 q+ to say we don't want 'drop' we want the method that the 'drop' activates 20:41:25 rs: need to know that you have landed on an object that will accept a drag or if it is about to accept a drop 20:41:45 rs: rich exlains item 6 above 20:42:46 s/exlains/explains 20:43:00 don: demos AOL mail done with Dojo 20:43:17 don: can drag and drop mails into mail folders 20:43:34 don: can drag and drop pictures into albums and can select multiple items and drag/drop 20:44:01 q+ to say rubberBand maps to select-multiple 20:44:12 don: AIM pages - (AOL competition to myspace) - users can create modules; can drag n drop modules onto the web page 20:44:26 q+ can multiple non contiguous items be selected? 20:44:43 rs: in keyboard nav - finding where to drop in the middle of something is hard - does model of before and after make sense 20:45:10 q+ to say can multiple noncontiguous items be selected? 20:45:23 don: can drag into a folder or between existing folder 20:46:16 algilman: am used to this behavior in layout manager; not sure we want a drop event - what happens at the source node some to a cut or copy 20:46:29 algilman: don't know if cut or copy until u reach the drop point 20:46:58 algilman: are applying a method on the object that you have lifted from the source point when you reach the drop point 20:47:52 algilman: may be doing an insert on the destination but may be doing other options on the item that was dragged 20:48:31 algilman: need the intent based semantics - user needs to be controlling this - for ex: is it a file compress, is it a file move, is it a file copy 20:49:28 algilman: in exposing the interface to drag n drop we need to expose the context of the operation (need to establish relationship between source and target) 20:50:04 aaron: when something goes in context menu that usually goes up front - for example must pick cut or copy 20:51:01 algilman: have to work context menu to enable the functionality not necessarily mimic the navigation of actually dragging 20:51:30 aaron: know that anchor by selecting or focusing 20:51:53 dp: I think of rubberband as selecting in a group - is it contiguous or not? need to know that 20:52:21 q+ 20:53:16 algilman: in the case of compressing a file, the default is that the original file remains - use doesn't have to select cut or copy 20:53:34 s/use/user 20:54:10 algilman: whether the file remains on not depends upon where you drop it - in some cases it remains and others it does not 20:57:35 aaron: why isn't this something the OS should do? 20:57:54 algilman: mousekeys exist and they are generally not usable - is too restrictive 20:59:03 aaron: I want to say move the mouse to focus, move mouse to paricular object, click and hold, click, and also want to be able to move to any location all via the keyboard 21:01:59 topic: Linda's (lm) review of roles 21:02:21 http://lists.w3.org/Archives/Member/w3c-wai-pf/2007JanMar/0079.html 21:03:14 lm: what is the level of semantics? 21:03:28 Linda's email at http://lists.w3.org/Archives/Member/w3c-wai-pf/2007JanMar/0079.html 21:03:43 rs: we haven't done an api for brand new widgets - need a way to define abstract roles 21:04:26 al: idea is that base roles are abstract roles 21:05:51 rs: base classes are there to define if an obj is structural or a widget - those base classes will hav eproperties that are inherited by acutal roles which are instantiated in the cod 21:06:06 rs: user agent shouldn't expect to see those base class roles in a document 21:06:17 rs: like canvas - need to subclass it 21:07:00 rs: at some point need to create an api to expose knowledge about information of new widget - it is like the existing xyzzy widget and hax hte following properties 21:07:20 rs: the rdf taxonomy is a class hierarchy and you can inherit to create own custom widget 21:07:44 al g: there is aconcept of distinguishing widget roles from structural roles 21:07:57 al g: structural roles are distinguished by navigation behavior 21:08:33 al g: widget roles are typified by behaviors in context - they do application functions 21:09:27 lm: if the sturctural role is for navigation are tree treegroup, radiogroup, option structural? they are currently under widget 21:09:44 al g: tree group certainly seems like it is structural 21:10:09 lm: msaa is flat but ui automation has the concept of hierarchy and inheritance 21:10:42 al g: sometimes properties inherit from part whole hierarchy - I see hierarchy and inheritance as separate 21:10:58 al g: there is a part / whole hierarchy and a derivation hierarchy 21:11:52 lm: ui automation has those concepts - and lm can review with others 21:12:32 al g: we can do this at a meeting - we want two implentations. ATK is one implementation of these concepts, UI automation is another possible implementation 21:12:56 al g: would be good if all of this maps gracefully into different api implementations 21:13:37 lm: I think ui automation exemplifies many of these patterns 21:13:58 lm: can apply patterns to roles - for ex: in a tree can apply collapse patter 21:14:24 rs: challenge will be to figure out what action will cause the events to occur 21:14:43 lm: do we talk about the events in aria? or just the static roles? what about xml events? 21:15:11 rs: at some point in hmlt working group we considered adding purpose to events - it has not made it into xhtml spec 21:16:08 rs: would help to allow events that are not keyboard dependent - to expand via voice input instead of just keyboard 21:16:22 dpoehlman has left #pf 21:18:11 action: lisa to add an issue to explain related concept as a borrowed concept (for example not subclassing from xforms but are borrowing hte concept) 21:19:28 aaronlev has joined #pf 21:19:45 scribe aaronlev 21:21:09 scribenick aaronlev 21:21:21 scribe: aaronlev 21:23:54 JA: 2 things which which are interrelated 21:24:29 JA: UAAG issues around ARIA 21:25:50 JA: one issue was about live regions, ARIA markup, and when should the user's context change. Maybe based on user configuration or politeness? 21:26:25 JA: another issue was, should the user agent provide some kind of live region support if the author doesn't do it 21:26:39 JA: does the UA need to allow for that 21:26:59 Rich: a screen reaer can do that repair 21:27:10 Rich: a screen magnfier will also be able to do that 21:27:29 Rich: maybe that depends on the level of navigation 21:27:42 JA: what about users with mobilty impairments with no AT 21:29:22 JA: what about sliders 21:29:46 aaronlev: a slider is not what we usually mean by a live region -- that's more of a widget 21:30:54 Rich: you might want to follow a relationship 21:31:22 Al: if there's something the thing can do you need to be able to navigate to it 21:31:50 Al: it might not be in the tab order 21:32:15 Al: so yes there's a case for this 21:32:37 JA: our first provision in the document 21:36:56 claws: it's the job of the javascript author to do this, not the AT or the user agent 21:37:08 claws: because we have no way to know how to repair it 21:37:27 becka11y: agree 21:37:34 Al: not true 21:38:45 Al: firing any event is in DOM 2, and in DOM 3 we can ask what events it handles 21:39:02 aaronlev: we can do it now but not via the DOM (we can do it in C++) 21:39:36 JA: if i can't even get to it, there's no chance 21:39:49 Al: then you're violating wcag 21:39:53 q+ 21:42:37 aaronlev: let's enable a better mouse keys by exposing any object with event handlers and what those handlers are 21:43:22 q- 21:44:21 aaronlev: we do that for onclick 21:44:38 claws: i think it's a problem to require the AT to fix content 21:46:47 Al: i'm hearing that the base browser should operates some navigation mode that lets you navigate to all those things 21:47:58 claws: the browser should let you key navigate to anything with an event handler 21:48:15 Rich: expose it thru accessibility api 21:51:25 q? 21:51:25 becka11y has left #pf 21:51:49 Linda: i expect user agent to handle it 21:52:21 Rich: if the app didn't provide a keyboard nav mechanism to get to it, how can you get to it and use it 21:53:12 Al: device independence has taken this issue 21:54:57 Linda: the operating system should control the mouse pointer, not web browesr 21:55:45 claws: the user agent could do it 21:56:33 MichaelC: wednesday is joint WAI meetings to talk about a roadmap or timeline for testing 21:56:50 MichaelC: we'd like to share resources between different groups 21:57:23 MichaelC: there's a page: http://www.w3.org/2007/01/wai-testing 21:58:05 MichaelC: the QA working group provided a lot of materials and then disbanded 21:58:11 MichaelC: several of us have test suites as well 21:58:40 MichaelC: the plan is to get a little bit technical, this could lead to some kind of coordination group for testing, depending on the interest level (for all of WAI) 21:58:47 joint VXML-MMI meeting will begin in Kiva (G449) on Wednesday starting at 9: 22:01:07 rrsagent, generate minutes 22:01:07 I have made the request to generate http://www.w3.org/2007/01/23-pf-minutes.html MichaelC 22:01:34 rrsagent, make log world 22:01:43 rrsagent, generate minutes 22:01:43 I have made the request to generate http://www.w3.org/2007/01/23-pf-minutes.html MichaelC 22:02:28 present: Al_Gilman, Linda_Mao, Aaron_Leventhal, Becky_Gibson, Michael_Cooper, Rich_Schwerdtfeger, Janina_Sajka, Dave_Poehlman, Don_Evans, Lisa_Seeman, Tim_Boland, Dave_Pawson, Cynthia_Shelly, Masahiko_Koneko 22:03:07 scribeOptions: -final 22:03:13 rrsagent, generate minutes 22:03:13 I have made the request to generate http://www.w3.org/2007/01/23-pf-minutes.html MichaelC 22:05:31 zakim, bye 22:05:31 Zakim has left #pf 22:05:33 rrsagent, bye 22:05:33 I see 2 open action items saved in http://www.w3.org/2007/01/23-pf-actions.rdf : 22:05:33 ACTION: Becky and Aaron to revisit multilevel menus [1] 22:05:33 recorded in http://www.w3.org/2007/01/23-pf-irc#T18-59-24 22:05:33 ACTION: lisa to add an issue to explain related concept as a borrowed concept (for example not subclassing from xforms but are borrowing hte concept) [2] 22:05:33 recorded in http://www.w3.org/2007/01/23-pf-irc#T21-18-11