[Accessibility] FSGA Draft Minutes, 14 June 2006 Telecon

Janina Sajka janina at freestandards.org
Wed Jun 21 08:46:34 PDT 2006

Posted on behalf of John 
Goldthwaite ...

6/14/06 FSG Accessibility meeting
notes        .
Olaf Schmidt
John Goldthwaite
Bill Hanaman
George Kraft
Aaron Leventhal
Peter Pricey
Peter Korn
Janina Sajka
Ariel Rios
Cathy Laws
Larry Weiss

Problems with
audio recordings for last few calls, hope we have that fixed.  

AT-SPI discussion

a number of RFE’s have been
added.  The roles and relations we had consensus on have been
added.  Maybe we can focus on some of the others.
Collection- current methods, IBM wanted to know about changing match
Larry- ancestor collection, how to enable the use cases for an
AT to be able to do.  Confused about term children in the collection
interface.  May not want to collect a child of a referenced
item.  Want to collect 5-10

Bill- they are children of the
collection instance.
Larry - yes, when you want the next 5 or
10.   Reference accessible.  
Janina- Aaron,
Aaron- I’d prefer to have Larry drive the discussion,
he understands my issues.
Bill- my current definition is the decent
of the collection.  If you think we should use descendent, I’d
entertain that.          With recurse
flag on.
Larry- from AT perspective, when I’m collecting a
subset, with recurse flag on it could be a deep
Bill- designed so that not every object would implement
collection.  We envisioned high level objects doing collection. 
There could be nested collection but not too deep.  This came out of
use cases that were document centric.
Larry- application level,
document level or table level for a large table.
Bill- or a form -
anything with embedding would have need for embedded collection.
Larry-  what about a browser with document level collection?
Bill- good question, easier to implement if answer is no but puts a
burden on the AT.  
Bill- could query
Bill- does anyone have strong feeling about
this case?
Peter- it is important to keep subcollections out of the
Bill- yes, don’t have to do horrible marshalling
Larry- but for headings or labels or something in other collection.
Would it make sense to have a marker - if you hit it.
Bill- it
reduces the API calls by one
Larry- other collection in the way
Bill- that is what I was think about when I asked about AT detecting
that case, AT knows there a objects that calls to the outermost collector
don’t give it.  One more if subsequent queries are going to be
incomplete enough.  I’m not sure it is worth inventing a new
piece of API to save one call.  Probably should use same behavior and
not get more complex.  We do have a match rule.  The client
decides on a match rule and then gets a return, It doesn’t get a
complex return.  
Hope we don’t have Modify by recipient
and return back, that is messy.
I’m not sure I agree with that.  If you are asking for a
container contents, why wouldn’t you want all contents?
with imbedding lots of thing- screenreader will be focused on something in
particular, looking a contents.  I think there are few use cases but
maybe I’m forgetting.
Aaron- ancestor collection..
have a strong view of ancestor collection.

Olaf- European
dial-up numbers are not working.

Aaron- collection is mainly
for documents but in Gecko you have Frame, Iframe.  Have editable
areas.  It is a little confusing, want to operate on a
subframe.  Maybe the results that come back should help you determine
what it is.  How will you make determination.  When you walk
into subtrees, with other 
Bill- my view is that collection is
implemented on very specific nodes in the tree.    You have
to exercise some care about where you implement collection.  The
implementation you face with ATK in Firefox.. Document A inside document
B.  Would not want to see a large number of nested documents. 
Wouldn’t break on every Iframe.  If you had a wp document
with.. Would it make sense to have webpage with several documents inside
Larry- optimized collection interface?
Bill- yes to both,
anything that implements documents should implement collections.  The
bridges look for documents and the should implement accessible on the
document.  An ATK document - when an application uses a widget that
implements a document, should see that and implement collection.
..Don’t... when we implement ATK, application can implement an
optimized collection implementation.
Larry- if Firefox wanted
collection on each frame, it would need 
Aaron- if you get element by
tag name, you could be anywhere and ask for tag name.  That is useful
...  Don’t see a reason to have a limitation.
because it raises an issue of how deep does collection collect?
Aaron- you will have that anyway, don’t walk into document. 
Aaron- allow collection but don’t do walking in
Bill- not the same as w3c DOM
Aaron- yes but we can
learn from the w3c DOM
Bill- helps give it some structure
what is the advantage?
Bill- having a limit on how deep collection
collects, ... Implementation issue, what is easier depends on the
application and the use case.  I agree with Peter, trying to make
collection collect completely, is a bad idea.
Aaron- that is not what
I’m saying.  I want to be able to start anywhere.
s...  starting point for which collection?
Aaron- I’m on a
group box in a check box, I just want to get all the check boxes.
Peter- ..
Larry- if 
Peter- Predicated on implementing 
Peter- what is the value vs. cost of implementing
same in Mozilla, .. Instead of l
Peter- I see the usefulness, by
keeping it in the application you save some on the context
switches.   Not sure the implementation cost is worth it for
what we gain.
Aaron- trees

