[xhtml2] Content editable "edit" and datetime attributes (long)

Hi,
This is a QA Review comment for "XHTML 2.0"
http://www.w3.org/TR/2006/WD-xhtml2-20060726/
2006-07-26
8th WD

About http://www.w3.org/TR/2006/WD-xhtml2-20060726/mod-edit.html 

In section "17. XHTML Edit Attributes Module", edit attribute is being defined, which is a good move forward, as it seems to be a request from people out there.

There has been discussions about the Microsoft contenteditable in different fora. It would be worthwhile to check the definition of this feature against what has been discussed on the Web about it.

http://annevankesteren.nl/2005/07/contenteditable
http://annevankesteren.nl/2005/07/more-contenteditable
http://annevankesteren.nl/2006/05/contenteditable
http://glazman.org/weblog/dotclear/index.php?2006/05/29/1823-contenteditable
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/properties/contentEditable.asp
https://bugzilla.mozilla.org/show_bug.cgi?id=97284
http://www.whatwg.org/specs/web-apps/current-work/#contenteditable

Here is a benefit of defining classes of products. It would help to understand what are the requirements when developping a browser, an authoring tool, a parser, etc.

* Why not calling it contenteditable?
 Is it to avoid incompabilities with products where it is already implemented?
* the values of the attribute are under-defined or difficult to understand.

  - inserted: what is the purpose of inserted. Is there a use case scenario somewhere? In an authoring tool, a weblog HTML page the content is changed all the time. Many Web pages have dynamic content through XMLHttpRequest, Server Side Includes.
 Is it a change of the DOM? the CDATA section? the attributes? 
 When adding whitespace in a 'layout="irrelevant"' section, will it be a case for switching on inserted?

  - changed value is not testable. then not implementable. What is "considerably", "worth" in a computing context?
 "* changed: the content has changed considerably, 
 therefore making it not worth being marked up with 
 values of inserted and deleted
    "

  - deleted meaning is obscure.
 There is a need of a use case here. Let's say there is a document.
 
 <div class="top">
 <p class="boo"
    edit="inserted"
    datetime="2004-08-15T13:15:30Z">
   content added 2 years ago
 </p>
 <p>another text</p>
 </div>

 If an author deletes the markup "p.boo" ? 
  - on which element the edit="deleted" value is put? 
  - The parent element "div.top"? It would not make sense, because there is still another p into it.
  - keeping p.boo empty doesn't make sense as well.

   - moved: the content has been moved from some other part of the document.
      - What "moved" means? 
  - Is it testable?
      - CDATA has been moved, then how do you test it?
  - Where do we put the attribute? on an element where new content has been put? or on the old element which was containing the content?
  - Is is a cut/paste content without modifications? Then what about content moved dynamically?
  - reordering list of elements, is it moving content?
   
   - datetime
  - put a direct link from datetime to the appropriate section in XML Schema. (The specification reader has to click 3 times and relies on search in XML Schema document to find the format.)
  http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/datatypes.html#dateTime
  - Is datetime tied to the value of edit?
  - Does it change each time a modification is made on edit?
  - Does it change each time a modification is made in the document?
  - Is dateTime mandatory or optional?
  - Is it usable for other purposes than edit attribute?
    <div class="news">
   <div class="newsitem"
           datetime="2069-08-15T13:15:30Z">
      <h property="title">Love is the new consensus </h>
      <p>Sharing love has been decided to achieving 
      consensus in international organization.</p>
  </div>

Conclusion: Too many questions for a single module. It was difficult to write something in one mail, maybe some questions deserve individual emails. I recommend to get authoring tools developers (inside or outside W3C) to really secure this module which is important but for now seems not testable. Example

 - Adobe (Golive, Dreamweaver)
 - Barebones (bbedit)
 - Microsoft (Front Page) 
 - Macromates (textmate) 
 - Disruptive Innovations (NVU-Daniel Glazman)
 - plus many CMS tools.
 
 


-- 
Karl Dubost - http://www.w3.org/People/karl/
W3C Conformance Manager, QA Activity Lead
   QA Weblog - http://www.w3.org/QA/
      *** Be Strict To Be Cool ***

Received on Thursday, 17 August 2006 03:29:20 UTC