[Accessibility-ia2] ChildIDs Specification Incorporated into IAcc2
Pete Brunet
brunet at us.ibm.com
Thu Jun 12 23:09:44 PDT 2008
Norm,
IA2 has no IP based on MSAA. The fact that IA2 derives from MSAA is an
error and in a future version of IA2 that line of code will be changed to
remove the inheritance. No MSAA methods are used, overridden, or
extended.
The IP concern is about the fact that the two new methods would be similar
to the two methods in IAEx. The file you attached to bug 114 is protected
by "UI Automation Specification and Community Promise" (if you follow the
link at the bottom of the first page). Since the requested methods will
be similar to the IAEx methods it's not clear that there are no legal
issues. There are at least the following questions:
1) Can the IA2 related code be part of the IA2 suite of interfaces?
2) Can the IA2 related code be licensed under any license that the Linux
Foundation chooses?
3) If it has to be licensed under the "UI Automation Specification and
Community Promise" what are the implications for organizations that would
implement the interfaces?
Also see
https://lists.linux-foundation.org/pipermail/accessibility/2008-March/002298.html
https://lists.linux-foundation.org/pipermail/accessibility/2008-March/002308.html
At this point I only see two ways out of this:
1) Arrange a face to face meeting with Microsoft and Linux Foundation
attorneys (are there also AIA attorneys?) and have then work together
until a legal agreement is reached where the LF could proceed.
2) Since Microsoft seems to be the only organization requesting these two
methods have them released by Microsoft or AIA.
I'd prefer the former because some other organization may eventually
surface that could use the methods.
=====
Larry, An interface with two methods would be added. I'm not thrilled
with this interface name but for now here is a draft of the IDL and sample
usage...
IAccessibleSimple:
// For this parent accessible, fetch a full accessible representing the
specified
// child simple element where the accessible has implemented IAccessible2
[propget] HRESULT objectForChild( [in] long childID, [out, retval]
IAccessible2 *accessible2 );
// For this accessible, fetch the parent accessible, childID pair
representing an equivalent simple element
[propget] HRESULT accessiblePair( [out] IAccessible * accessible, [out,
retval] long childID );
Here is some example code (which won't compile and needs error handling
but should be understandable)...
Example usage of the first method:
// given IAccessible acc, and long childID, get the corresponding
IAccessible2:
IAccessibleSimple * accSimple = NULL;
IAccessible2 * acc2 = NULL;
IServiceProvider * sp = NULL;
// QI for IServiceProvider
acc->QueryInterface(uuidof(IServiceProvider), &sp);
if (sp) {
// Call QueryService to get the IAccessibleSimple
sp->QueryService(uuidof(IAccessibleSimple),
uuidof(IAccessibleSimple),
&accSimple);
if (accSimple && childID != CHILDID_SELF) {
// If this is a child element, use get_objectForChild to
// get an interface instance for this specific child
accSimple->get_objectForChild(childID, &acc2);
}
}
if (acc2) {
// This object supports IAccessible2
} else {
// This object doesn?t support IAccessible2, use IAccessible only
}
Example usage of the second method:
// given acc2 (an accessible implementing IAccessible2) get an
{IAccessible, idChild} pair:
IAccessible * acc = NULL;
IAccessibleSimple * accSimple = NULL;
long childID;
// QI for IAccessibleSimple
acc2->QueryInterface(uuidof(IAccessibleSimple), &accSimple);
if (accSimple) {
// get the IAccessible, childID pair
accSimple->get_accessiblePair(&acc, &childID);
Pete Brunet
IBM Accessibility Architecture and Development
11501 Burnet Road, MS 9022E004, Austin, TX 78758
Voice: (512) 838-4594, Cell: (512) 689-4155
Ionosphere: WS4G
Norm Hodne <normanho at windows.microsoft.com>
06/12/2008 06:24 PM
To
Larry Weiss <lweiss at microsoft.com>, Pete Brunet/Austin/IBM at IBMUS
cc
"Accessibility-ia2 at lists.linux-foundation.org"
<Accessibility-ia2 at lists.linux-foundation.org>, Calvin Gaisford
<CGaisford at novell.com>, Masahiko Kaneko <mkaneko at windows.microsoft.com>,
Richard Schwerdtfeger/Austin/IBM at IBMUS, Rob Sinclair
<robsi at windows.microsoft.com>
Subject
RE: ChildIDs Specification Incorporated into IAcc2
Hi Pete,
Maybe you can help me understand where the concern is coming from. Are you
saying that you have IP concerns over all of the MSAA that IAccessible2
uses? Since IAcc2 derives from MSAA, and ChildIds are part of MSAA, adding
support for ChildIds seems to provide better interoperability with its
inclusion in the specification and would provide real benefit for AT and
IT companies alike.
Norm
From: Larry Weiss
Sent: Thursday, June 12, 2008 3:58 PM
To: Pete Brunet; Norm Hodne
Cc: Accessibility-ia2 at lists.linux-foundation.org; Calvin Gaisford;
Masahiko Kaneko; Norm Hodne; Richard Schwerdtfeger
Subject: RE: ChildIDs Specification Incorporated into IAcc2
But there are design considerations that the IAccessible2 owners should
specify. For example, what type of object should be returned by
GetObjectForChild (note that IAccessibleEx returns an IAccessibleEx)? I
would think you?d at least want to discuss how this would be used by your
implementers before coding up the IDL.
Larry.
From: Pete Brunet [mailto:brunet at us.ibm.com]
Sent: Thursday, June 12, 2008 3:44 PM
To: Norm Hodne
Cc: Accessibility-ia2 at lists.linux-foundation.org; Calvin Gaisford; Larry
Weiss; Masahiko Kaneko; Norm Hodne; Richard Schwerdtfeger
Subject: RE: ChildIDs Specification Incorporated into IAcc2
Norm, If that is all you will be able to contribute I think the Linux
Foundation is going to need a statement from your legal staff and that is
what I am trying to eliminate. If you could submit the IA2 equivalent
description I think it would be clear that the IP would not be covered by
the UIA Community Promise or any other Microsoft IP protection. I believe
it would be a minor undertaking for Larry to create the IDL, well under a
day. It wouldn't have to be debugged or even run through MIDL, just coded
up enough to convey the idea, basically changing UIA objects to IA2
objects.
Pete Brunet
IBM Accessibility Architecture and Development
11501 Burnet Road, MS 9022E004, Austin, TX 78758
Voice: (512) 838-4594, Cell: (512) 689-4155
Ionosphere: WS4G
Norm Hodne <normanho at windows.microsoft.com>
06/12/2008 04:52 PM
To
Norm Hodne <normanho at windows.microsoft.com>, Pete Brunet/Austin/IBM at IBMUS,
"Accessibility-ia2 at lists.linux-foundation.org"
<Accessibility-ia2 at lists.linux-foundation.org>
cc
Calvin Gaisford <CGaisford at novell.com>, Larry Weiss
<lweiss at microsoft.com>, Masahiko Kaneko <mkaneko at windows.microsoft.com>,
Richard Schwerdtfeger/Austin/IBM at IBMUS
Subject
RE: ChildIDs Specification Incorporated into IAcc2
Adding the A11Y alias per Rich?s suggestion?
Norm
From: Norm Hodne
Sent: Thursday, June 12, 2008 12:06 PM
To: 'Pete Brunet'
Cc: Calvin Gaisford; Larry Weiss; Masahiko Kaneko; Richard Schwerdtfeger
Subject: RE: ChildIDs Specification Incorporated into IAcc2
We?ve already stated that there aren?t any outstanding licensing issues
with implementing support for ChildIDs in IAcc2, I?d be happy to state
that again. I think you need to do your own engineering as far as how you
would implement it for IAcc2 yes?
From: Pete Brunet [mailto:brunet at us.ibm.com]
Sent: Thursday, June 12, 2008 11:55 AM
To: Norm Hodne
Cc: Calvin Gaisford; Larry Weiss; Masahiko Kaneko; Richard Schwerdtfeger
Subject: RE: ChildIDs Specification Incorporated into IAcc2
Hi Norm, I was hoping for the submission to be the equivalent IA2
interface rather than an attachment of the IAEx spec. I'm paranoid when
it comes to licensing issues, no matter who the IP owner is, and rather
than trying to work through any issues related to the licensing of the
IAEx spec, I think all the concerns would be eliminated if Microsoft would
submit the IA2 equivalent. Could Larry provide that?
Pete Brunet
IBM Accessibility Architecture and Development
11501 Burnet Road, MS 9022E004, Austin, TX 78758
Voice: (512) 838-4594, Cell: (512) 689-4155
Ionosphere: WS4G
Norm Hodne <normanho at windows.microsoft.com>
06/12/2008 12:01 PM
To
Pete Brunet/Austin/IBM at IBMUS
cc
Calvin Gaisford <CGaisford at novell.com>, Masahiko Kaneko
<mkaneko at windows.microsoft.com>, Larry Weiss <lweiss at microsoft.com>
Subject
RE: ChildIDs Specification Incorporated into IAcc2
Hi Pete,
Sorry it took so long. I?ve been traveling a lot lately. I added the
IAccessibleEx spec as an attachment to the bug.
Thanks!
Norm
From: Pete Brunet [mailto:brunet at us.ibm.com]
Sent: Tuesday, May 27, 2008 8:47 AM
To: Norm Hodne
Subject: Fw: ChildIDs Specification Incorporated into IAcc2
Norm, Are you having any issues with this request that I might be able to
help with?
Pete Brunet
IBM Accessibility Architecture and Development
11501 Burnet Road, MS 9022E004, Austin, TX 78758
Voice: (512) 838-4594, Cell: (512) 689-4155
Ionosphere: WS4G
----- Forwarded by Pete Brunet/Austin/IBM on 05/27/2008 10:45 AM -----
Pete Brunet/Austin/IBM
05/16/2008 10:25 AM
To
Norm Hodne <normanho at windows.microsoft.com>
cc
robsi at windows.microsoft.com, Richard Schwerdtfeger/Austin/IBM at IBMUS,
janina at freestandards.org
Subject
Re: ChildIDs Specification Incorporated into IAcc2
Norm, Regarding the request by Micosoft to enhance the set of IAccessible2
interfaces to add support for childIDs, it came to me last night that we
should be able to resolve the legal concern regarding the addition of
get_objectForChild and get_IAccessiblePair to the IAccessible2 set of
interfaces. If someone from Microsoft created the interface and attached
it to bug 114 at http://bugs.freestandards.org/show_bug.cgi?id=114 then it
would be clear that the content was directly from and approved by
Microsoft and thus it would be clear that the content was not in violation
of any Microsoft licenses, copyrights, or promises. Since the current set
of IAccessible2 interfaces are already in use in several implementations
the two methods would have to be in a new interface. I'll be happy to
review the submission so we can come to consensus on the naming,
documentation, etc. We can have that interchange inside of bug 114 and
that way it will be fully in the open and the process will be easily
reviewable.
Pete Brunet
IBM Accessibility Architecture and Development
11501 Burnet Road, MS 9022E004, Austin, TX 78758
Voice: (512) 838-4594, Cell: (512) 689-4155
Ionosphere: WS4G
Norm Hodne <normanho at windows.microsoft.com>
04/11/2008 12:14 PM
To
Pete Brunet/Austin/IBM at IBMUS
cc
Subject
ChildIDs Specification Incorporated into IAcc2
Hi Pete,
Rich said that we were working the implementation of ChildIds now for
IAcc2. How is that coming? I?ve been monitoring the A11Y information, but
I haven?t seen a discussion on it.
Norm
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.linux-foundation.org/pipermail/accessibility-ia2/attachments/20080613/251c292f/attachment-0001.htm
More information about the Accessibility-ia2
mailing list