Aaron- the code is the same
either way.
Peter- it maybe the same for Mozilla, it may not be for
Swing or Star Office. 
Aaron- I thought the implementation is where
it was going to live.
Peter- doing it inside Mozilla
Bill- have
to live with collection being implemented with the document
interesting RFE but it may be easy to implement in Mozilla, I don’t
believe that is the case either way.  I’m not sure the end user
gain is worth the implementation cost.  Is this going to yield
significant end user benefit.  
Aaron- I hear what you are
saying. With the toolkits I’ve worked with there is some
primitive,(g object) 
Bill- won’t collect into other
toolkits?  If we need to bound where collection stops, then we have a
well defined and easy to ascertain model of when to stop collecting. 
Document does not give a good example.  Table may not need to
implement document but it might need to have collection.  Limit depth
of collection search in
Aaron- I’m not going to be implemented
the screenreader but if I were, I would not want some tables to implement
collection and others not, that is confusing.
Bill- we already have a
model for traversing the DOM.  It is universal through the
hierarchy.  Not intended to be implemented uniformly but as
needed.  The app developer needs to be given advise on where to place
the collection boundary.
Peter- there is a clear distinction between
content and chrome.  The chrome problem, all objects are in memory
and are easily found and manipulated.  With content, the elements
could be 2k or 2 MB.   .individual objects 
Peter- might be easier but might not be necessary
Aaron- how do you
get the default button without traversing every single thing?
you have to traverse it.  If you have a 50 items that’s
different from the 2MB case,
I’m not convinced that with
processor speeds, that we need to do this.
Bill- the notion of
implementing this in the bridge, may not have to implement s
need the ATK specific cases for , I see little cost for implementing it on
dialogs but I don’t see the value of implementing it on
Peter- I see his point on why not do it everything
Bill- no—
Peter- this ties back to the use case, you can see
it making sense on top level items.  What is ancestor that has focus,
what.   You can see questions like that making sense. I see that
if you are implementing it in the Bridge, it is the same code.  I
also see the problem of scope, if in the toolbar, what are the list of
buttons.  Do I want to get the buttons that are not on the screen?
Bill= scope for visibility, ...
Bill- the fact is in
GUI’s it is not unusual for the tree structure to not map nicely on
to the visual presentation. .. The client would be vulnerable if it
thought the hierarchy was semantically meaningful.
Peter- you
don’t make that assumption.  You say here are to buttons in the
dialog box, not here are the buttons in the grouping because group may not
be defined.
Bill- implement on specific node, this node is an
important one.  
Aaron- I thought you were saying the
application could do that.
Bill- right now we would only get
collection for... the only way to know where to do it was in association
with other ATK interfaces.  Implementing tables ..  It is early
days, the road map calls for applications to implement their own version
of ..  Eric says we 

Peter- thanks for explaining this.
Larry- you mentioned the roadmap, is that public somewhere.  
Bill- the roadmap is what we’ve been building in these
Janina- we may need a document.
Bill - we have
a email trail ,   it is important that

boundary conditions- a collection does not traverse into another
collection.  Allow collection interfaces.  Collect children,
when you say next , you are still collecting down into the children of the
original collection.. One refers to itself as next match.  If you
read next children it says next match.

Bill- I’m not sure
about collection on top level application. I’m hearing we have a
majority view but also a minority from Aaron.  
Aaron- should be
possible to limit what you are walking inside of.
Bill- we all agree
that boundary conditions are important for collection.. Should stop when
it hits certain boundaries.
Aaron- what about starting at a

Aaron- look for state defaults on buttons
Bill- no, that’s a new idea.  Non-client specified. 
Imposed on client and client should be aware of them.  Client
doesn’t get to specify all the boundary conditions.  Trade off
between client and app.

Larry- marker to indicate collection is
needed here
Bill-   could wait a while on that.  We
agree that collection is implemented on documents, if we want it more
broadly, we can rethink it.  Bridge implements, atk implements. 
Plan was that we didn’t need it yet.
Larry- we were going to
see if any clients asked for it.
Bill- right place for us to stop our
short term discussions.
Larry- is there any way to start at the
bottom and collect backward?
Bill- what is bottom?
Larry- if
something accessible.
Bill- if you asked for it in reverse order, you
get them backward,
Larry- I thought the answer was yes, j  
getchildren, null to indicate the top?
Bill- the answer is to avoid
the null. Since we have getnext and getprevious, it doesn’t make
sense for them to do the same thing if you pass a null.  Seems like
we should have 3 or collapse it to one.  
Larry- I though the
only difference was the one parameter.  If I do getprevious and you
give me 10, what order are they in?
Bill- it will start walking at
the top and give the 10.
Larry- give me the last ten.  
Bill- lets assume the number of items returned will be small compared to
the stick.  In that case get previous gives you everything up to a
point.  Get previous followed by x will give you the same as get
Larry- say I am in the middle of a large document and I say
get ten, does it give me the first 10?
Bill- yes, relative to a
subelement does not mean
Bill- that needs to be
Larry- can you update the documentation to clarify it. 
Bill- I promised to create a branch, may not have done before

ancestor is a vector up.  Doesn’t seem to be the same
activity.  Don’t see a reason for boundary conditions
Larry- what is getactive.   You have getactive
Bill- we may not
need getactive descendent. ..
Bill- there can only be one
active descendent
Larry- may want to know if it is the next one
Bill- I think it is more about tables, big complicated objects. 

Larry- lets defer that until next time.


Janina Sajka				Phone: +1.240.715.1272
Partner, Capital Accessibility LLC	http://CapitalAccessibility.Com

Marketing the Owasys 22C talking screenless cell phone in the U.S. and Canada--Go to http://ScreenlessPhone.Com to learn more.

Chair, Accessibility Workgroup		Free Standards Group (FSG)
janina at freestandards.org		http://a11y.org

More information about the Accessibility mailing list