Accessibility/Datatypes: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
Line 1: Line 1:
== Proposal ==
{| summary="Proposed mapping IAccessible2 to Gecko Accessible" width="90%" border="1" cellspacing="1" cellpadding="1"
* Change aaa:datatype attribute name to aaa:type (to match what's used with schema)
! IAccessible2
* Allow aaa:type attribute to point to any schema, e.g. type="my:phonenumber"
| Description
* The user agent will parse the data type pointed to and provide the following information via ATK/AT-SPI/IAccessible2 object attributes (which can expose arbitrary string values)
! Gecko Accessible
* Each element on the page can utilize a simple type, and the schema can define the xs:restrictions as well as the xs:use attribute
! Description
* If a complex type is used, it makes the most sense to map this to multiple elements on the page, each with its own simple type
* Note that this means HTML will be usable for author defined types, because it does not support xmlns, and thus the actualy datatype would not be reachable by the user agent.
 
{| summary="Proposed data type attribute to mapping" width="90%" border="1" cellspacing="1" cellpadding="1"
! Type information
! Object attribute or state
! Notes
|-
|-
| aaa:type
| nRelations
| "xs-type"
| Returns the number of accessible relations for this object
| ??
|
|
|-
|-
| xs:base
| relation
| "xs-basetype"
| Returns one accessible relation for this object
| What the type is derived from. Must be one of the built-in types such as xs:integer. If original aaa:type is one of the built-in types, then this will be the same.
| ??
|
|-
|-
| xs:minLength
| relations
| "xs-minlength"
| Returns multiple accessible relations for this object
| ??
|
|
|-  
|-
| xs:maxLength
| scrollTo
| "xs-maxlength"
| Makes an object visible on screen
| ??
|
|
|-
| xs:length
| "xs-minlength" and "xs-maxlength"
| Expose these two attributes with the same value
|-
|-
| xs:totalDigits
| groupPosition
| "xs-totaldigits"
| Returns grouping information
| ??
|
|
|-
|-
| xs:fractionDigits
| localizedRoleName
| "xs-fractiondigits"
| Returns the localized role name
| ??
|
|
|-
|-
| xs:use="fixed"
| states
| "valuenow"
| Returns the bit strip containing any IAccessible2 states
| Also sets readonly state (overrides aaa:readonly). Author should also set aaa:valuenow to the same value, and not allow changes. In the case of a difference, the schema will override aaa:valuenow.
| nsIAccessible::finalState
| Returns the bit field which describes boolean properties of node
|-
|-
| xs:use="default"
| localizedStateNames
|  
| Returns localized state names (array of strings)
| Not mapped, because author should be responsible to fill in aaa:valuenow on element initialization
| ??
|
|-
|-
| xs:use="required"
| extendedRole
| required state
| Returns the extended role
| same as aaa:required. aaa true, required state will be set
| ??
|
|-
|-
| xs:whiteSpace
| localizedExtendedRole
| "xs-whitespace"
| Returns the localized extended role
| ??
|
|
|-  
|-
| xs:pattern
| nExtendedStates
| "xs-pattern"
| Returns the number of extended states
| ??
|
|
|-
|-
| xs:enumeration
| extendedStates
| "xs-pattern" (must be built by in the format "<nowiki>string1|string2|string3</nowiki>"), with appropriate characters escaped with a backslash
| Returns the extended states (array of strings)
| same functionality as xs:pattern, so to simplify we expose the same way
| nsIAccessible::extState
| Extended accessible states -- second bit field describing node
|-
|-
| xs:minInclusive
| localizedExtendedStates
| "xs-valuemin"
| Returns the localized extended states (array of strings)
| When aaa:valuemin is also set, the schema minimum value will be used
| ??
|
|-
|-
| xs:maxInclusive
| uniqueID
| "xs-valuemax"
| Returns the unique ID
| When aaa:valuemax is also set, the schema maximum value will be used
| ??
|
|-
|-
| xs:minExclusive
| windowHandle
| "xs-valuemin" + "xs-exclude-min"="true"
| Returns the window handle for the parent window which contains this object
| ??
|
|
|-
|-
| xs:maxExclusive
| indexInParent
| "xs-valuemax" + "xs-exclude-max"="true"
| Returns the index of this object in its parent object
| ??
|
|
|-
|-
| xs:union
| locale
| "xs-pattern"
| Returns the IA2Locale of the accessible object
| This must be generated as a fixup to "xs-pattern" using the OR operator
| ??
|
|-
|-
| xs:list
| attributes
| "xs-list"="true" and change "xs-base" to the specified xs:itemType for the list
| Returns the attributes specific to this IAccessible2 object, such as a cell's formula
|  
| nsIAccessible::attributes
| Attributes of accessible
|}
|}
Confirmed users
1,396

edits

Navigation menu