- From: Ian B. Jacobs <ij@w3.org>
- Date: Thu, 28 Mar 2002 17:45:48 -0500
- To: w3c-wai-ua@w3.org
Dear UAWG and AT vendors, Many thanks to those who attended today's teleconference (minutes [1]) to discuss our DOM requirements (see guideline 6 of the 12 Sep 2001 Candidate Recommendation of UAAG 1.0). The goal of the teleconference was to confirm whether the requirement of UAAG 1.0 to implement the DOM 2 Core for access to XML/HTML content: (1) meets the needs of AT developers, and (2) promotes interoperability in practice. We did not get a definitive answer to either question on the call. However, we made good progress because we are going to look more closely at what the communication needs are. We may not satisfy all of them in UAAG 1.0, but we may be able to formulate requirements that come closer to satisfying them. The goal of this proposal is to help start discussion on what a "minimal set" of requirements are for information that must be communicated through an API between user agent and API. At today's call, we asked everyone to send their functional requirements for an API to the list. This proposal complements those actions; it will be valuable to see whether people's "top 5" functional requirements line up with the XML Infoset (see below). Aaron Leventhal has already contributed to the discussion [3] by describing what information is offered by Mozilla's "simple dom API". This proposal is based on a conversation with Philippe Le Hegaret after today's UAWG teleconference. ======== Proposal ======== Preface: * During the teleconference, we talked about identifying a minimal API that would meet the needs of AT developers. * The XML Infoset is a W3C Recommendation that carefully identifies pieces of XML content. A subset of the XML Infoset can be used to describe pieces of HTML content. * Our efforts to talk about what information should be available to ATs should be coordinated with the work on the Infoset. * Point three of the proposal is the minimal set of information for HTML. <Old 6.1> Provide programmatic read access to HTML and XML content by conforming to the following modules of the W3C Document Object Model DOM Level 2 Core Specification [DOM2CORE] and exporting the interfaces they define: * the Core module for HTML; * the Core and XML modules for XML. </Old 6.1> Note: I'm not concerned about the exact wording in what follows, but comments on wording are welcome. New: 1) In a java or ecmascript operating environment, provide programmatic read access to XML content by conforming to the Core and XML modules of the W3C Document Object Model (DOM) Level 2 Core Specification and exporting the interfaces they define. COMMENT: The java and ecmascript bindings in DOM Level 2 Core are normative, and therefore the DOM is the best way to provide access to the XML information items. We heard a number of AT developers say today they wish they had normative bindings in C++ as well, but DOM 2 does not define them. 2) In other operating environments, provide programmatic read access to XML content by making available the pieces defined by the W3C XML Infoset [4]. A user agent satisfies this requirement by providing programmatic read access to XML content by conforming to the Core and XML modules of the W3C Document Object Model (DOM) Level 2 Core Specification and exporting the interfaces they define. COMMENT: I'm not yet certain how to make references to the XML Infoset. I will look into whether this type of reference makes sense. This comment applies to the next point as well. 3) Provide access programmatic read access to HTML content by making available the following pieces defined by the W3C XML Infoset [4]: 2.1 The Document Information item: children, document element, base URI, charset 2.2 Element Information items: element-type name, children, attributes, parent 2.3 Attribute Information items: attribute-type name, normalized value, specified, attribute type, references, owner element 2.6 Character Information items: character code, element content whitespace (see comment), parent element 2.7 Comment Information items: content, parent Optional: 2.8 The Document Type Declaration Information item: system identifier, public identifier, parent A user agent satisfies this requirement by providing programmatic read access to XML content by conforming to the Core module of the W3C Document Object Model (DOM) Level 2 Core Specification and exporting the interfaces it defines. COMMENT: I'm not sure whether element content whitespace should be optional or mandatory. This is useful for formatting markup when saving a persistent representation. It may not be necessary for ATs. This whitespace is only for formatting the source code. 4) For points 2 and 3 above, provide access to the infoset by implementing at least one API that is either * defined by a W3C Recommendation, or * a publicly documented API designed to enable interoperability with assistive technologies. If no such API is available, or if available APIs do not enable the user agent to satisfy the requirements, implement at least one publicly documented API to satisfy the requirements, and follow operating environment conventions for the use of input and output APIs. COMMENT: I believe that point four will end up being extracted into its own checkpoint, and will apply to additional checkpoints (like 6.3) in Guideline 6. [1] http://lists.w3.org/Archives/Public/w3c-wai-ua/2002JanMar/0120 [2] http://www.w3.org/TR/2001/CR-UAAG10-20010912/guidelines#gl-accessible-interface [3] http://lists.w3.org/Archives/Public/w3c-wai-ua/2002JanMar/0117 [4] http://www.w3.org/TR/2001/REC-xml-infoset-20011024 -- Ian Jacobs (ij@w3.org) http://www.w3.org/People/Jacobs Tel: +1 718 260-9447
Received on Thursday, 28 March 2002 17:46:00 UTC