[html5] r2181 - [e] (0) Clean up all the notes at the bottom of the document; merge in WF2 notes [...]

whatwg at whatwg.org whatwg at whatwg.org
Mon Sep 15 02:59:54 PDT 2008


Author: ianh
Date: 2008-09-15 02:59:53 -0700 (Mon, 15 Sep 2008)
New Revision: 2181

Modified:
   index
   source
Log:
[e] (0) Clean up all the notes at the bottom of the document; merge in WF2 notes; mark up each note separately as an XXX item.

Modified: index
===================================================================
--- index	2008-09-15 05:37:20 UTC (rev 2180)
+++ index	2008-09-15 09:59:53 UTC (rev 2181)
@@ -3057,7 +3057,9 @@
    href="#refsCSSOM">[CSSOM]</a>
 
   <p class=big-issue>See <a
-   href="http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?content-type=text/html;%20charset=utf-8">http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?content-type=text/html;%20charset=utf-8</a>
+   href="http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?content-type=text/html;%20charset=utf-8">http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?content-type=text/html;%20charset=utf-8</a></p>
+  <!--XXX empty title attribute is equivalent to missing attribute for
+  purposes of alternate style sheet processing -->
 
   <h4 id=common><span class=secno>2.2.3 </span>Common conformance
    requirements for APIs exposed to JavaScript</h4>
@@ -18170,7 +18172,19 @@
    can't be shown (e.g. because it returned a 404 error). This allows
    multiple <code><a href="#object">object</a></code> elements to be nested
    inside each other, targeting multiple user agents with different
-   capabilities, with the user agent picking the first one it supports.
+   capabilities, with the user agent picking the first one it supports.</p>
+  <!-- XXX
+<hyatt> apparently your url can come from <param>
+<hyatt> not just the data attribute
+<hyatt> our code looks for params with "src", "movie", "code" and "url"
+<hyatt> and also tries to find the type on a param
+<Hixie> oh that's you trying to have hacky activex support
+<Hixie> opera does that too
+<hyatt> yeah we support activex versions of plugins that are common
+<hyatt> like flash and quicktime and realaudio
+<Hixie> that would be a step 1b. if no data attribute, then look for a <param> to get you a URL instead.
+<Hixie> and if you find one, carry on as if that was your data="".
+-->
 
   <p>Whenever the <code title=attr-object-name><a
    href="#name3">name</a></code> attribute is set, if the <code><a
@@ -26927,7 +26941,10 @@
    title=concept-input-type-image-coordinate>selected coordinate</dfn>
 
   <p class=big-issue>... <dfn id=selected0
-   title=concept-input-type-file-selected>selected file</dfn>
+   title=concept-input-type-file-selected>selected file</dfn></p>
+  <!--XXX
+rel="" on submit buttons?
+-->
 
   <h4 id=the-button><span class=secno>4.9.4 </span>The <dfn
    id=button><code>button</code></dfn> element</h4>
@@ -27038,7 +27055,11 @@
 };</pre>
   </dl>
 
-  <p class=big-issue>...
+  <p class=big-issue>...</p>
+  <!--XXX
+what does <label> _mean_? how about an empty one, one which contains
+more than one control, no controls?
+-->
 
   <h4 id=the-select><span class=secno>4.9.6 </span>The <dfn
    id=select><code>select</code></dfn> element</h4>
@@ -27518,7 +27539,8 @@
    attribute
 
   <p class=big-issue>... <dfn id=action1 title=concept-fs-action>action</dfn>
-   if present else form's else default
+   if present else form's else default</p>
+  <!-- XXX mozilla bug 297761 -->
 
   <p class=big-issue>... <dfn id=method title=attr-fs-method>method</dfn>
    content attribute
@@ -27672,6 +27694,7 @@
   </ol>
 
   <h4 id=form-submission><span class=secno>4.9.16 </span>Form submission</h4>
+  <!-- XXX http://lxr.mozilla.org/mozilla/source/content/html/content/src/nsHTMLFormElement.cpp -->
 
   <p>When a form <var title="">form</var> is <dfn id=submitted
    title=concept-form-submit>submitted</dfn> from an element <var
@@ -27693,6 +27716,8 @@
      title="">form</var> and examine the result: if the result is negative
      (the constraint validation concluded that there were invalid fields and
      probably informed the user of this) then abort these steps.
+   </li>
+   <!-- XXX define what happens if .submit() is called during this -->
 
    <li>
     <p>If the <var title="">submitter</var> is anything but a <code><a
@@ -27702,6 +27727,8 @@
      event's default action is prevented (i.e. if the event is canceled) then
      abort these steps. Otherwise, continue (effectively the default action
      is to perform the submission).
+   </li>
+   <!-- XXX define what happens if .submit() is called during this -->
 
    <li>
     <p>Let <var title="">controls</var> be a list of all the <a
@@ -34183,7 +34210,8 @@
 };</pre>
   <!-- XXX http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_window.asp
           http://www.mozilla.org/docs/dom/domref/dom_window_ref.html
-          http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindow.idl
+          http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindow.idl - scrollBy, etc
+          http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindowInternal.idl - DOM level 0
    -->
 
   <p>The <dfn id=window0 title=dom-window><code>window</code></dfn>, <dfn
@@ -38788,6 +38816,14 @@
    <li>
     <p class=big-issue>onbeforeunload, and if present set flag that we will
      kill document
+   </li>
+   <!--
+   when we define onbeforeunload, then we have to say that the JS
+   implementation of EventListener::handleEvent checks for that event,
+   treating the return value as the string to use for the unload warning
+   message if there is a return value, and calling preventDefault if
+   there isn't.
+   -->
 
    <li>
     <p class=big-issue>onunload, and if present set flag that we will kill
@@ -45204,6 +45240,7 @@
   <p>For non-HTTP protocols, UAs should act in equivalent ways.
 
   <h4 id=parsing2><span class=secno>7.2.3 </span>Parsing an event stream</h4>
+  <!-- XXX Wladimir Palant pointed out problems with HTTP chunking with server-sent-events -->
 
   <p>This event stream format's MIME type is <code>text/event-stream</code>.
 
@@ -57567,6 +57604,69 @@
       for datagrid
       ...
 
+
+
+
+HIT TESTING TRANSPARENCY
+
+Definition: IE considers a point of an element "transparent" if any
+one of the following are true:
+
+ 1. All of the following are true:
+    a: The computed value of 'background-image' is 'none', and
+    b: The computed value of 'background-color' is 'transparent', and
+    c: The point is over a pixel of an AlphaImageLoader filter image
+       that has an alpha value of 0 (fully transparent), or the
+       element does not have an AlphaImageLoader filter applied;
+
+ 2. The point is outside the element's CSS clip rectangle;
+
+ 3. The computed value of 'visibility' is 'hidden';
+
+ 4. The element is a transparent IFRAME (in IE, an IFRAME with the
+    custom attribute "allowtransparency");
+
+ 5. The element is an OBJECT with the custom attribute "wmode" set to 
+    "transparent" and the point in question is fully transparent.
+
+Given those definitions, when a mouse event occurs, IE finds the
+target element as follows:
+
+   A. Take the topmost node that is under the point where the pointer
+      was for the event. For CSS boxes, borders, padding areas and
+      content areas are considered part of the node, margins and
+      leading generated by the 'line-height' property are not.
+
+   B. If there is no node at that point, no event is fired. STOP.
+
+   C. If the node is a text node, then the event is fired at the text
+      node's nearest ancestor element node. STOP.
+
+   D. If the node is not an element, assign the node's nearest
+      ancestor element node to a variable X. Otherwise, assign the
+      element node itself to X.
+
+   E. If the element X is the BODY element or the HTML element and its
+      document is not the document of a transparent IFRAME, goto step
+      H. Similarly, if the element X is a TABLE element, or is an IMG
+      element, goto step H.
+
+   F. If the point where the pointer was is, per the above definition,
+      a point that on the element X is transparent, then ignore that
+      element and assign the element that is below that element in the
+      stacking order to X. If there is no element below X, or if the
+      point on X is not transparent and so the previous condition
+      doesn't apply, then leave X as is and go straight to step H.
+
+   G. Goto step E.
+
+   H. If the element X is now a BODY or TABLE element, but the element
+      assigned to X in step D was some other element, assign the
+      element originally assigned in step D back to X.
+
+   I. The event goes to X. STOP
+
+
   -->
 
   <p class=big-issue>This section will probably include details on how to
@@ -58013,1606 +58113,296 @@
 
   <p>Thanks also to the Microsoft blogging community for some ideas, to the
    attendees of the W3C Workshop on Web Applications and Compound Documents
-   for inspiration, and to the #mrt crew, the #mrt.no crew, the #whatwg crew,
-   and the cabal for their ideas and support.</p>
+   for inspiration, to the #mrt crew, the #mrt.no crew, and the #whatwg crew,
+   and to Pillar and Hedral for their ideas and support.</p>
   <!-- Hopefully Kam won't notice he's covered by these
   acknowledgements three times! -->
   <!--
- !  menus
+TODO (or delay):
+ XXX * simple color picker
+ XXX * in-window modal dialogs
+        - escape/enter handling
+        - dragging the window out of the tab
+ XXX * in-window non-modal palettes
+        - with a solution for the mobile space
+ XXX * a way of selecting rows, so that you can declaratively have buttons
+       outside the template that move a "selected row" around
+ XXX * calendar with list of days that have events (think: blog calendars)
+ XXX * find object at (x,y)
+       http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/elementfrompoint.asp
+ XXX * find mouse position
+ XXX * styling scrollbars:
+       ::scrollbars { ... }
+ XXX * automatic table of contents
+ XXX * a way to show icons for file types
+       e.g. http://www.gadgetopia.com/2004/05/04/FileIconTag.html
+ XXX * custom syntax highlighting in <textarea>, <pre> (ack Ryan Johnson)
+ XXX * methods/properties for managing scrolling, especially in TextArea,
+       such as .scrollTop and .scrollHeight in Mozilla
+ XXX * dom range apis with textarea/input edited value (ack martijnw)
+ XXX * datagrid: cells that are links (<a href=""></a>)
+ XXX * we should fix The Great Key Problem
+ XXX * library of resources:
+        var library = new ZipFile("data.zip");
+        library.onload = function() {
+          var sound1 = library.getAudio("sound1.wav"); // returns an Audio object
+          var image1 = library.getImage("image1.png"); // returns an HTMLImageElement
+          var doc1 = library.getXMLDocument("doc1.xml"); // returns a Document
+          var doc2 = library.getHTMLDocument("doc1.html"); // returns an HTMLDocument
+        }
+       or:
+        var library = new ResourceLoader("data.zip");
+        library.add("moredata.zip");
+        library.onload = function() { ... }
+        library.onloading = function() {
+          reportLoadProgress(library.progress); // 0.0 .. 1.0
+        }
+       or:
+        var library = new AudioZip("sounds.zip");
+        library.onload = function() {
+          var sound1 = library["sound1.wav"];
+          sound.play();
+        }
+ XXX * applying input masks to <input>, e.g. for entering data with
+       slashes and dashes (ack Greg Kilwein)
+ XXX * HTMLImageElement.click(x, y); or clickPoint, if click() can't be
+       done in IE; can this be emulated in IE by posting a synthetic moue
+       click event with those X and Y coords? (ack Csaba Gabor)
+ XXX * <menu> should get an icon, like <command>
+ XXX * <menu> should be hideable, like <command>
+ XXX * Need to say that NodeList's items are enumerable, so that
+         for (var x in myNodeList) { }
+       ...works. (ack Dethe Elza)
+ XXX * people want multiline tooltips with explicit line breaks
+ XXX * ability for a web app to save a file to the local disk:
+         var file = window.openFile(); // throws up UI
+         file.read();
+         var file = window.saveAsFile(); // throws up UI
+         file.write();
+       ...or something? (<input type=file>?)
+ XXX * http://lxr.mozilla.org/mozilla/source/dom/public/idl/html/nsIDOMNSHTMLDocument.idl
+ XXX * define how to handle APNGs that have out-of-order aDATs and other
+       errors in image formats, since pav and vlad refuse to define it for APNG:
+         <Hixie> vlad: you should define what the UA should do with out-of-order aDATs
+         <pav> its an error
+         <pav> pretty sure we say that somewhere
+         <Hixie> yes i know it's an error
+         <Hixie> but that doesn't say what the UA should do
+         <pav> error == image is invalid
+         <vlad> yep
+         <vlad> either broken image icon
+         <vlad> or display first frame (fall back to normal PNG)
+         <vlad> up to the UA
+         <Hixie> right
+         <Hixie> you should say which one
+         <pav> its up to the UA
+         <Hixie> why?
+         <vlad> "SHOULD display the first frame, but MAY display broken image icon if that's not convenient", in rfc parlance
+         <vlad> because it's not useful to specify that, IMO
+         <Hixie> up to the UA means one UA will implement something, it'll become a popular UA, then all the others will have to copy it.
+         <vlad> how a UA wants to handle image errors is up to the UA
+         <pav> we're designing an image format, not the html image tag
+         <pav> the html spec should say what to do with it
+ XXX * <title site="" publisher="" author="">Page Title</title> ?
+ XXX * <h1> styled according to section depth
+ XXX * [onclick] should make element focusable; enter should send onclick ?
+ XXX * support access Array element via () instead of [] (IEism)
+       https://bugzilla.mozilla.org/show_bug.cgi?id=289876
+ XXX * how to interpret an HTML5 document for syndication
+       http://hixie.ch/specs/hsf/hsf
+ XXX * should have some text talking about the fact that it's ok if your
+       page passes through a period of non-conformance while script is
+       running, but that in between scripts it should be compliant.
+ XXX * mousedown's default action is focus, so canceling mousedown stops
+       focus transference. http://www.mozilla.org/editor/midasdemo/
+ XXX * xref all the _ERR exceptions to DOM3CORE
+ XXX * <select><option><hr> support?
+ XXX * need explanation of when to use undo/redo, and when to use
+       back/forward
+ XXX * "alternate style sheet" should be "alternative style sheet"
+ XXX * screen object: top left width height pixelDepth colorDepth
+       availWidth availHeight availLeft availTop
+ XXX * need to become consistent about whether or not to quote keyword
+       ("<code title="">foo</code>" vs <code>foo</code>)
+ XXX * need to properly xref events throughout, mark up DOMActivate, etc
+ XXX * onclick="" only fires if it is a MouseEvent ?
+ XXX * <isindex> needs some prose in the form submission section
+ XXX * hsivonen makes the following suggestions:
+       > To make document conformance a more useful concept for the purpose of catching
+       > author errors, I suggest that the following attributes be made required:
+       > href and rel on link
+       > href on base
+       > name and content on meta (other than the encoding decl)
+       > src on img
+       > code, height and width on applet
+       > name and value on param
+ XXX * command="" feature
+ XXX * DOM0 quirks that Mozilla knows about:
+       http://lxr.mozilla.org/seamonkey/source/dom/src/base/nsDOMClassInfo.cpp
+ XXX * make a consistent decision of which of the following formats to use:
+         U+1234 FOO BAR character ("foo")
+         U+1234 FOO BAR character ('foo')
+         U+1234 FOO BAR character (foo)
+         U+1234 FOO BAR ("foo") character
+         U+1234 FOO BAR ('foo') character
+         U+1234 FOO BAR (foo) character
+         U+1234 FOO BAR character ("<code title="">foo</code>")
+         U+1234 FOO BAR character ('<code title="">foo</code>')
+         U+1234 FOO BAR character (<code title="">foo</code>)
+         U+1234 FOO BAR ("<code title="">foo</code>") character
+         U+1234 FOO BAR ('<code title="">foo</code>') character
+         U+1234 FOO BAR (<code title="">foo</code>) character
+       ...and make these match:
+         0x12 (ASCII FOO)
+         0x12 (ASCII "foo")
+         0x12 (ASCII 'foo')
+         0x12 ("foo")
+         0x12 ('foo')
+         0x12 (ASCII "<code title="">foo</code>")
+         0x12 (ASCII '<code title="">foo</code>')
+         0x12 ("<code title="">foo</code>")
+         0x12 ('<code title="">foo</code>')
+ XXX * check case of hex characters in the ASCII cases.
+ XXX * <input placeholder=""> as seen in Safari. See:
+       http://www.beyondstandards.com/archives/input-placeholders/ -Asa
+ XXX * trim function in JS for strings to remove spaces
+ XXX * date checking functions in JS (.isValidDate?)
+ XXX * a fairly common situation for web authors is to have two lists, where
+       the contents of the second depends on the value of the first. Is there
+       any way we could extend the current model to include this functionality?
+       (e.g. bugzilla product/component ui)
+ XXX * quick-searchable select
+ XXX * fallback that will only appear in non-webforms clients (e.g. for
+       formats for date fields)
+ XXX * include/exclude selectors (two multi-select columns with arrows to
+       move selected items) and that sort of thing.
+       http://slashdot.org/comments.pl?sid=110240&cid=9357022
+ XXX * Oh, and forms need a standardized Help widget/icon. I know I can
+       turn my cursor into a question mark, but I'm looking for something
+       simple and pervasive. Maybe you can wrap fields in a help tag, just
+       as you do for fieldsets. And in that help tag, attributes are
+       available that allow for a nice, formatted, clean, full help text
+       popup/area/thing.
+       http://slashdot.org/comments.pl?sid=110240&cid=9359006
+ XXX * Validating only part of a form. - Anja Lehmann
+ XXX * Reminder to add a way to expose access keys in buttons, i.e.
+       Sub&mit where & signifies the m is the access key to use. Possibly
+       automatic? <input accesskey="m" value="Submit"> browser would be
+       smart enough to underline the first instance of the access key if
+       it exists (case insensitive)? - kerz
+       [or deprecate the lot (->web apps)]
+ XXX * option.text should do the same as option.textContent
+ XXX * select.options.add(), .remove() should exist (and forward to the select)
+ XXX * select.add()'s second argument should also be allowed to be an integer (negative means append)
+       + see: http://bugzilla.mozilla.org/show_bug.cgi?id=240304
+              http://junkyard.damowmow.com/138
+ XXX * need an attribute that says "the children of this element are in
+       their own tabbing universe, tabindex should be relative to each
+       other, not to the document"
+       -> web apps?
+ XXX * make optgroups selectable if they have a value.
+ XXX * make select widgets have multiple columns
+       or ->web apps with list view
+ XXX * required as a group (one of the following must be available):
+       + i propose something like the following:
+           <input type="text" group="contact" name="voicephone"> Voice phone
+           <input type="text" group="contact" name="fax"> Fax
+           <input type="text" group="contact" name="mobile"> Mobile phone
+           <input type="text" group="contact" name="email"> Email
+         if the user fills out none of the form fields in the "contact"
+         group, an error message is shown and the form is not submitted.
+         - Peter-Paul Koch
+ XXX * use the sample widgets:
+          <li><img alt="A text field with editable sections for each
+          value, with a button to pop up a dialog showing a calendar or
+          clock." src="sample-datetime-ui-2"></li>
+          <li><img alt="A calendar grid with a clock in the upper right
+          hand corner." src="sample-datetime-ui-3"></li>
+ XXX * formatting of number fields, text fields, etc, so that when the
+       field is not focused, the value is displayed differently. Seems
+       like this would also be useful e.g. for <output> or something so
+       you can display localised dates, etc.
+ XXX * update text/html RFC
+ XXX * type="emails"
+ XXX * password and confirm password: can we have a way to do client-side
+       validation of this?
+ XXX * <input type="search">
+       http://weblogs.mozillazine.org/hyatt/archives/2004_07.html#005890
+ XXX * would be nice to say how to handle duplicate IDs once and for all
+       instead of spreading it all over the spec.
+ XXX * being able to select date range (from day x to day y)
+ XXX * ways of visualizing a linefeed in a <textarea> so it looks different
+       from wrapping text
+ XXX * all login systems have
+         1. enter username and password
+         2. create new account
+         3. lost password
+       some way of integrating this into one system, since it's so common
+ XXX * way of identifying different sorts of mailadresses
+         a) mailing-list
+         b) person
+         c) department in a company ("support", "marketing" and such)
+         d) general mail (like "info", "mail", "contact" and such)
+         e) other sorts of groupings
+       (or ->web apps; this is talking about in mailto: links, I think)
+ XXX * hotswapping login identities like in windows xp
+         you are logged in on operamail.com, and you want to check the mail
+         of another user. somehow, combined with the wand or whatever,
+         the browser will remember the login page, and it can re-submit it
+         without having to load the initial page (saving time)
+ XXX * provide different measuring systems, like having the html indicate
+       fluid in both fluid ounces and liters, and the browser can display
+       one or the other based on regional settings in the browser or ui,
+       display conversions in a tooltip, or let the user decide which
+       format to display.
+ XXX * indicate "x days ago" or "y days into the future" rather than date
+ XXX * input control for anniversaries
+ XXX * some kind of format element that gives a region-specific format on
+       a WF2 browser:
+          <label for="dday">
+             Date: <timeformat type="date">(format: dd-mm-yyyy)</timeformat>
+          </label>
+          <input type="date" id="dday">
+       In a legacy browser, the label would be "Date: (format:
+       dd-mm-yyyy)". On a WF2 browser, however, you might see "Date:
+       (format: yyyy-mm-dd)" if your region uses the "yyyy-mm-dd" format.
+       This can be useful for international users who may be using a
+       browser in an Internet cafe or something and is not be used to the
+       native formats
+ XXX * only submit fields that have changed, or a way to include in the
+       submission a list of which form controls were changed from their
+       default value
+ XXX * have a way of marking the first option of a <select> as the default
+       but have it not satisfy a new required="" attribute on <select> so
+       that you can have selects that require a valid value.
+ XXX * Dave Raggett inadvertently suggested there should be a way to submit
+       canvas elements.
+ XXX * type="time" value="now"
+ XXX * should "mixed fractional number" be used instead of "fractional"?
+ XXX * terse BNF to define the allowed values of the various attributes
+       instead of, or in addition to, the prose. [or not, it wouldn't be terse]
+ XXX * add something to type="number" to support basic currency and unit
+       formatting of input
+ XXX * <fieldset enabled-if-checked="myCheckboxOrRadioButton">
+       ...to allow sections to only be enabled if a radio button makes it
+       relevant, for instance.
+ XXX * Yan Morin proposed a multi-column dropdown <select> or <datalist>:
+         _________________
+        |_New_York______|V|_________________  <- input  with a table link and a down arrow
+        |_City__________|_State_|_Country_|_| <- header of the table
+        | Montreal      |  QC   | Canada  |A| <- top arrow of the scroll
+        |>New York     <|  NY   | US      | | <- selected row
+        | Washington    |  DC   | US      |X| <- cursor scroll
+        | San Francisco |  CA   | US      | |
+        |_Toronto_______|__ON___|_Canada__|V| <- bottom arrow of the scroll
 
-<hyatt> the ability to get the current focused window in a window hierarchy
-
-wizards
-tabbed interface
-
-Application object? http://longhorn.msdn.microsoft.com/lhsdk/ref/ns/msavalon.windows/c/application/application.aspx
-
-<input type="text" menu="foo" icon="g.png"/> <menu id="foo"> <menuitem icon="g.png" onclick="engine('yahoo')">Yahoo</menuitem> ... </menu>
-
-> One more aspect I want you think about - for "user interface
-> systems" in general: The windowing system.
->
-> Different kinds of windows ("document", "browser
-> (file-system/network or otherwise)", "palette", "application modal
-> dialog", "system modal dialog"), the rules for layering them
-> (appropriately flexible to allow different implementations, e.g. Mac
-> OS X vs. X-Windows), and simplifications for handheld devices (which
-> are sometimes single window devices anyway, but sometimes they are
-> one "normal" window plus sometimes one "dialog" window on top.
-
-window.open for dialogs
-
-
-Thus, they lack things like proper windows, tree 
-widgets, menu bars, rich text areas and so forth. This is what I would 
-like XUL to solve. - Paul Prescod
-
-
-
-
-Olav:
-> <product> to indicate something you can buy, like a cd on amazon
-> or a biker jacket at harleydavidson.com
-
-
-Drop downs often have a title for when there is no selection.
-
-http://www.w3.org/mid/BAY1-F150PNOkJvX41K000418e1@hotmail.com
-
-http://crew.tweakers.net/crisp/newlayout/index.html
-http://crew.tweakers.net/crisp/newlayout/list_topics.html
-http://crew.tweakers.net/crisp/newlayout/list_messages.html
-http://crew.tweakers.net/crisp/newlayout/list_messages_mod.html
-
-http://mail.mozilla.org/private/gui-toolkit/2004-April/000041.html
-
-> > > A standard for rich edit widgets would also be of interest to me.
-> >
-> > As in WYSIWIG editing? Of the bold/italic/underline/larger/smaller kind?
-> > 
-> > Or do you mean as in the bare bones to be able to build an editor on top
-> > of? As in something that basically just gives you a cursor and the ability
-> > to tell where the selection is and some way to hook into the Undo
-> > functionality?
-> 
-> I have use cases for both...I have a more desperate business need for
-> the latter (and have build apps using the gross APIs out there today)
-> but there are a lot of circumstances where an editor that already has
-> all standard HTML editing behavior would be fine.
->
-- Paul Prescod
-
- * a way of selecting rows, so that you can declaratively have buttons
-   outside the template that move a "selected row" around. => web apps
-
-
-Calendar with list of days that have events (think: blog calendars)
-
-Find object at (x,y)
-Find mouse position
-
-Styling scrollbars:
-
-   ::scrollbars { ... }
-
-
-table of contents?
-
-
-http://www.gadgetopia.com/2004/05/04/FileIconTag.html
-
-
-on going back
-on going forward
-on came from back
-on came from forward
-better state serialisation for going back/forward
-
-
-some sort of markup to tell google _not_ to index a particular part of the site
-
-
-http://www.cs.tut.fi/~jkorpela/html/em.html
-
-<htmlarea>, <xmlarea>...
-
-> 3) Extensible syntax highlighting (coloring). I am aware that a ton of
-> code editors don't even do this well. The ability to load a syntax
-> definition file and have it color a block of code would do wonders for
-> making the web a more friendly place to script.
- - Ryan Johnson
-
-toolbars, status bars. - Didier PH Martin
-
-   * methods/properties for scrolling managing, especially in
-   TextArea, such as .scrollTop and .scrollHeight in Mozilla and -
-
-
-Robert Bateman:
-
-   I've looked thru as many of the examples from around the web as I can find and
-   don't see an obvious way to do date calculations.
-
-   What I'm trying to do is populate an xsd:date field with now() plus 5 days as
-   it's default value.  The field in question is a proposed "due date" for a
-   work order.
-
-   I've seen that I can get a "difference" between two dates, but no
-   calculations.
-
-
-Wladimir Palant pointed out problems with chunking with server-sent-events
-
-
-
-> 2.  Some method of integration to allow Web apps to respond
->      to the browser's Cut, Copy, Paste, and Select All menu
->      items and keyboard equivalents. These work automatically
->      for text fields in any Web application; it would be
->      great if apps could make them work for stocks, address
->      book cards, message attachments, transactions, photos,
->      and so on too.
->
->      I'd add Undo and Redo to that list, but unfortunately
->      IE6 doesn't have Undo and Redo menu items.
- - mpt
-
-
-
->> maybe except for the server sent events and the clipboard
->> api (but even in those cases it might be possible).
->
-> Clipboard API I don't really want to see, given the problems IE's
-> implementation of such brought up. A better standardised drag-and-drop
-> interface would be great though, as doing it with mouse events and IE's
-> proprietary events is annoying-to-impossible to get right all the time.
->
-> I really like the idea of server-side events, though I would prefer to
-> have them set up by a scripting call rather than an HTML element.
- - Andrew Clover
-
-
-    <html application="application">
-
-...would, instead of showing the Web page itself, the first time, show
-(inline in the browser):
-
-  :::: Security Warning :::::::::::::::::::::::::::::::::::::
-  ::                                                       ::
-  ::  The Web page at this domain:                         ::
-  ::                                                       ':
-  ::     paypcl.com                                        
-  ::                                                       
-  ::  ...wishes to launch an application in a separate     
-  ::  window. Do you trust this domain?                    
-  ::                                                       
-  ::  [x] Remember this decision.                          
-  ::                                                       
-  ::      (( Trust paypcl.com ))  ( Display as Web page )  
-  ::                                                      
-  :::::.
-- (spurred on by Jose Dinuncio)
-
-
-  :::: Security Warning :::::::::::::::::::::::::::::::::::::
-  ::                                                       ::
-  ::  This Web page wishes to launch an application in a   ::
-  ::  separate window. Do you trust this domain?           ::
-  ::                                                       ::
-  ::     paypcl.com                                         '
-  ::                                                       
-  ::             ( Trust this site for now )
-  ::
-  ::              ( Always trust this site )
-  ::
-  ::              (( Display as Web page ))
-  ::                                                      
-  :::::.
-
-
-breadcrumb navigation markup
-other markup:
-   http://www.stuffandnonsense.co.uk/archives/whats_in_a_name_pt2.html
-
-
-common icons: http://www.intersmash.com/300images/
-
-
-http://www.gadgetopia.com/2004/06/18/DoYouWantToSaveYourChanges.html#Comments
-
-http://www.mojavelinux.com/cooker/demos/domTT/index.html
-
-http://www.mozilla.org/projects/ui/accessibility/dynamic-accessibility.html
-
-http://blog.colorstudy.com/ianb/weblog/2004/06/23.html
-http://daringfireball.net/2004/06/location_field
-
-listview/gridview API
-http://www.activewidgets.com/grid/
-
-
-> I would rather have it that changing the dom attribute 'value' or typing
-> in the textarea, would also change the contents of the textnode in the
-> textarea.
->
-> In that way the dom level 2 traversal and range specification would not
-> be useless for textarea's.
-> 
-> The same goes for input text controls and probably also for other form
-> controls.
- - martijnw
-
-
-
-1. point to an xml instance and cause the page to be filled in
-2. serialise the site to a version of that xml instance
-
-<menu>
- <li state="bar"/>
-</menu>
-<button state="bar"/>
-<state id="bar" label="" disabled="" value=""/>
-
-<input state="foo"/>
-<input state="foo"/>
-<input state="foo 2"/>
-<input state="foo 2"/>
-<state id="foo" model="x" ref="cat:orderLine[$v1]/cat:foo"/>
-
-<instance src=""/>
-
-<instance id="x">
-
-<Order xmlns="urn:oasis:names:tc:ubl:Order:1.0:0.70" xmlns:cat="urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70">
-  <cat:ID/>
-  <cat:IssueDate/>
-  <cat:LineExtensionTotalAmount currencyID="USD"/>
-  <cat:BuyerParty>
-    <cat:ID/>
-    <cat:PartyName>
-      <cat:Name/>
-    </cat:PartyName>
-    <cat:Address>
-      <cat:ID/>
-      <cat:Street/>
-      <cat:CityName/>
-      <cat:PostalZone/>
-      <cat:CountrySub-Entity/>
-    </cat:Address>
-    <cat:BuyerContact>
-      <cat:ID/>
-      <cat:Name/>
-    </cat:BuyerContact>
-  </cat:BuyerParty>
-  <cat:SellerParty>
-    <cat:ID/>
-    <cat:PartyName>
-      <cat:Name/>
-    </cat:PartyName>
-    <cat:Address>
-      <cat:ID/>
-      <cat:Street/>
-      <cat:CityName/>
-      <cat:CountrySub-Entity/>
-    </cat:Address>
-  </cat:SellerParty>
-  <cat:DeliveryTerms>
-    <cat:ID/>
-    <cat:SpecialTerms/>
-  </cat:DeliveryTerms>
-  <cat:OrderLine>
-    <cat:BuyersID/>
-    <cat:SellersID/>
-    <cat:LineExtensionAmount currencyID=""/>
-    <cat:Quantity unitCode="">1</cat:Quantity>
-    <cat:Item>
-      <cat:ID/>
-      <cat:Description>Enter description here</cat:Description>
-      <cat:SellersItemIdentification>
-        <cat:ID>Enter part number here</cat:ID>
-      </cat:SellersItemIdentification>
-      <cat:BasePrice>
-        <cat:PriceAmount currencyID="">0.00</cat:PriceAmount>
-      </cat:BasePrice>
-    </cat:Item>
-  </cat:OrderLine>
-</Order> 
-
-</instance>
-
-
-
-
-  <h2>Tree and List Widgets</h2>
-   click item to go url
-   doube click to submit form with value
-   sort list by any column
-   specify column headers, column sort types
-   specify data inline, or out of band
-   data can be linear or a one way tree
-   rows can have an icon associated with them
-   rows can have overlays associated with them
-
- progress meter
-
-    http://www.gazingus.org/html/menuDropdown.html
-
-
-
-Disclosure triangles
-
-
-I think UAs should automatically highlight the accesskey (or add it in    
-brackets if it isn't already in the string). I am thinking of writing some
-text - optional, of course, since this wouldn't apply to all UAs or all  
-platforms - that specifies this.
-
-I also think that there should be an accesskey value which is basically   
-"auto", and which picks a non-clashing access key based on the element    
-content.
-
-
-
-| adding HTTP authentication capabilities to HTML allow sites to:
-|   - remove a site's authentication state from the browser when
-|     activated (i.e., a "log out" interface)
-|   - add user data to a site's authentication state in the browser
-|     (i.e., "log on" interfaces)
-|   - display the user's current authentication state
-| 
-| There are a few good reasons to do this. Many sites use cookies to
-| authenticate users, because HTTP authentication doesn't have any
-| mechanism to allow logging out (a key requirement of financial
-| institutions and other sensitive applications), and because the UI for
-| HTTP authentication can't be controlled, and doesn't offer an
-| "anyonymous" / "not logged in" view.
-| 
-| By accommodating HTTP authentication in Web forms, it will be possible
-| to have styled, custom "log on" interfaces as part of pages, as well
-| as "log out" facilities, while still retaining the benefits of HTTP
-| authentication.
-| 
-| Specifically, HTTP authentication is more secure than cookies (when
-| Digest auth is used), and is more amenable to automated processes
-| (agents, spiders, etc.) as well as alternate browsing devices (screen
-| readers, etc.).
-
-
-http://jogin.com/weblog/archives/2004/07/19/hierarchy
-
-
-Yeah, <header> and <footer> or similar elements are almost certainly going
-to be defined at some point, along with <content> (for the main body of
-the page), <entry> or <post> or <article> to refer to a unit of text
-bigger than a section but smaller than a page, <aside> to mean a
-side bar, <note> to mean a note... and so forth. Suggestions welcome.     
-We'll probably keep it to a minimum though. The idea is just to relieve   
-the most common pseudo-semantic uses of <div>.
-
-
-http://lxr.mozilla.org/seamonkey/source/dom/public/idl/base/nsIDOMWindow.idl
-scrollBy, etc
-http://lxr.mozilla.org/seamonkey/source/dom/public/idl/base/nsIDOMWindowInternal.idl
-DOM level 0
-
-
-DH: I was arguing that you should be able to get the CSS info for
-document fragments if you had an owner document with CSS in it.
-
-
-
-So maybe:
-
-   var library = new ZipFile("data.zip");
-   library.onload = function() {
-      var sound1 = library.getAudio("sound1.wav"); // returns an Audio object
-      var image1 = library.getImage("image1.png"); // returns an HTMLImageElement
-      var doc1 = library.getXMLDocument("doc1.xml"); // returns a Document
-      var doc2 = library.getHTMLDocument("doc1.html"); // returns an HTMLDocument
-   }
-
-Also maybe supporting more than one file at a time:
-
-   var library = new ResourceLoader("data.zip");
-   library.add("moredata.zip");
-   library.onload = function() { ... }
-   library.onloading = function() {
-      reportLoadProgress(library.progress); // 0.0 .. 1.0
-   }
-
-...although I'm not sure how we would then deal with filename clashes.
-
-   var library = new AudioZip("sounds.zip");
-   library.onload = function() {
-      var sound1 = library["sound1.wav"];
-      sound.play();
-   }
-
-
-If we define onbeforeunload, then we have to say that the JS
-implementation of EventListener::handleEvent checks for that event,
-treating the return value as the string to use for the unload warning
-message if there is a return value, and calling preventDefault if
-there isn't.
-
-
-> > > Schematic editors, layout editors, interactive maps, data 
-> > > visualization for network flows, etc.
-> Searching the web for the above keywords should find you a lot more.
- - Denis Bohm
-
-
-
-Jens Meiert:
-- For non-native English speakers, it's sometimes difficult to understand
-the difference between <cite /> and <quote />, since citations often seem to
-be quoted, too (this is a presentational aspect, I know).
-- Is it right that the <dfn /> element [1] /must/ be used only in the
-context of the definition of the enclosed term (as the example suggests)?
-(If so, wouldn't it be useful to add this note, too?)
-
-
-http://secunia.com/advisories/9711/
-In particular number 7. - Chris Hofmann
-
-
-> [1] http://www.stopdesign.com/log/2004/08/25/microsoft-advances.html
-> [2] http://www.stopdesign.com/articles/throwing_tables/
-
-
-
-
-> http://channel9.msdn.com/wiki/default.aspx/Channel9.InternetExplorerFeatureRequests
->    Alternate way of caching content
->    Avalon Integration
->    getData/setData improvement (clipboardData)
->    Input type=file improvements
->    HTML editing: Editing Tables
->    Input type=file improvements
->    .NET framework
->    
-> http://channel9.msdn.com/wiki/default.aspx/Channel9.InternetExplorerOutrageous
->     Some decent controls
- - lachlan.hunt at lachy.id.au
-
-
-http://lists.w3.org/Archives/Member/w3c-html-wg/2004JulSep/att-0135/role072704a.html
-
-
-> I've encountered two situations where setting or retrieving the caret
-> position would be useful.  The first is a situation where I'd like to
-> apply an input mask to a text box.  For example, I'd like the ability to
-> create a text box where the date delimiters (dashes or slashes) appear  
-> automatically in a text box upon entering the field, and when the user  
-> types in the field, it fills into the appropriate spaces in the input    
-> box and sets the text selection to the next appropriate position, all    
-> while allowing the user to reposition the cursor within the text box     
-> with a keyboard or mouse without being able to edit or delete the
-> delimiters (dashes or slashes).  This would be very similar to input
-> mask features in certain native apps that I've used.
- - Greg Kilwein
-
-> The second situation is an application that would like to highlight text  
-> in a text box or textarea for the purposes of a spell check, thesaurus, 
-> or search-and-replace operation.
- - Greg Kilwein
-
-
-
-
-HTMLImageElement.click(x, y); (for Csaba Gabor)
-or clickPoint, if click() can't be done in IE
-can this be emulated in IE by posting a synthetic moue click event
-with those X and Y coords?
-
-
-<menulabel>, or rather menus in general, need an icon attribute and a
-hide attribute, like the <command> element.
-
-
-What about safe clipboard access.
-As discussed before by others as well:
-The user initiates a paste action as recognized by the UISystem the user is working in.
-E.g pressing Ctrl-V or selecting paste from a context menu.
-An event is fired and a Listener can now access the pasted data as part of the event object.
-The same for cut and copy. The Listner can set data as part of the event object.
-This is safe and will not allow any script to mess with the clipboard without the user specifically asking for it
-by initiating a cut/copy/paste action.
- -  Jan-Klaas Kollhof
-
-
-Need to say that NodeList's items are enumerable, so that for (var x in myNodeList) { } works.
- thank Dethe Elza
-
-rel="" on submit buttons?
-
-what does <label> _mean_? how about an empty one, one which contains
-more than one control, no controls?
-
-
-
-need conformance section for editors, which says stuff like "can't be
-conforming if editor has an "italics" button"
-
-people want multiline tooltips with explicit line breaks
-
-
-
-attributes of type ID that have no value beyond the empty string do
-not give the element an ID of "".
-
-
-ability for a web app to save a file to the local disk:
-   var file = window.openFile(); // throws up UI
-   file.read();
-   var file = window.saveAsFile(); // throws up UI
-   file.write();
-...or something? Or use data: URLs and right-click-to-save?
-
-http://lxr.mozilla.org/mozilla/source/dom/public/idl/html/nsIDOMNSHTMLDocument.idl
-
-
-  <p><em>This section is non-normative.</em></p>
-
-
-how to handle 404s and 500s and other non-OK responses when it comes
-to <script>, <link>, <style>, etc.
-
-
-normative classes:
-  -example
-  -note
-  -warning
-  -issue
-  hCard, hCalendar
-  wiki based registration, first come first served
-   * class:
-   * applies to elements:
-   * processing model:
-   * status:
-
-
-<Hixie> vlad: you should define what the UA should do with out-of-order aDATs
-<pav> its an error
-<pav> pretty sure we say that somewhere
-<Hixie> yes i know it's an error
-<Hixie> but that doesn't say what the UA should do
-<pav> error == image is invalid
-<vlad> yep
-<vlad> either broken image icon
-<vlad> or display first frame (fall back to normal PNG)
-<vlad> up to the UA
-<Hixie> right
-<Hixie> you should say which one
-<pav> its up to the UA
-<Hixie> why?
-<vlad> "SHOULD display the first frame, but MAY display broken image icon if that's not convenient", in rfc parlance
-<vlad> because it's not useful to specify that, IMO
-<Hixie> up to the UA means one UA will implement something, it'll become a popular UA, then all the others will have to copy it.
-<vlad> how a UA wants to handle image errors is up to the UA
-<pav> we're designing an image format, not the html image tag
-<pav> the html spec should say what to do with it
-
-
-<title> is for out of context headers
-<h1> is for in-context headers
-
-The parsing rules of HTML
-
-media="" is case-insensitive
-
-empty title attribute is equivalent to missing attribute for purposes
-of alternate style sheet processing
-
-
-<p>s that contain <ul><ol><table><dl><blockquote>? (did we get all those?)
-
-
-
-> I'd like search engines to be able to show me the title of a page in the
-> same consistent position in a search result, and the name of the site
-> (if available) in the same consistent position in a search result, and
-> the name of the author (if available) in the same consistent position in
-> a search result.
->  
-> For that to happen, it would help slightly if the HTML specification
-> stopped SHOULD-ing the current <title> behavior. It would help more if
-> the HTML specification contained clear, straightforward markup for
-> author and site name (and encouraged UAs to present this information   
-> when the document is taken out of context).
-
-   <title site="" publisher="" author="">Page Title</title>
-   <title>Page Title - <site></site> - <author></author> (<publisher></publisher>)</title>
-
-   <title>Page Title</title>
-   <link rel="top" title="" href="">
-   <link rel="publisher" title="" href="">
-   <link rel="author" title="" href="">
-
-
- h1 is styled appropriately, h2 to h6 are styled according to legacy.
-
-
-[onclick] should make element focusable; enter should send onclick
-
-define implied <html>, <head>, <body>, <p>, </p>, etc.
-
-http://www.aujsproduction.com/samples/wishlist/revampedselector.asp
-
-
-need a summary of all the content models and how they interact:
-   a | interactive strictly inline-level element   | where inline-level content is expected | strictly inline-level content  | interactive elements must not be nested
-   i | strictly inline-level element               | where inline-level content is expected | strictly inline-level content  |
-  em | strictly inline-level element               | where inline-level content is expected | inline-level content           |
-   p | block-level element, structured inline-     | where block-level content is expected, | inline-level content           | must not be nested
-     | level element                               | where inline-level content is expected |                                |
-...etc
-
-
-need a summary of the differences between the HTML and XML serialisations.
-
-
-
-Google suggest: oninput -> submit a form whose only contents is the
-drop down list which you refresh (<datalist>).
-
-Inline editing of <select multiple=""> boxes
-
-image buttons shouldn't be used unless you want the coordinate
-
-need for the spec to say something about sending proprietary data over
-the network, e.j. in XMLHttpRequest and other data streams. Is it ok,
-if the page is doing the translation?
-
-built-in spell-checking in <input type="text">, <textarea>
-
-author-driven highlighting of individual words in text fields
-
-
-support access Array element via () instead of [] (IEism)
-- https://bugzilla.mozilla.org/show_bug.cgi?id=289876
-
-
-atom can do this:
-       <author>
-         <name>Mark Pilgrim</name>
-         <uri>http://example.org/</uri>
-         <email>f8dy at example.com</email>
-       </author>
-       <contributor>
-         <name>Sam Ruby</name>
-         <uri>http://intertwingly.net/blog/</uri>
-       </contributor>
-how do we do this in HTML5? (what's the use case?)
-
-how to interpret an HTML5 document for syndication
-http://hixie.ch/specs/hsf/hsf
-
-
-
-section "rendering HTML" has to cope with:
- <q> element's quotes
- <section> <h1>
- default margins and paddings for <ul>, <form>, etc.
-
-  <h4>The <code>q</code> element</h4>
-  <p class="big-issue">Need to deal with the quotemark problem without
-  adding verbose markup, breaking existing documents, or adding
-  redundant elements.</p>
-
-
-
-<Hixie> here's how <object> works (assuming you don't support ActiveX)
-<Hixie> 1. look at the data="" attribute. If it's not there, go to the step i'll label "bail" below.
-<Hixie> 2. fetch the file indicated by the data="" attribute.
-<Hixie> 3. while waiting for the MIME type, treat <object> as a replaced element of transparent nothingness, intrinsic size zero.
-<hyatt> (so we would honor width/height)
-<hyatt> (because it's replaced)
-<Hixie> (yes)
-<Hixie> 4. if the MIME type is a long time coming (e.g. DNS is being slow) then jump to the "bail" step below until you have the MIME type, then jump back to step 5.
-<Hixie> 5. Once you have the MIME type, examine it. If it's a plugin type, jump to the plugin step below. If it's an image, jump to the image step below. If it's a document type (HTML, XML, etc) jump to the iframe step below. Otherwise, you don't recognise it, and jump to the "bail" step.
-<Hixie> plugin step: collect all the <param> element children in the <object>. instantiate the plugin and pass the params to it.
-<Hixie> image step: render the <object> as if it was an <img>
-<Hixie> document step: render the <object> as if it was an <iframe>
-<Hixie> bail step: render the <object> as if it was a <span>
- - if there is no authoratative MIME type, then use the type="" attribute.
- - if type="" is something you know you don't support, you MAY not download it
- - if type="" is dynamically changed, do nothing
- - if data="" is dynamically changed, redo loop
-
-<hyatt> apparently your url can come from <param>
-<hyatt> not just the data attribute
-<hyatt> our code looks for params with "src", "movie", "code" and "url"
-<hyatt> and also tries to find the type on a param
-<Hixie> oh that's you trying to have hacky activex support
-<Hixie> opera does that too
-<hyatt> yeah we support activex versions of plugins that are common
-<hyatt> like flash and quicktime and realaudio
-<Hixie> that would be a step 1b. if no data attribute, then look for a <param> to get you a URL instead.
-<Hixie> and if you find one, carry on as if that was your data="".
-
-
-should have some text talking about the fact that it's ok if your page
-passes through a period of non-conformance while script is running,
-but that in between scripts it should be compliant.
-
-
-how to handle 205 reset content responses and other HTTP codes in
-response to link clicks, link clicks with target="" attributes,
-window.open(), the user typing a URL in the URL bar, etc.
-
-XXX Native code for fast sorting of many data?
-
-http://www.microsoft.com/mind/1097/directanim.asp
-
-
-events: onmousewheel
-<hyatt> with a wheelDelta field on the WheelEvent (whcih comes off UIEvent)
-<hyatt> but in OS X you can wheel horizontally 
-<hyatt> so we actually added wheelX, wheelY, and wheelZ
-<hyatt> with wheelDelta just mapping to wheelY for WinIE compat
-<Hixie_> oh i don't mind wheelZ, maybe we can even say ctrl+wheel should map to it on some platforms (windows)
-<hyatt> but if you hold down Shift+mouse wheel in mac apps on os x you'll wheel horizontally
-wheelDelta is multiples of 120
-http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/wheeldelta.asp
-
-events:
-http://damowmow.com/temp/safari/WebCore-315/khtml/ecma/kjs_events.cpp
-
-Need to resolve whether <a rel=""> should affect an out-of-band UI (or
-whether it should just be a may), see
-https://bugs.opera.com/show_bug.cgi?id=169791
-
-
-should have appendix listing what was already implemented
-- http://www.xml.com/pub/a/2005/04/27/deviant.html
-
-| Hixie and Steven shared an item: in both XHTML2 and HTML5, it will
-| be possible to have a list child of a paragraph. That's good, from a
-| structural point of view. But that's bad, from a user's point of
-| view. Imagine you have a paragraph, with red background color. And
-| you have an unordered list in your clipboard. You place the caret at
-| the end of the paragraph and paste your list. Where does it end up?
-| In the paragraph or after it? Red background or not? I really fear
-| that, once again, document model authors are completely neglecting
-| the authoring side.
- - http://www.glazman.org/weblog/dotclear/index.php?2005/05/27/1055-adam-2
-
-need to define how to process MIME types in <style> and <script> and so forth.
-
-http://www.paulgraham.com/popular.html
-
-
-
-
-"you have mail": bubble notification; flash taskbar button, 
-=> how do you stop advertisers?
-
-
-
-events should bubble from documents to Window
-
-say something about events fired on <body> -> document -> window, like
-onload? onpopstate is defined as body->html->doc->window; as is the
-local storage event. What about the old ones, how do they work? load,
-error, scroll, resize, etc?
-
-If we assuming that bubbling events bubble from document to window,
-then it seems reasonable for scroll events that bubble to be fired at
-the document if the window is resized, and scroll events that don't
-bubble to be fired at elements if they are scrolled. window.onscroll
-and document.onscroll should both work.
-
-
-[HIT TESTING TRANSPARENCY]
-Definition: IE considers a point of an element "transparent" if any
-one of the following are true:
-
- 1. All of the following are true:
-    a: The computed value of 'background-image' is 'none', and
-    b: The computed value of 'background-color' is 'transparent', and
-    c: The point is over a pixel of an AlphaImageLoader filter image
-       that has an alpha value of 0 (fully transparent), or the
-       element does not have an AlphaImageLoader filter applied;
-
- 2. The point is outside the element's CSS clip rectangle;
-
- 3. The computed value of 'visibility' is 'hidden';
-
- 4. The element is a transparent IFRAME (in IE, an IFRAME with the
-    custom attribute "allowtransparency");
-
- 5. The element is an OBJECT with the custom attribute "wmode" set to 
-    "transparent" and the point in question is fully transparent.
-
-Given those definitions, when a mouse event occurs, IE finds the
-target element as follows:
-
-   A. Take the topmost node that is under the point where the pointer
-      was for the event. For CSS boxes, borders, padding areas and
-      content areas are considered part of the node, margins and
-      leading generated by the 'line-height' property are not.
-
-   B. If there is no node at that point, no event is fired. STOP.
-
-   C. If the node is a text node, then the event is fired at the text
-      node's nearest ancestor element node. STOP.
-
-   D. If the node is not an element, assign the node's nearest
-      ancestor element node to a variable X. Otherwise, assign the
-      element node itself to X.
-
-   E. If the element X is the BODY element or the HTML element and its
-      document is not the document of a transparent IFRAME, goto step
-      H. Similarly, if the element X is a TABLE element, or is an IMG
-      element, goto step H.
-
-   F. If the point where the pointer was is, per the above definition,
-      a point that on the element X is transparent, then ignore that
-      element and assign the element that is below that element in the
-      stacking order to X. If there is no element below X, or if the
-      point on X is not transparent and so the previous condition
-      doesn't apply, then leave X as is and go straight to step H.
-
-   G. Goto step E.
-
-   H. If the element X is now a BODY or TABLE element, but the element
-      assigned to X in step D was some other element, assign the
-      element originally assigned in step D back to X.
-
-   I. The event goes to X. STOP
-
-
-
-
-mousedown's default action is focus, so canceling mousedown stops focus transference.
-e.g. on http://www.mozilla.org/editor/midasdemo/
-
-xref all the _ERR exceptions to DOM3CORE
-
-
-<select><option><hr> support
-
-
-raising an exception when the wrong number of arguments is passed -
-is that a language-specific thing, or what?
-
-
-reload: fire an event when "reload" is pressed so that the page can
-reload its data instead of the whole page. cancel the event cancels
-the HTTP reload. Abuse prevention required, though.
-
-
-load event: fire on body, document, window? or just let it bubble?
-
-
-http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/elementfrompoint.asp
-http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/showmodaldialog.asp
-
-
-refs for TCP/IP (rfc793) and IPv6
-
-http://www.joelonsoftware.com/items/2004/06/17.html
-http://www.joelonsoftware.com/items/2004/06/18.html
-
-
-<neutralise> block that kills scripting or anything dangerous?
-
-
-XXXX need explanation of when to use undo/redo, and when to use back/forward
-
-XXX "alternate style sheet" should be "alternative style sheet"
-
-
-
-
-  <h5>Using the <code>a</code> element with the <code>command</code> attribute</h5>
-
-  <p>If an <code>a</code> element has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>Even if the element's <code>href</code> attribute is absent, the
-  element must still match the CSS <code>:link</code> or
-  <code>:visited</code> pseudo-classes. It must match the
-  <code>:visited</code> pseudo-class if the command's action is to
-  follow a link that has already been visited by the user, and must
-  match the <code>:link</code> pseudo-class otherwise.</p>
-
-  <p>If a <code>DOMActivate</code> event is dispatched on the element
-  and is not canceled, and the event has no other default action, and
-  the command's Disabled State is false (enabled), then the command's
-  Action must be triggered as the default action.</p>
-
-  <p class="note">The <code>DOMActivate</code> event is fired as the
-  default action of the <code>click</code> event.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled and must therefore match the
-  <code>:disabled</code> pseudo-class. UAs should style disabled links
-  in such a way as to clearly convey their disabled state.</p>
-
-  <p>The Label, Icon, Checked State and Type facets of the command are
-  ignored by the <code>a</code> element (except for <a
-  href="#pseudosAndCommands">matching CSS pseudo-classes</a>).</p>
-
-  <h5>Using the <code>button</code> element with the <code>command</code> attribute</h5>
-
-  <p>If a <code>button</code> element has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>If a <code>DOMActivate</code> event is dispatched on the element
-  and is not canceled, and the event has no other default action, and
-  the command's Disabled State is false (enabled), and the button's
-  <code>disabled</code> attribute is absent, then the command's Action
-  must be triggered as the default action.</p>
-
-  <p class="note">The <code>DOMActivate</code> event is fired as the
-  default action of the <code>click</code> event.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled. The <code>button</code> element must also
-  be disabled if the element's <code>disabled</code> attribute is
-  set.</p>
- 
-  <p>The Label, Icon, Checked State and Type facets of the command are
-  ignored by the <code>button</code> element (except for <a
-  href="#pseudosAndCommands">matching CSS pseudo-classes</a>).</p>
-
-  <h5>Using the <code>input</code> element with the <code>command</code> attribute</h5>
-
-  <p>If an <code>input</code> element has no <code>type</code>
-  attribute and no <code>name</code> attribute, and it has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the command is of Type "command" then the element must
-  generally be styled and behave as if it was of type
-  <code>button</code>; if the Type of the command is "radio" then the
-  element must generally be styled and behave as if it was of type
-  <code>radio</code>; and if the Type of the command is "checkbox"
-  then the element must generally be styled and behave as if it was of
-  type <code>checkbox</code>.</p>
-
-  <p>If the command is of Type "command" and the element's
-  <code>value</code> attribute is absent, then when the UA attempts to
-  display the element's caption, it must instead use the specified
-  command's Label. The Label facet is ignored if the command is not of
-  Type "command".</p>
-
-  <p>The UA may use the Icon facet of the command to render an
-  icon in the control, if appropriate for the UI used.</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>If a <code>DOMActivate</code> event is dispatched on the element
-  and is not canceled, and the event has no other default action, and
-  the command's Disabled State is false (enabled), and the element's
-  <code>disabled</code> attribute is absent, then the command's Action
-  must be triggered as the default action.</p>
-
-  <p class="note">The <code>DOMActivate</code> event is fired as the
-  default action of the <code>click</code> event.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled. The <code>input</code> element must also
-  be disabled if the element's <code>disabled</code> attribute is
-  set.</p>
-
-  <p>If the command's Checked State is true (checked) then the element
-  must be checked. The <code>input</code> element must also be checked
-  if the element's <code>checked</code> attribute is set.</p>
-
-
-
-
-  <p>This element should not be directly displayed. In CSS-aware user
-  agents, this should be achieved by including the following rules, or
-  their equivalent, in the UA's user agent style sheet:</p>
-
-  <pre>@namespace xh url(http://www.w3.org/1999/xhtml);
-xh|command { display: none; }</pre>
-
-
-
-  <h5 id="command-with-command">Using the <code>command</code> element with the <code>command</code> attribute</h5>
-
-  <p>If a <code>command</code> element has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the element's <code>label</code> attribute is absent, then
-  when the UA attempts to display the element's caption, it must instead
-  use the specified command's Label.</p>
-
-  <p>If the element's <code>icon</code> attribute is absent, then
-  when the UA attempts to display the element's icon, it must instead
-  use the specified command's Icon.</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>If a <code>click</code> event is dispatched on the element and is
-  not canceled, and the command's Disabled State is false (enabled),
-  and the element's own <code>disabled</code> attribute is absent,
-  then the command's Action must be triggered as the default
-  action.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled. The <code>command</code> element must also
-  be disabled if the element's <code>disabled</code> attribute is
-  set.</p>
-
-  <p>If the command's Checked State is true (checked) then the
-  element must be checked. The <code>command</code> element must also
-  be checked if the element's <code>checked</code> attribute is
-  set.</p>
-
-  <p>When a <code title="command-element">command</code> element has a
-  <code title="command-attribute">command</code> attribute, any <code
-  title="attr-command-type">type</code> and <code
-  title="attr-command-radiogroup">radiogroup</code> attribute is
-  ignored.</p>
-
-
-  <h4 id="pseudosAndCommands">CSS pseudo-classes and commands</h4>
-
-  <p>When an element uses the <code
-  title="command-attribute">command</code> attribute, any UI
-  pseudo-classes from the following list that apply to the element
-  defining the command also apply to the elements that refer to that
-  command.</p>
-
-  <dl>
-
-   <dt>:enabled, :disabled</dt>
-
-   <dd>Matches commands whose Disabled State facet is False and True
-   respectively.</dd>
-
-   <dt>:checked</dt>
-
-   <dd>Matches commands whose Type facet is either "radio" or
-   "checkbox", and whose Checked State facet is true.</dd>
-
-  </dl>
-
-
-
-  <p><code>menu</code> elements with explicit <code>label</code>
-  attributes, and <code>menu</code> elements following
-  <code>menulabel</code> elements, should be hidden. In CSS-aware UAs,
-  this effect should be achieved by including the following rules, or
-  their equivalent, in the UA's user agent style sheet:</p>
-
-  <pre>@namespace xh url(http://www.w3.org/1999/xhtml);
-xh|menu[label], xh|menulabel + xh|menu { display: none; }</pre>
-
-  <p>All other <code>menu</code> elements should be rendered
-  identically to <code>ul</code> elements. In CSS-aware UAs, this
-  effect may be achieved by including rules similar to the following
-  in the UA's user agent style sheet:</p>
-
-  <pre>@namespace xh url(http://www.w3.org/1999/xhtml);
-xh|menu { display: block; margin: 0 0 0 40px; list-style: disc; }</pre>
-
-
-
-
-  <h5>Displaying menus</h5>
-
-  <p>When a <code>menu</code> element is activated, the associated
-  menu should be constructed and shown. (For details on how a
-  <code>menu</code> element can be activated, see the sections on
-  <span>menu links</span> and <span>menu bars</span>.)</p>
-
-  <p>The styles applied to each element in the <code>menu</code>
-  element, as well as the element itself, may be applied when
-  constructing a menu. UAs are recommended to not apply styling to
-  context menus and menus for application menu bars, and to only use
-  styles for in-page menus.</p>
-
-  <p>If user agents support styling of menus, they should support only
-  the '<code>background</code>', '<code>color</code>',
-  '<code>border</code>', '<code>padding</code>' and
-  '<code>font</code>' properties on menus and menu items. (This list
-  might be incomplete; in general, properties that merely affect the
-  appearance of the element should work, but properties that affect
-  the layout should not.)</p>
-
-  <p>As the user interacts with a menu, the elements from which the
-  menu was created should have appropriate pseudo-classes (:hover,
-  :focus, :active) applied.</p>
-
-  <p>The menu items must consider only the computed styles of the
-  elements from which they were derived, not other elements.</p>
-
-  <div class="example">
-
-   <p>For example, take this menu:</p>
-
-   <pre><menu>
-<li><command label="a"/></li>
-<menu></pre>
-
-   <p>The menu has one menu item, labeled "a".</p>
-
-   <p>Styles applied to the <code>li</code> element in this menu would
-   have no effect on the rendered menu, except in so far as styles
-   inherit from that element to the <code>command</code> element.</p>
-
-   <p>Styles applied to the <code>command</code> element could affect
-   the menu. While the user is hovering over the menu item, the
-   <code>:hover</code> pseudo-class matches the <code>command</code>
-   element and any appropriate newly matching rules could be
-   applied.</p>
-
-  </div>
-
-  <p>When activated from a <span title="menu links">menu link</span>,
-  a menu must be placed in an Appropriate Place. Specifically, if the
-  <code>a</code> element is displayed as a vertically-stacked box (as
-  is typically seen for elements with '<code>display: block</code>',
-  '<code>list-item</code>', or '<code>table</code>'), then the menu
-  should appear vertically below the element, anchored so that one of
-  its top corners coincides with a bottom corner of the box so that
-  the menu and the box each have a horizontal sides in common (or a
-  bottom corner of the menu coincides with a top corner of the box, if
-  there isn't enough room for the menu to drop down); otherwise, if
-  the element is displayed as a horizontally stacked box
-  ('<code>display: inline</code>', '<code>table-cell</code>', etc),
-  the menu should appear to the <em>side</em> of the box in an
-  analogous way. If the element is on the right of the page, the menu
-  should drop to the left, and vice versa.</p>
-
-  <p>UAs should implement the drop-down behavior in more
-  platform-appropriate ways if the platform conventions differ from
-  the behavior described above.</p>
-
-
-
-
-  <h4>The <dfn title="command-attribute"><code>command</code></dfn>
-  attribute</h4>
-
-  <p>Any element that can define a command can also, instead, have a
-  <code>command</code> attribute that specifies the ID of a command
-  that the element should defer to. In this case the element does not
-  define a command, but, in the absence of attributes to the contrary,
-  reflects the state of the element specified.</p>
-
-  <p>If the <code>command</code> attribute specifies an ID that is not
-  the ID of an element that defines a command, then the
-  <code>command</code> DOM attribute is set to the null value, and the
-  element acts as if it was linked to an element that defined a
-  command with no Label, no Hint, no Icon, no Action, that was not
-  Hidden, not Disabled, not Checked, and that was of Type
-  "command".</p>
-
-
-replaceable DOM properties: http://lxr.mozilla.org/mozilla/source/dom/src/base/nsDOMClassInfo.cpp#5928
-<       brendan>|Hixie: so yeah, lxr for JSRESOLVE_QUALIFIED
-
-screen object:
-screen contains top left width height pixelDepth colorDepth availWidth availHeight availLeft availTop
-
-
-
-  <p>The most direct way to represent a command is by using the <code
-  title="command-element">command</code> element. A <code
-  title="command-element">command</code> element defines a command if
-  it does not have a <code title="command-attribute">command</code>
-  attribute.</p>
-
-  <div class="example">
-   <pre>...
- <command id="c_stop" label="Emergency Stop" onclick="dostop()"/>
- <command id="c_go" label="Go" onclick="dogo()"/>
- <command id="c_lamp" label="Headlamps" onclick="dof2()" disabled="disabled"/>
-...</pre>
-</div>
-
-  <p>The <code>command</code> element, in addition to the core and
-  internationalisation attributes, may have the following
-  attributes specified:</p>
-
-  <dl>
-
-   <!-+- yes i know that some of these are core attributes. If you can
-   give me a better introductory paragraph, I'm all for it. -+->
-
-   <dt><dfn title="attr-command-type"><code>type</code></dfn></dt>
-
-   <dd>The command's Type. If present, this attribute must either have
-   the value <code>radio</code>, in which case the command is of Type
-   "radio", or the value <code>checkbox</code>, in which case the
-   command is (amazingly) of Type "checkbox". Any other value, or the
-   absence of the attribute altogether, means that the command is of
-   Type "command".</dd>
-
-   <dt><dfn title="attr-command-id"><code>id</code></dfn></dt>
-
-   <dd>The command's ID. If this attribute is not specified, then the
-   command is anonymous.</dd>
-
-   <dt><dfn title="attr-command-label"><code>label</code></dfn></dt>
-
-   <dd>The command's Label. If the attribute is not specified, the
-   command's Label is given by the element's <code>textContent</code>
-   DOM attribute.</dd>
-
-   <dt><dfn title="attr-command-title"><code>title</code></dfn></dt>
-
-   <dd>The command's Hint. If the attribute is not specified, the
-   command's Hint is the empty string.</dd>
-
-   <dt><dfn title="attr-command-icon"><code>icon</code></dfn></dt>
-
-   <dd>A URL to the command's Icon. If the attribute is not specified,
-   then the command has no Icon.</dd>
-
-   <dt><dfn title="attr-command-onclick"><code>onclick</code></dfn></dt>
-
-   <dd>An event handler attribute that listens for <code>click</code>
-   events.</dd>
-
-   <dt><dfn title="attr-command-hide"><code>hide</code></dfn></dt>
-
-   <dd>The command's Hidden State. If the attribute is present, the
-   command is hidden (and also disabled, regardless of the value of
-   the <code>disabled</code> attribute), otherwise, the command is
-   shown. If the attribute is present, it should have the value
-   "<code>hide</code>". <!-+-The name of the attribute reflects the
-   fact that Hidden commands in menus are hidden.-+-></dd>
-
-   <dt><dfn title="attr-command-disabled"><code>disabled</code></dfn></dt>
-
-   <dd>The command's Disabled State. If the attribute is present, the
-   command is disabled, otherwise, the command is enabled. If the
-   attribute is present, it should have the value
-   "<code>disabled</code>".</dd>
-
-   <dt><dfn title="attr-command-checked"><code>checked</code></dfn></dt>
-
-   <dd>The command's Checked State. If the attribute is present, the
-   command is checked, otherwise, the command is not. If the attribute
-   is present, it should have the value "<code>checked</code>".</dd>
-
-   <dt><dfn title="attr-command-radiogroup"><code>radiogroup</code></dfn></dt>
-
-   <dd>An attribute indicating the name of the group of commands that
-   will be toggled when the command itself is toggled. (Described <a
-   href="#radiocommand">below</a>.)</dd>
-
-   <dt><dfn title="attr-command-default"><code>default</code></dfn></dt>
-
-   <dd>An attribute indicating whether the command is the default
-   command. If the attribute is present, the command is the default
-   command, otherwise it is not. If it is set, it should have the
-   value <code>default</code>. Used by context menus to indicate what
-   the default option would be. The :default pseudo-class matches
-   <code>command</code> elements with this attribute.</dd>
-
-  </dl>
-
-  <p>In addition, <code title="command-element">command</code>
-  elements may also have a <code
-  title="command-attribute">command</code> attribute, as <a
-  href="#command-with-command">described below</a>.</p>
-
-  <p>The Type, ID, Label, Hint, Icon, Hidden State, Disabled State,
-  and Checked State of the command defined by a <code
-  title="command-element">command</code> element are as described
-  above. The Action of a <code title="command-element">command</code>
-  element is that a <code>{null, "click"}</code> event is fired on the
-  element.</p>
-
-  <p>If the Type of the command is "checkbox", when a
-  <code>click</code> event is dispatched on the element, user agents
-  must toggle the value of the <code>checked</code> attribute before
-  the event is dispatched in the document. (If the attribute is
-  absent, then it is set to the value <code>checked</code>, and if the
-  attribute is present, it is removed.) If the default action of the
-  event is canceled, the value of the attribute must be changed back
-  to the value it had before the event was dispatched.</p>
-
-  <p id="radiocommand">If the Type of the command is "radio", when a
-  <code>click</code> event is dispatched on the element, user agents
-  must set the value of the <code>checked</code> attribute on the
-  element to <code>checked</code>, and remove the attribute from any
-  <code>command</code> elements with <code>type</code> set to
-  <code>radio</code> and the same parent element and same
-  <code>radiogroup</code> attribute, before the event is dispatched in
-  the document. (If the element has no <code>radiogroup</code>
-  attribute, then the elements "with the same <code>radiogroup</code>
-  attribute" are those elements with <em>no</em>
-  <code>radiogroup</code> attribute.) If the default action of the
-  event is canceled, the value of the attributes that were changed
-  must be changed back to the values they had before the event was
-  dispatched.</p>
-
-  <p>In HTML the <code>command</code> element is an empty element with
-  no end tag.</p>
-
-  <p>Authors should put <code>command</code> elements inside the
-  <code>head</code> element, inside any element that may contain
-  ...
-  content</span>, or inside <code>commandset</code> elements.</p> <!-+-
-  should, because hey, if they want to put them elsewhere, why not.
-  XXX -+->
-
-  <p>Authors should not put elements or text inside
-  <code>command</code> elements.</p>
-
-
-
-
-  <p>The <code title="dom-command-ro-command">command</code> DOM attribute
-  is defined with the <code title="attr-command">command</code>
-  content attribute.</p>
-
-
-Need to become consistent about whether or not to quote keyword
-("<code title="">foo</code>" vs <code>foo</code>)
-
-
-
-  XXX command icons in rendering section:
-
-  If the element defining the command has no explicit icon, then the
-  attribute must instead return the computed value of the CSS '<code
-  title="">icon</code>' property on that element. <a
-  href="#refsCSS3UI">[CSS3UI]</a>
-
-  If the computed value of '<code title="">icon</code>' is
-  '<code>auto</code>',
-
-
-search for event-click and make them all point to:
-<a href="http://www.w3.org/TR/DOM-Level-3-Events/events.html#event-click"><code>click</code></a>
-...or something.
-
-<code>DOMActivate -> <code title="event-DOMActivate">DOMActivate
-
-
-onclick="" only fires if it is a MouseEvent
-
-
-<form> .submit definition - see http://lxr.mozilla.org/mozilla/source/content/html/content/src/nsHTMLFormElement.cpp#600
-for how to handle multiple calls in series
-
-
-http://lxr.mozilla.org/mozilla/source/content/html/content/src/nsHTMLFormElement.cpp#699
-
-How events are handled:
-http://lxr.mozilla.org/mozilla/ident?i=HandleDOMEvent
-
-http://www.quirksmode.org/js/events_compinfo.html
-e.g. mousedown mouseup click mousedown mouseup click dblclick
-
-http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/events.asp
-
-
-
-05:46 <            bz>|Hixie: let's put it this way
-05:46 <            bz>|Hixie: 1)  A script is executed when its data is available
-05:47 <            bz>|Hixie: 2) The data for an inline script is available when its </script> is seen
-05:47 <            bz>|Hixie: 3) The data for a script with src is available when it finishes loading
-05:47 <            bz>|Hixie: all good so far?
-05:47 <         Hixie>|i'm waiting for the bit where src= causes blocking in the normal, non-d.w case
-05:47 <            bz>|Hixie: 4) The data for a script with src starts loading when the <script> node is inserted into the DOM
-05:48 <        shaver>|it causes parser blocking in the normal case
-05:48 <            bz>|Hixie: 5)  When such a load starts, all further parsing is suspended until the load has completed and the script has executed.
-05:48 <            bz>|Hixie: so if we forget document.write
-05:48 <            bz>|Hixie: and look at the HTML:  <script src="foo"></script><div>
-05:48 <            bz>|Hixie: the text "<div>" will nto be parsed until after the script runs
-05:49 <            bz>|Hixie: this is needed so that if the script does document.write that text can be inserted _before_ the "<div>" text into the parser
-05:49 <         Hixie>|sure
-05:49 <         Hixie>|all this is fine
-05:49 <            bz>|Hixie: ok.  So now let's look at our case
-05:49 <         Hixie>|but how does document.write() know when to return?
-05:49 -!- davel [davel at moz-4F4E281A.dsl.static.sonic.net] has quit [Quit: davel]
-05:49 <            bz>|It gives the data to the parser, and tells the parser to parse it
-05:49 <            bz>|Once the parser returns, document.write returns
-05:50 <            bz>|The parser returns when it runs out of data to parse (it's parsed it all)
-05:50 <            bz>|Or if it's explicitly suspended (eg by a <script src="">)
-05:50 <         Hixie>|AH
-05:50 <            bz>|All this in Gecko
-05:50 <         Hixie>|ok that was the key piece of information i was missing
-05:50 <         Hixie>|the "explicit suspension"
-05:50 <         Hixie>|ok
-but test IE on this...
-
-
-XXX publish a "Valid HTML5!" button with a kitten on it. Made by an artist. (Doodle?)
-
-
-   Interaction with document.open/write/close is undefined
-   Integration with quirks mode problems
-   <style> parsing needs tweaking if we want to exactly match IE
-   <base> parsing needs tweaking to handle multiple <base>s
-   <isindex> needs some prose in the form submission section
-   No-frames and no-script modes aren't yet defined
-   Execution of <script> is not yet defined
-   New HTML5 elements aren't yet defined
-   There are various cases (marked) where EOF handling is undefined
-   Interaction with the "load" event is undefined
-
-
-hsivonen:
-> To make document conformance a more useful concept for the purpose of catching
-> author errors, I suggest that the following attributes be made required:
-> href and rel on link
-> href on base
-> name and content on meta (other than the encoding decl)
-> src on img
-> code, height and width on applet
-> name and value on param
-...
-> To allow user agents see whether the author provided the empty string as the
-> alternative text of whether the author just didn't care, I suggest that the
-> alt attribute on img be made optional.
-(i agree -ian)
-...
-> On the other hand, I have doubts about the requirement of significant
-> inline content. When the W3C said that paragraphs mustn't be empty,
-> various applications started emitting <p> </p>. If the WHAT WG says
-> that paragraphs must contend significant inline content, are the
-> developers of those applications suddenly going to decide not to allow
-> them to paragraphs to be saved or are they going to come up with an even
-> more crufty work-around to comply with the machine-checkable
-> requirements of the spec?
-
-
-bjoern:
-> If the concern here is what the specification should say, then that's
-> what a valid state is, not what a valid document is, since the class of
-> "predictably valid" documents does not cover many dynamic documents.
-
-
-
-arv asks for: a way to track download progress of, e.g., images when
-you are preloading 10 images; cf onprogress on XHR in mozilla
-
-
-window.getAttention() or some similar API to let the user know the
-page wants attention? How do you reduce the chance of irritation?
-see also https://bugzilla.mozilla.org/show_bug.cgi?id=293412
-
-
-
-ITEM
-
-Items have:
- - parents, children
- - properties
- - commands that can apply to them
-
-
-
-   <li>Inline markup for pop-up windows, for example for dialog boxes
-   or tool palettes, so that dialogs need not be defined in separate
-   files.</li>
-
-   <li>Command updating: applications that have several access
-   points for the same feature, for instance a menu item and a
-   tool-bar button, would benefit from having to disable such
-   commands only once, instead of having to keep each access point
-   synchronized with the feature's availability at all times.
-   Similarly menu items or tool-bar buttons that represent a toggle
-   state could automatically stay synchronized whenever
-   toggled.</li>
-
-   <li>More device-independent DOM events: The DOM event set needs
-   device-independent events, such as events that fire when a button
-   or link is activated, whether via the mouse or the keyboard.
-   <code>DOMActivate</code> is a start, but it lacks equivalent HTML
-   attributes, and additional events may be needed.</li>
-
-   <li>Richer widget set: the existing HTML controls are quite
-   limited, some controls for commonly used types such as date
-   controls and range controls would be useful.</li>
-
-   <li>Sortable and multicolumn tree views and list views with rich
-   formatting.</li>
-
-   <li>Ability to define custom widgets cleanly, for example using
-   XBL and APIs to query and control focus state, widget state, the
-   position and state of input devices, etc.</li>
-
-   <li>Rich text editing: an underlying architecture upon which
-   domain-specific editors can be created, including things like
-   control over the caret position.</li>
-
-   <li>A predefined HTML editor based on the rich text editing
-   architecture.</li>
-
-   <li>Drag and drop APIs.</li>
-
-   <li>Text selection manipulation APIs.</li>
-
-   <li>Clipboard APIs (if the security and privacy concerns can be
-   addressed).</li>
-
-   <li>Flexible box model: The existing box model in CSS is designed
-   largely for documents rather than user interface. We need a new
-   box model designed for user interface which would relieve author
-   complaints about other aspects of CSS and also reduce the need
-   for tables for layout.</li>
-
-   <li>Window-based state management (so that new windows don't
-   interfere with existing sessions), for example implemented as a
-   per-domain, per-window "file system". This would allow multiple
-   instances of the same application (from the same site) to run
-   without the instances overwriting each other's cookies.</li>
-
-   <li>Markup to denote <span>mutually exclusive sections</span> (as
-   in the commonly seen wizard interfaces).</li>
-
-   <li>An improved CSS object model, for example with better APIs
-   for animation, simpler ways to navigate the rendered content, a
-   way to find the position of an element, methods to list the
-   elements under a coordinate, etc.</li>
-
-   <li>Better defined user authentication state handling. (Being able
-   to "log out" of sites reliably, for instance, or being able to
-   integrate the HTTP authentication model into the Web page.)</li>
-
-
-offline storage / caching pining:
-http://groups.google.com/group/mozilla.dev.platform/browse_frm/thread/bf866101aa238773/a298294c27b9380a?lnk=gst&q=offline&rnum=1#a298294c27b9380a
-
-
-DOM0 quirks that Mozilla knows about:
-http://lxr.mozilla.org/seamonkey/source/dom/src/base/nsDOMClassInfo.cpp
-
-
-
-mutually exclusive sections:
-  <p class="example">For example, in an application for an online
-  mutiplayer game, there could be four mutually exclusive sections:
-  one for the login page, one for the network status page displayed
-  while the user is logging in, one for a "lobby" where players get
-  together to organise a game, and one for the actual game. The
-  different sections are the various states that the application can
-  reach.</p>
-
-
-XXX make a consistent decision of which of the following formats to use:
-
-    U+1234 FOO BAR character ("foo")
-    U+1234 FOO BAR character ('foo')
-    U+1234 FOO BAR character (foo)
-    U+1234 FOO BAR ("foo") character
-    U+1234 FOO BAR ('foo') character
-    U+1234 FOO BAR (foo) character
-    U+1234 FOO BAR character ("<code title="">foo</code>")
-    U+1234 FOO BAR character ('<code title="">foo</code>')
-    U+1234 FOO BAR character (<code title="">foo</code>)
-    U+1234 FOO BAR ("<code title="">foo</code>") character
-    U+1234 FOO BAR ('<code title="">foo</code>') character
-    U+1234 FOO BAR (<code title="">foo</code>) character
-
-And make these match:
-
-    0x12 (ASCII FOO)
-    0x12 (ASCII "foo")
-    0x12 (ASCII 'foo')
-    0x12 ("foo")
-    0x12 ('foo')
-    0x12 (ASCII "<code title="">foo</code>")
-    0x12 (ASCII '<code title="">foo</code>')
-    0x12 ("<code title="">foo</code>")
-    0x12 ('<code title="">foo</code>')
-
-Also check case of hex characters in the ASCII cases.
-
+ XXX * add for="" attribute to <input type="password"> so that you can
+       link usernames and passwords. (Jonas Sicking)
+ XXX * value for unchecked checkbox?
+ XXX * maximum height/width or required ratio for image uploads? - Leons Petrazickis
+ XXX * A way to specify the default button - Michael Gratton 
+ XXX * <fieldset readonly>?
+ XXX * keygen?
+ XXX * action="" should be defined as not being relative to base URI
+       see https://bugzilla.mozilla.org/show_bug.cgi?id=297761
 -->

Modified: source
===================================================================
--- source	2008-09-15 05:37:20 UTC (rev 2180)
+++ source	2008-09-15 09:59:53 UTC (rev 2181)
@@ -959,6 +959,8 @@
 
   <p class="big-issue">See <a
   href="http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?content-type=text/html;%20charset=utf-8">http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?content-type=text/html;%20charset=utf-8</a></p>
+  <!--XXX empty title attribute is equivalent to missing attribute for
+  purposes of alternate style sheet processing -->
 
 
   <h4>Common conformance requirements for APIs exposed to
@@ -15731,6 +15733,19 @@
   different capabilities, with the user agent picking the first one it
   supports.</p>
 
+<!-- XXX
+<hyatt> apparently your url can come from <param>
+<hyatt> not just the data attribute
+<hyatt> our code looks for params with "src", "movie", "code" and "url"
+<hyatt> and also tries to find the type on a param
+<Hixie> oh that's you trying to have hacky activex support
+<Hixie> opera does that too
+<hyatt> yeah we support activex versions of plugins that are common
+<hyatt> like flash and quicktime and realaudio
+<Hixie> that would be a step 1b. if no data attribute, then look for a <param> to get you a URL instead.
+<Hixie> and if you find one, carry on as if that was your data="".
+-->
+
   <p>Whenever the <code title="attr-object-name">name</code> attribute
   is set, if the <code>object</code> element has a nested
   <span>browsing context</span>, its <span title="browsing context
@@ -24218,6 +24233,10 @@
 
   <p class="big-issue">... <dfn title="concept-input-type-file-selected">selected file</dfn></p>
 
+<!--XXX
+rel="" on submit buttons?
+-->
+
   <h4>The <dfn><code>button</code></dfn> element</h4>
 
   <dl class="element">
@@ -24293,8 +24312,11 @@
   </dl>
 
   <p class="big-issue">...</p>
+<!--XXX
+what does <label> _mean_? how about an empty one, one which contains
+more than one control, no controls?
+-->
 
-
   <h4>The <dfn><code>select</code></dfn> element</h4>
 
   <dl class="element">
@@ -24665,6 +24687,7 @@
   <p class="big-issue">... <dfn title="dom-fs-action">action</dfn> DOM attribute</p>
 
   <p class="big-issue">... <dfn title="concept-fs-action">action</dfn> if present else form's else default</p>
+  <!-- XXX mozilla bug 297761 -->
 
   <p class="big-issue">... <dfn title="attr-fs-method">method</dfn> content attribute</p>
 
@@ -24816,6 +24839,8 @@
 
   <h4>Form submission</h4>
 
+  <!-- XXX http://lxr.mozilla.org/mozilla/source/content/html/content/src/nsHTMLFormElement.cpp -->
+
   <p>When a form <var title="">form</var> is <dfn
   title="concept-form-submit">submitted</dfn> from an element <var
   title="">submitter</var> (typically a button), the user agent must
@@ -24835,6 +24860,7 @@
    result: if the result is negative (the constraint validation
    concluded that there were invalid fields and probably informed the
    user of this) then abort these steps.</p></li>
+   <!-- XXX define what happens if .submit() is called during this -->
 
    <li><p>If the <var title="">submitter</var> is anything but a
    <code>form</code> element, then <span>fire a simple event</span>
@@ -24843,6 +24869,7 @@
    the event's default action is prevented (i.e. if the event is
    canceled) then abort these steps. Otherwise, continue (effectively
    the default action is to perform the submission).</p></li>
+   <!-- XXX define what happens if .submit() is called during this -->
 
    <li><p>Let <var title="">controls</var> be a list of all the <span
    title="category-submit">submittable</span> elements whose
@@ -31155,7 +31182,8 @@
 
  <!-- XXX http://msdn.microsoft.com/workshop/author/dhtml/reference/objects/obj_window.asp
           http://www.mozilla.org/docs/dom/domref/dom_window_ref.html
-          http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindow.idl
+          http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindow.idl - scrollBy, etc
+          http://lxr.mozilla.org/mozilla/source/dom/public/idl/base/nsIDOMWindowInternal.idl - DOM level 0
    -->
 
   <p>The <dfn title="dom-window"><code>window</code></dfn>, <dfn
@@ -35922,6 +35950,13 @@
    "pause" definition since that involves not running script!</p></li>
 
    <li><p class="big-issue">onbeforeunload, and if present set flag that we will kill document</p></li>
+   <!--
+   when we define onbeforeunload, then we have to say that the JS
+   implementation of EventListener::handleEvent checks for that event,
+   treating the return value as the string to use for the unload warning
+   message if there is a return value, and calling preventDefault if
+   there isn't.
+   -->
 
    <li><p class="big-issue">onunload, and if present set flag that we will kill document</p></li>
 
@@ -42214,6 +42249,8 @@
 
   <h4>Parsing an event stream</h4>
 
+  <!-- XXX Wladimir Palant pointed out problems with HTTP chunking with server-sent-events -->
+
   <p>This event stream format's MIME type is
   <code>text/event-stream</code>.</p>
 
@@ -52179,6 +52216,69 @@
       for datagrid
       ...
 
+
+
+
+HIT TESTING TRANSPARENCY
+
+Definition: IE considers a point of an element "transparent" if any
+one of the following are true:
+
+ 1. All of the following are true:
+    a: The computed value of 'background-image' is 'none', and
+    b: The computed value of 'background-color' is 'transparent', and
+    c: The point is over a pixel of an AlphaImageLoader filter image
+       that has an alpha value of 0 (fully transparent), or the
+       element does not have an AlphaImageLoader filter applied;
+
+ 2. The point is outside the element's CSS clip rectangle;
+
+ 3. The computed value of 'visibility' is 'hidden';
+
+ 4. The element is a transparent IFRAME (in IE, an IFRAME with the
+    custom attribute "allowtransparency");
+
+ 5. The element is an OBJECT with the custom attribute "wmode" set to 
+    "transparent" and the point in question is fully transparent.
+
+Given those definitions, when a mouse event occurs, IE finds the
+target element as follows:
+
+   A. Take the topmost node that is under the point where the pointer
+      was for the event. For CSS boxes, borders, padding areas and
+      content areas are considered part of the node, margins and
+      leading generated by the 'line-height' property are not.
+
+   B. If there is no node at that point, no event is fired. STOP.
+
+   C. If the node is a text node, then the event is fired at the text
+      node's nearest ancestor element node. STOP.
+
+   D. If the node is not an element, assign the node's nearest
+      ancestor element node to a variable X. Otherwise, assign the
+      element node itself to X.
+
+   E. If the element X is the BODY element or the HTML element and its
+      document is not the document of a transparent IFRAME, goto step
+      H. Similarly, if the element X is a TABLE element, or is an IMG
+      element, goto step H.
+
+   F. If the point where the pointer was is, per the above definition,
+      a point that on the element X is transparent, then ignore that
+      element and assign the element that is below that element in the
+      stacking order to X. If there is no element below X, or if the
+      point on X is not transparent and so the previous condition
+      doesn't apply, then leave X as is and go straight to step H.
+
+   G. Goto step E.
+
+   H. If the element X is now a BODY or TABLE element, but the element
+      assigned to X in step D was some other element, assign the
+      element originally assigned in step D back to X.
+
+   I. The event goes to X. STOP
+
+
   -->
 
   <p class="big-issue">This section will probably include details on
@@ -52632,1611 +52732,301 @@
 
   <p>Thanks also to the Microsoft blogging community for some ideas,
   to the attendees of the W3C Workshop on Web Applications and
-  Compound Documents for inspiration, and to the #mrt crew, the
-  #mrt.no crew, the #whatwg crew, and the cabal for their ideas and
-  support.</p>
+  Compound Documents for inspiration, to the #mrt crew, the #mrt.no
+  crew, and the #whatwg crew, and to Pillar and Hedral for their ideas
+  and support.</p>
 
   <!-- Hopefully Kam won't notice he's covered by these
   acknowledgements three times! -->
 
 <!--
- !  menus
+TODO (or delay):
+ XXX * simple color picker
+ XXX * in-window modal dialogs
+        - escape/enter handling
+        - dragging the window out of the tab
+ XXX * in-window non-modal palettes
+        - with a solution for the mobile space
+ XXX * a way of selecting rows, so that you can declaratively have buttons
+       outside the template that move a "selected row" around
+ XXX * calendar with list of days that have events (think: blog calendars)
+ XXX * find object at (x,y)
+       http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/elementfrompoint.asp
+ XXX * find mouse position
+ XXX * styling scrollbars:
+       ::scrollbars { ... }
+ XXX * automatic table of contents
+ XXX * a way to show icons for file types
+       e.g. http://www.gadgetopia.com/2004/05/04/FileIconTag.html
+ XXX * custom syntax highlighting in <textarea>, <pre> (ack Ryan Johnson)
+ XXX * methods/properties for managing scrolling, especially in TextArea,
+       such as .scrollTop and .scrollHeight in Mozilla
+ XXX * dom range apis with textarea/input edited value (ack martijnw)
+ XXX * datagrid: cells that are links (<a href=""></a>)
+ XXX * we should fix The Great Key Problem
+ XXX * library of resources:
+        var library = new ZipFile("data.zip");
+        library.onload = function() {
+          var sound1 = library.getAudio("sound1.wav"); // returns an Audio object
+          var image1 = library.getImage("image1.png"); // returns an HTMLImageElement
+          var doc1 = library.getXMLDocument("doc1.xml"); // returns a Document
+          var doc2 = library.getHTMLDocument("doc1.html"); // returns an HTMLDocument
+        }
+       or:
+        var library = new ResourceLoader("data.zip");
+        library.add("moredata.zip");
+        library.onload = function() { ... }
+        library.onloading = function() {
+          reportLoadProgress(library.progress); // 0.0 .. 1.0
+        }
+       or:
+        var library = new AudioZip("sounds.zip");
+        library.onload = function() {
+          var sound1 = library["sound1.wav"];
+          sound.play();
+        }
+ XXX * applying input masks to <input>, e.g. for entering data with
+       slashes and dashes (ack Greg Kilwein)
+ XXX * HTMLImageElement.click(x, y); or clickPoint, if click() can't be
+       done in IE; can this be emulated in IE by posting a synthetic moue
+       click event with those X and Y coords? (ack Csaba Gabor)
+ XXX * <menu> should get an icon, like <command>
+ XXX * <menu> should be hideable, like <command>
+ XXX * Need to say that NodeList's items are enumerable, so that
+         for (var x in myNodeList) { }
+       ...works. (ack Dethe Elza)
+ XXX * people want multiline tooltips with explicit line breaks
+ XXX * ability for a web app to save a file to the local disk:
+         var file = window.openFile(); // throws up UI
+         file.read();
+         var file = window.saveAsFile(); // throws up UI
+         file.write();
+       ...or something? (<input type=file>?)
+ XXX * http://lxr.mozilla.org/mozilla/source/dom/public/idl/html/nsIDOMNSHTMLDocument.idl
+ XXX * define how to handle APNGs that have out-of-order aDATs and other
+       errors in image formats, since pav and vlad refuse to define it for APNG:
+         <Hixie> vlad: you should define what the UA should do with out-of-order aDATs
+         <pav> its an error
+         <pav> pretty sure we say that somewhere
+         <Hixie> yes i know it's an error
+         <Hixie> but that doesn't say what the UA should do
+         <pav> error == image is invalid
+         <vlad> yep
+         <vlad> either broken image icon
+         <vlad> or display first frame (fall back to normal PNG)
+         <vlad> up to the UA
+         <Hixie> right
+         <Hixie> you should say which one
+         <pav> its up to the UA
+         <Hixie> why?
+         <vlad> "SHOULD display the first frame, but MAY display broken image icon if that's not convenient", in rfc parlance
+         <vlad> because it's not useful to specify that, IMO
+         <Hixie> up to the UA means one UA will implement something, it'll become a popular UA, then all the others will have to copy it.
+         <vlad> how a UA wants to handle image errors is up to the UA
+         <pav> we're designing an image format, not the html image tag
+         <pav> the html spec should say what to do with it
+ XXX * <title site="" publisher="" author="">Page Title</title> ?
+ XXX * <h1> styled according to section depth
+ XXX * [onclick] should make element focusable; enter should send onclick ?
+ XXX * support access Array element via () instead of [] (IEism)
+       https://bugzilla.mozilla.org/show_bug.cgi?id=289876
+ XXX * how to interpret an HTML5 document for syndication
+       http://hixie.ch/specs/hsf/hsf
+ XXX * should have some text talking about the fact that it's ok if your
+       page passes through a period of non-conformance while script is
+       running, but that in between scripts it should be compliant.
+ XXX * mousedown's default action is focus, so canceling mousedown stops
+       focus transference. http://www.mozilla.org/editor/midasdemo/
+ XXX * xref all the _ERR exceptions to DOM3CORE
+ XXX * <select><option><hr> support?
+ XXX * need explanation of when to use undo/redo, and when to use
+       back/forward
+ XXX * "alternate style sheet" should be "alternative style sheet"
+ XXX * screen object: top left width height pixelDepth colorDepth
+       availWidth availHeight availLeft availTop
+ XXX * need to become consistent about whether or not to quote keyword
+       ("<code title="">foo</code>" vs <code>foo</code>)
+ XXX * need to properly xref events throughout, mark up DOMActivate, etc
+ XXX * onclick="" only fires if it is a MouseEvent ?
+ XXX * <isindex> needs some prose in the form submission section
+ XXX * hsivonen makes the following suggestions:
+       > To make document conformance a more useful concept for the purpose of catching
+       > author errors, I suggest that the following attributes be made required:
+       > href and rel on link
+       > href on base
+       > name and content on meta (other than the encoding decl)
+       > src on img
+       > code, height and width on applet
+       > name and value on param
+ XXX * command="" feature
+ XXX * DOM0 quirks that Mozilla knows about:
+       http://lxr.mozilla.org/seamonkey/source/dom/src/base/nsDOMClassInfo.cpp
+ XXX * make a consistent decision of which of the following formats to use:
+         U+1234 FOO BAR character ("foo")
+         U+1234 FOO BAR character ('foo')
+         U+1234 FOO BAR character (foo)
+         U+1234 FOO BAR ("foo") character
+         U+1234 FOO BAR ('foo') character
+         U+1234 FOO BAR (foo) character
+         U+1234 FOO BAR character ("<code title="">foo</code>")
+         U+1234 FOO BAR character ('<code title="">foo</code>')
+         U+1234 FOO BAR character (<code title="">foo</code>)
+         U+1234 FOO BAR ("<code title="">foo</code>") character
+         U+1234 FOO BAR ('<code title="">foo</code>') character
+         U+1234 FOO BAR (<code title="">foo</code>) character
+       ...and make these match:
+         0x12 (ASCII FOO)
+         0x12 (ASCII "foo")
+         0x12 (ASCII 'foo')
+         0x12 ("foo")
+         0x12 ('foo')
+         0x12 (ASCII "<code title="">foo</code>")
+         0x12 (ASCII '<code title="">foo</code>')
+         0x12 ("<code title="">foo</code>")
+         0x12 ('<code title="">foo</code>')
+ XXX * check case of hex characters in the ASCII cases.
+ XXX * <input placeholder=""> as seen in Safari. See:
+       http://www.beyondstandards.com/archives/input-placeholders/ -Asa
+ XXX * trim function in JS for strings to remove spaces
+ XXX * date checking functions in JS (.isValidDate?)
+ XXX * a fairly common situation for web authors is to have two lists, where
+       the contents of the second depends on the value of the first. Is there
+       any way we could extend the current model to include this functionality?
+       (e.g. bugzilla product/component ui)
+ XXX * quick-searchable select
+ XXX * fallback that will only appear in non-webforms clients (e.g. for
+       formats for date fields)
+ XXX * include/exclude selectors (two multi-select columns with arrows to
+       move selected items) and that sort of thing.
+       http://slashdot.org/comments.pl?sid=110240&cid=9357022
+ XXX * Oh, and forms need a standardized Help widget/icon. I know I can
+       turn my cursor into a question mark, but I'm looking for something
+       simple and pervasive. Maybe you can wrap fields in a help tag, just
+       as you do for fieldsets. And in that help tag, attributes are
+       available that allow for a nice, formatted, clean, full help text
+       popup/area/thing.
+       http://slashdot.org/comments.pl?sid=110240&cid=9359006
+ XXX * Validating only part of a form. - Anja Lehmann
+ XXX * Reminder to add a way to expose access keys in buttons, i.e.
+       Sub&mit where & signifies the m is the access key to use. Possibly
+       automatic? <input accesskey="m" value="Submit"> browser would be
+       smart enough to underline the first instance of the access key if
+       it exists (case insensitive)? - kerz
+       [or deprecate the lot (->web apps)]
+ XXX * option.text should do the same as option.textContent
+ XXX * select.options.add(), .remove() should exist (and forward to the select)
+ XXX * select.add()'s second argument should also be allowed to be an integer (negative means append)
+       + see: http://bugzilla.mozilla.org/show_bug.cgi?id=240304
+              http://junkyard.damowmow.com/138
+ XXX * need an attribute that says "the children of this element are in
+       their own tabbing universe, tabindex should be relative to each
+       other, not to the document"
+       -> web apps?
+ XXX * make optgroups selectable if they have a value.
+ XXX * make select widgets have multiple columns
+       or ->web apps with list view
+ XXX * required as a group (one of the following must be available):
+       + i propose something like the following:
+           <input type="text" group="contact" name="voicephone"> Voice phone
+           <input type="text" group="contact" name="fax"> Fax
+           <input type="text" group="contact" name="mobile"> Mobile phone
+           <input type="text" group="contact" name="email"> Email
+         if the user fills out none of the form fields in the "contact"
+         group, an error message is shown and the form is not submitted.
+         - Peter-Paul Koch
+ XXX * use the sample widgets:
+          <li><img alt="A text field with editable sections for each
+          value, with a button to pop up a dialog showing a calendar or
+          clock." src="sample-datetime-ui-2"></li>
+          <li><img alt="A calendar grid with a clock in the upper right
+          hand corner." src="sample-datetime-ui-3"></li>
+ XXX * formatting of number fields, text fields, etc, so that when the
+       field is not focused, the value is displayed differently. Seems
+       like this would also be useful e.g. for <output> or something so
+       you can display localised dates, etc.
+ XXX * update text/html RFC
+ XXX * type="emails"
+ XXX * password and confirm password: can we have a way to do client-side
+       validation of this?
+ XXX * <input type="search">
+       http://weblogs.mozillazine.org/hyatt/archives/2004_07.html#005890
+ XXX * would be nice to say how to handle duplicate IDs once and for all
+       instead of spreading it all over the spec.
+ XXX * being able to select date range (from day x to day y)
+ XXX * ways of visualizing a linefeed in a <textarea> so it looks different
+       from wrapping text
+ XXX * all login systems have
+         1. enter username and password
+         2. create new account
+         3. lost password
+       some way of integrating this into one system, since it's so common
+ XXX * way of identifying different sorts of mailadresses
+         a) mailing-list
+         b) person
+         c) department in a company ("support", "marketing" and such)
+         d) general mail (like "info", "mail", "contact" and such)
+         e) other sorts of groupings
+       (or ->web apps; this is talking about in mailto: links, I think)
+ XXX * hotswapping login identities like in windows xp
+         you are logged in on operamail.com, and you want to check the mail
+         of another user. somehow, combined with the wand or whatever,
+         the browser will remember the login page, and it can re-submit it
+         without having to load the initial page (saving time)
+ XXX * provide different measuring systems, like having the html indicate
+       fluid in both fluid ounces and liters, and the browser can display
+       one or the other based on regional settings in the browser or ui,
+       display conversions in a tooltip, or let the user decide which
+       format to display.
+ XXX * indicate "x days ago" or "y days into the future" rather than date
+ XXX * input control for anniversaries
+ XXX * some kind of format element that gives a region-specific format on
+       a WF2 browser:
+          <label for="dday">
+             Date: <timeformat type="date">(format: dd-mm-yyyy)</timeformat>
+          </label>
+          <input type="date" id="dday">
+       In a legacy browser, the label would be "Date: (format:
+       dd-mm-yyyy)". On a WF2 browser, however, you might see "Date:
+       (format: yyyy-mm-dd)" if your region uses the "yyyy-mm-dd" format.
+       This can be useful for international users who may be using a
+       browser in an Internet cafe or something and is not be used to the
+       native formats
+ XXX * only submit fields that have changed, or a way to include in the
+       submission a list of which form controls were changed from their
+       default value
+ XXX * have a way of marking the first option of a <select> as the default
+       but have it not satisfy a new required="" attribute on <select> so
+       that you can have selects that require a valid value.
+ XXX * Dave Raggett inadvertently suggested there should be a way to submit
+       canvas elements.
+ XXX * type="time" value="now"
+ XXX * should "mixed fractional number" be used instead of "fractional"?
+ XXX * terse BNF to define the allowed values of the various attributes
+       instead of, or in addition to, the prose. [or not, it wouldn't be terse]
+ XXX * add something to type="number" to support basic currency and unit
+       formatting of input
+ XXX * <fieldset enabled-if-checked="myCheckboxOrRadioButton">
+       ...to allow sections to only be enabled if a radio button makes it
+       relevant, for instance.
+ XXX * Yan Morin proposed a multi-column dropdown <select> or <datalist>:
+         _________________
+        |_New_York______|V|_________________  <- input  with a table link and a down arrow
+        |_City__________|_State_|_Country_|_| <- header of the table
+        | Montreal      |  QC   | Canada  |A| <- top arrow of the scroll
+        |>New York     <|  NY   | US      | | <- selected row
+        | Washington    |  DC   | US      |X| <- cursor scroll
+        | San Francisco |  CA   | US      | |
+        |_Toronto_______|__ON___|_Canada__|V| <- bottom arrow of the scroll
 
-<hyatt> the ability to get the current focused window in a window hierarchy
-
-wizards
-tabbed interface
-
-Application object? http://longhorn.msdn.microsoft.com/lhsdk/ref/ns/msavalon.windows/c/application/application.aspx
-
-<input type="text" menu="foo" icon="g.png"/> <menu id="foo"> <menuitem icon="g.png" onclick="engine('yahoo')">Yahoo</menuitem> ... </menu>
-
-> One more aspect I want you think about - for "user interface
-> systems" in general: The windowing system.
->
-> Different kinds of windows ("document", "browser
-> (file-system/network or otherwise)", "palette", "application modal
-> dialog", "system modal dialog"), the rules for layering them
-> (appropriately flexible to allow different implementations, e.g. Mac
-> OS X vs. X-Windows), and simplifications for handheld devices (which
-> are sometimes single window devices anyway, but sometimes they are
-> one "normal" window plus sometimes one "dialog" window on top.
-
-window.open for dialogs
-
-
-Thus, they lack things like proper windows, tree 
-widgets, menu bars, rich text areas and so forth. This is what I would 
-like XUL to solve. - Paul Prescod
-
-
-
-
-Olav:
-> <product> to indicate something you can buy, like a cd on amazon
-> or a biker jacket at harleydavidson.com
-
-
-Drop downs often have a title for when there is no selection.
-
-http://www.w3.org/mid/BAY1-F150PNOkJvX41K000418e1@hotmail.com
-
-http://crew.tweakers.net/crisp/newlayout/index.html
-http://crew.tweakers.net/crisp/newlayout/list_topics.html
-http://crew.tweakers.net/crisp/newlayout/list_messages.html
-http://crew.tweakers.net/crisp/newlayout/list_messages_mod.html
-
-http://mail.mozilla.org/private/gui-toolkit/2004-April/000041.html
-
-> > > A standard for rich edit widgets would also be of interest to me.
-> >
-> > As in WYSIWIG editing? Of the bold/italic/underline/larger/smaller kind?
-> > 
-> > Or do you mean as in the bare bones to be able to build an editor on top
-> > of? As in something that basically just gives you a cursor and the ability
-> > to tell where the selection is and some way to hook into the Undo
-> > functionality?
-> 
-> I have use cases for both...I have a more desperate business need for
-> the latter (and have build apps using the gross APIs out there today)
-> but there are a lot of circumstances where an editor that already has
-> all standard HTML editing behavior would be fine.
->
-- Paul Prescod
-
- * a way of selecting rows, so that you can declaratively have buttons
-   outside the template that move a "selected row" around. => web apps
-
-
-Calendar with list of days that have events (think: blog calendars)
-
-Find object at (x,y)
-Find mouse position
-
-Styling scrollbars:
-
-   ::scrollbars { ... }
-
-
-table of contents?
-
-
-http://www.gadgetopia.com/2004/05/04/FileIconTag.html
-
-
-on going back
-on going forward
-on came from back
-on came from forward
-better state serialisation for going back/forward
-
-
-some sort of markup to tell google _not_ to index a particular part of the site
-
-
-http://www.cs.tut.fi/~jkorpela/html/em.html
-
-<htmlarea>, <xmlarea>...
-
-> 3) Extensible syntax highlighting (coloring). I am aware that a ton of
-> code editors don't even do this well. The ability to load a syntax
-> definition file and have it color a block of code would do wonders for
-> making the web a more friendly place to script.
- - Ryan Johnson
-
-toolbars, status bars. - Didier PH Martin
-
-   * methods/properties for scrolling managing, especially in
-   TextArea, such as .scrollTop and .scrollHeight in Mozilla and -
-
-
-Robert Bateman:
-
-   I've looked thru as many of the examples from around the web as I can find and
-   don't see an obvious way to do date calculations.
-
-   What I'm trying to do is populate an xsd:date field with now() plus 5 days as
-   it's default value.  The field in question is a proposed "due date" for a
-   work order.
-
-   I've seen that I can get a "difference" between two dates, but no
-   calculations.
-
-
-Wladimir Palant pointed out problems with chunking with server-sent-events
-
-
-
-> 2.  Some method of integration to allow Web apps to respond
->      to the browser's Cut, Copy, Paste, and Select All menu
->      items and keyboard equivalents. These work automatically
->      for text fields in any Web application; it would be
->      great if apps could make them work for stocks, address
->      book cards, message attachments, transactions, photos,
->      and so on too.
->
->      I'd add Undo and Redo to that list, but unfortunately
->      IE6 doesn't have Undo and Redo menu items.
- - mpt
-
-
-
->> maybe except for the server sent events and the clipboard
->> api (but even in those cases it might be possible).
->
-> Clipboard API I don't really want to see, given the problems IE's
-> implementation of such brought up. A better standardised drag-and-drop
-> interface would be great though, as doing it with mouse events and IE's
-> proprietary events is annoying-to-impossible to get right all the time.
->
-> I really like the idea of server-side events, though I would prefer to
-> have them set up by a scripting call rather than an HTML element.
- - Andrew Clover
-
-
-    <html application="application">
-
-...would, instead of showing the Web page itself, the first time, show
-(inline in the browser):
-
-  :::: Security Warning :::::::::::::::::::::::::::::::::::::
-  ::                                                       ::
-  ::  The Web page at this domain:                         ::
-  ::                                                       ':
-  ::     paypcl.com                                        
-  ::                                                       
-  ::  ...wishes to launch an application in a separate     
-  ::  window. Do you trust this domain?                    
-  ::                                                       
-  ::  [x] Remember this decision.                          
-  ::                                                       
-  ::      (( Trust paypcl.com ))  ( Display as Web page )  
-  ::                                                      
-  :::::.
-- (spurred on by Jose Dinuncio)
-
-
-  :::: Security Warning :::::::::::::::::::::::::::::::::::::
-  ::                                                       ::
-  ::  This Web page wishes to launch an application in a   ::
-  ::  separate window. Do you trust this domain?           ::
-  ::                                                       ::
-  ::     paypcl.com                                         '
-  ::                                                       
-  ::             ( Trust this site for now )
-  ::
-  ::              ( Always trust this site )
-  ::
-  ::              (( Display as Web page ))
-  ::                                                      
-  :::::.
-
-
-breadcrumb navigation markup
-other markup:
-   http://www.stuffandnonsense.co.uk/archives/whats_in_a_name_pt2.html
-
-
-common icons: http://www.intersmash.com/300images/
-
-
-http://www.gadgetopia.com/2004/06/18/DoYouWantToSaveYourChanges.html#Comments
-
-http://www.mojavelinux.com/cooker/demos/domTT/index.html
-
-http://www.mozilla.org/projects/ui/accessibility/dynamic-accessibility.html
-
-http://blog.colorstudy.com/ianb/weblog/2004/06/23.html
-http://daringfireball.net/2004/06/location_field
-
-listview/gridview API
-http://www.activewidgets.com/grid/
-
-
-> I would rather have it that changing the dom attribute 'value' or typing
-> in the textarea, would also change the contents of the textnode in the
-> textarea.
->
-> In that way the dom level 2 traversal and range specification would not
-> be useless for textarea's.
-> 
-> The same goes for input text controls and probably also for other form
-> controls.
- - martijnw
-
-
-
-1. point to an xml instance and cause the page to be filled in
-2. serialise the site to a version of that xml instance
-
-<menu>
- <li state="bar"/>
-</menu>
-<button state="bar"/>
-<state id="bar" label="" disabled="" value=""/>
-
-<input state="foo"/>
-<input state="foo"/>
-<input state="foo 2"/>
-<input state="foo 2"/>
-<state id="foo" model="x" ref="cat:orderLine[$v1]/cat:foo"/>
-
-<instance src=""/>
-
-<instance id="x">
-
-<Order xmlns="urn:oasis:names:tc:ubl:Order:1.0:0.70" xmlns:cat="urn:oasis:names:tc:ubl:CommonAggregateTypes:1.0:0.70">
-  <cat:ID/>
-  <cat:IssueDate/>
-  <cat:LineExtensionTotalAmount currencyID="USD"/>
-  <cat:BuyerParty>
-    <cat:ID/>
-    <cat:PartyName>
-      <cat:Name/>
-    </cat:PartyName>
-    <cat:Address>
-      <cat:ID/>
-      <cat:Street/>
-      <cat:CityName/>
-      <cat:PostalZone/>
-      <cat:CountrySub-Entity/>
-    </cat:Address>
-    <cat:BuyerContact>
-      <cat:ID/>
-      <cat:Name/>
-    </cat:BuyerContact>
-  </cat:BuyerParty>
-  <cat:SellerParty>
-    <cat:ID/>
-    <cat:PartyName>
-      <cat:Name/>
-    </cat:PartyName>
-    <cat:Address>
-      <cat:ID/>
-      <cat:Street/>
-      <cat:CityName/>
-      <cat:CountrySub-Entity/>
-    </cat:Address>
-  </cat:SellerParty>
-  <cat:DeliveryTerms>
-    <cat:ID/>
-    <cat:SpecialTerms/>
-  </cat:DeliveryTerms>
-  <cat:OrderLine>
-    <cat:BuyersID/>
-    <cat:SellersID/>
-    <cat:LineExtensionAmount currencyID=""/>
-    <cat:Quantity unitCode="">1</cat:Quantity>
-    <cat:Item>
-      <cat:ID/>
-      <cat:Description>Enter description here</cat:Description>
-      <cat:SellersItemIdentification>
-        <cat:ID>Enter part number here</cat:ID>
-      </cat:SellersItemIdentification>
-      <cat:BasePrice>
-        <cat:PriceAmount currencyID="">0.00</cat:PriceAmount>
-      </cat:BasePrice>
-    </cat:Item>
-  </cat:OrderLine>
-</Order> 
-
-</instance>
-
-
-
-
-  <h2>Tree and List Widgets</h2>
-   click item to go url
-   doube click to submit form with value
-   sort list by any column
-   specify column headers, column sort types
-   specify data inline, or out of band
-   data can be linear or a one way tree
-   rows can have an icon associated with them
-   rows can have overlays associated with them
-
- progress meter
-
-    http://www.gazingus.org/html/menuDropdown.html
-
-
-
-Disclosure triangles
-
-
-I think UAs should automatically highlight the accesskey (or add it in    
-brackets if it isn't already in the string). I am thinking of writing some
-text - optional, of course, since this wouldn't apply to all UAs or all  
-platforms - that specifies this.
-
-I also think that there should be an accesskey value which is basically   
-"auto", and which picks a non-clashing access key based on the element    
-content.
-
-
-
-| adding HTTP authentication capabilities to HTML allow sites to:
-|   - remove a site's authentication state from the browser when
-|     activated (i.e., a "log out" interface)
-|   - add user data to a site's authentication state in the browser
-|     (i.e., "log on" interfaces)
-|   - display the user's current authentication state
-| 
-| There are a few good reasons to do this. Many sites use cookies to
-| authenticate users, because HTTP authentication doesn't have any
-| mechanism to allow logging out (a key requirement of financial
-| institutions and other sensitive applications), and because the UI for
-| HTTP authentication can't be controlled, and doesn't offer an
-| "anyonymous" / "not logged in" view.
-| 
-| By accommodating HTTP authentication in Web forms, it will be possible
-| to have styled, custom "log on" interfaces as part of pages, as well
-| as "log out" facilities, while still retaining the benefits of HTTP
-| authentication.
-| 
-| Specifically, HTTP authentication is more secure than cookies (when
-| Digest auth is used), and is more amenable to automated processes
-| (agents, spiders, etc.) as well as alternate browsing devices (screen
-| readers, etc.).
-
-
-http://jogin.com/weblog/archives/2004/07/19/hierarchy
-
-
-Yeah, <header> and <footer> or similar elements are almost certainly going
-to be defined at some point, along with <content> (for the main body of
-the page), <entry> or <post> or <article> to refer to a unit of text
-bigger than a section but smaller than a page, <aside> to mean a
-side bar, <note> to mean a note... and so forth. Suggestions welcome.     
-We'll probably keep it to a minimum though. The idea is just to relieve   
-the most common pseudo-semantic uses of <div>.
-
-
-http://lxr.mozilla.org/seamonkey/source/dom/public/idl/base/nsIDOMWindow.idl
-scrollBy, etc
-http://lxr.mozilla.org/seamonkey/source/dom/public/idl/base/nsIDOMWindowInternal.idl
-DOM level 0
-
-
-DH: I was arguing that you should be able to get the CSS info for
-document fragments if you had an owner document with CSS in it.
-
-
-
-So maybe:
-
-   var library = new ZipFile("data.zip");
-   library.onload = function() {
-      var sound1 = library.getAudio("sound1.wav"); // returns an Audio object
-      var image1 = library.getImage("image1.png"); // returns an HTMLImageElement
-      var doc1 = library.getXMLDocument("doc1.xml"); // returns a Document
-      var doc2 = library.getHTMLDocument("doc1.html"); // returns an HTMLDocument
-   }
-
-Also maybe supporting more than one file at a time:
-
-   var library = new ResourceLoader("data.zip");
-   library.add("moredata.zip");
-   library.onload = function() { ... }
-   library.onloading = function() {
-      reportLoadProgress(library.progress); // 0.0 .. 1.0
-   }
-
-...although I'm not sure how we would then deal with filename clashes.
-
-   var library = new AudioZip("sounds.zip");
-   library.onload = function() {
-      var sound1 = library["sound1.wav"];
-      sound.play();
-   }
-
-
-If we define onbeforeunload, then we have to say that the JS
-implementation of EventListener::handleEvent checks for that event,
-treating the return value as the string to use for the unload warning
-message if there is a return value, and calling preventDefault if
-there isn't.
-
-
-> > > Schematic editors, layout editors, interactive maps, data 
-> > > visualization for network flows, etc.
-> Searching the web for the above keywords should find you a lot more.
- - Denis Bohm
-
-
-
-Jens Meiert:
-- For non-native English speakers, it's sometimes difficult to understand
-the difference between <cite /> and <quote />, since citations often seem to
-be quoted, too (this is a presentational aspect, I know).
-- Is it right that the <dfn /> element [1] /must/ be used only in the
-context of the definition of the enclosed term (as the example suggests)?
-(If so, wouldn't it be useful to add this note, too?)
-
-
-http://secunia.com/advisories/9711/
-In particular number 7. - Chris Hofmann
-
-
-> [1] http://www.stopdesign.com/log/2004/08/25/microsoft-advances.html
-> [2] http://www.stopdesign.com/articles/throwing_tables/
-
-
-
-
-> http://channel9.msdn.com/wiki/default.aspx/Channel9.InternetExplorerFeatureRequests
->    Alternate way of caching content
->    Avalon Integration
->    getData/setData improvement (clipboardData)
->    Input type=file improvements
->    HTML editing: Editing Tables
->    Input type=file improvements
->    .NET framework
->    
-> http://channel9.msdn.com/wiki/default.aspx/Channel9.InternetExplorerOutrageous
->     Some decent controls
- - lachlan.hunt at lachy.id.au
-
-
-http://lists.w3.org/Archives/Member/w3c-html-wg/2004JulSep/att-0135/role072704a.html
-
-
-> I've encountered two situations where setting or retrieving the caret
-> position would be useful.  The first is a situation where I'd like to
-> apply an input mask to a text box.  For example, I'd like the ability to
-> create a text box where the date delimiters (dashes or slashes) appear  
-> automatically in a text box upon entering the field, and when the user  
-> types in the field, it fills into the appropriate spaces in the input    
-> box and sets the text selection to the next appropriate position, all    
-> while allowing the user to reposition the cursor within the text box     
-> with a keyboard or mouse without being able to edit or delete the
-> delimiters (dashes or slashes).  This would be very similar to input
-> mask features in certain native apps that I've used.
- - Greg Kilwein
-
-> The second situation is an application that would like to highlight text  
-> in a text box or textarea for the purposes of a spell check, thesaurus, 
-> or search-and-replace operation.
- - Greg Kilwein
-
-
-
-
-HTMLImageElement.click(x, y); (for Csaba Gabor)
-or clickPoint, if click() can't be done in IE
-can this be emulated in IE by posting a synthetic moue click event
-with those X and Y coords?
-
-
-<menulabel>, or rather menus in general, need an icon attribute and a
-hide attribute, like the <command> element.
-
-
-What about safe clipboard access.
-As discussed before by others as well:
-The user initiates a paste action as recognized by the UISystem the user is working in.
-E.g pressing Ctrl-V or selecting paste from a context menu.
-An event is fired and a Listener can now access the pasted data as part of the event object.
-The same for cut and copy. The Listner can set data as part of the event object.
-This is safe and will not allow any script to mess with the clipboard without the user specifically asking for it
-by initiating a cut/copy/paste action.
- -  Jan-Klaas Kollhof
-
-
-Need to say that NodeList's items are enumerable, so that for (var x in myNodeList) { } works.
- thank Dethe Elza
-
-rel="" on submit buttons?
-
-what does <label> _mean_? how about an empty one, one which contains
-more than one control, no controls?
-
-
-
-need conformance section for editors, which says stuff like "can't be
-conforming if editor has an "italics" button"
-
-people want multiline tooltips with explicit line breaks
-
-
-
-attributes of type ID that have no value beyond the empty string do
-not give the element an ID of "".
-
-
-ability for a web app to save a file to the local disk:
-   var file = window.openFile(); // throws up UI
-   file.read();
-   var file = window.saveAsFile(); // throws up UI
-   file.write();
-...or something? Or use data: URLs and right-click-to-save?
-
-http://lxr.mozilla.org/mozilla/source/dom/public/idl/html/nsIDOMNSHTMLDocument.idl
-
-
-  <p><em>This section is non-normative.</em></p>
-
-
-how to handle 404s and 500s and other non-OK responses when it comes
-to <script>, <link>, <style>, etc.
-
-
-normative classes:
-  -example
-  -note
-  -warning
-  -issue
-  hCard, hCalendar
-  wiki based registration, first come first served
-   * class:
-   * applies to elements:
-   * processing model:
-   * status:
-
-
-<Hixie> vlad: you should define what the UA should do with out-of-order aDATs
-<pav> its an error
-<pav> pretty sure we say that somewhere
-<Hixie> yes i know it's an error
-<Hixie> but that doesn't say what the UA should do
-<pav> error == image is invalid
-<vlad> yep
-<vlad> either broken image icon
-<vlad> or display first frame (fall back to normal PNG)
-<vlad> up to the UA
-<Hixie> right
-<Hixie> you should say which one
-<pav> its up to the UA
-<Hixie> why?
-<vlad> "SHOULD display the first frame, but MAY display broken image icon if that's not convenient", in rfc parlance
-<vlad> because it's not useful to specify that, IMO
-<Hixie> up to the UA means one UA will implement something, it'll become a popular UA, then all the others will have to copy it.
-<vlad> how a UA wants to handle image errors is up to the UA
-<pav> we're designing an image format, not the html image tag
-<pav> the html spec should say what to do with it
-
-
-<title> is for out of context headers
-<h1> is for in-context headers
-
-The parsing rules of HTML
-
-media="" is case-insensitive
-
-empty title attribute is equivalent to missing attribute for purposes
-of alternate style sheet processing
-
-
-<p>s that contain <ul><ol><table><dl><blockquote>? (did we get all those?)
-
-
-
-> I'd like search engines to be able to show me the title of a page in the
-> same consistent position in a search result, and the name of the site
-> (if available) in the same consistent position in a search result, and
-> the name of the author (if available) in the same consistent position in
-> a search result.
->  
-> For that to happen, it would help slightly if the HTML specification
-> stopped SHOULD-ing the current <title> behavior. It would help more if
-> the HTML specification contained clear, straightforward markup for
-> author and site name (and encouraged UAs to present this information   
-> when the document is taken out of context).
-
-   <title site="" publisher="" author="">Page Title</title>
-   <title>Page Title - <site></site> - <author></author> (<publisher></publisher>)</title>
-
-   <title>Page Title</title>
-   <link rel="top" title="" href="">
-   <link rel="publisher" title="" href="">
-   <link rel="author" title="" href="">
-
-
- h1 is styled appropriately, h2 to h6 are styled according to legacy.
-
-
-[onclick] should make element focusable; enter should send onclick
-
-define implied <html>, <head>, <body>, <p>, </p>, etc.
-
-http://www.aujsproduction.com/samples/wishlist/revampedselector.asp
-
-
-need a summary of all the content models and how they interact:
-   a | interactive strictly inline-level element   | where inline-level content is expected | strictly inline-level content  | interactive elements must not be nested
-   i | strictly inline-level element               | where inline-level content is expected | strictly inline-level content  |
-  em | strictly inline-level element               | where inline-level content is expected | inline-level content           |
-   p | block-level element, structured inline-     | where block-level content is expected, | inline-level content           | must not be nested
-     | level element                               | where inline-level content is expected |                                |
-...etc
-
-
-need a summary of the differences between the HTML and XML serialisations.
-
-
-
-Google suggest: oninput -> submit a form whose only contents is the
-drop down list which you refresh (<datalist>).
-
-Inline editing of <select multiple=""> boxes
-
-image buttons shouldn't be used unless you want the coordinate
-
-need for the spec to say something about sending proprietary data over
-the network, e.j. in XMLHttpRequest and other data streams. Is it ok,
-if the page is doing the translation?
-
-built-in spell-checking in <input type="text">, <textarea>
-
-author-driven highlighting of individual words in text fields
-
-
-support access Array element via () instead of [] (IEism)
-- https://bugzilla.mozilla.org/show_bug.cgi?id=289876
-
-
-atom can do this:
-       <author>
-         <name>Mark Pilgrim</name>
-         <uri>http://example.org/</uri>
-         <email>f8dy at example.com</email>
-       </author>
-       <contributor>
-         <name>Sam Ruby</name>
-         <uri>http://intertwingly.net/blog/</uri>
-       </contributor>
-how do we do this in HTML5? (what's the use case?)
-
-how to interpret an HTML5 document for syndication
-http://hixie.ch/specs/hsf/hsf
-
-
-
-section "rendering HTML" has to cope with:
- <q> element's quotes
- <section> <h1>
- default margins and paddings for <ul>, <form>, etc.
-
-  <h4>The <code>q</code> element</h4>
-  <p class="big-issue">Need to deal with the quotemark problem without
-  adding verbose markup, breaking existing documents, or adding
-  redundant elements.</p>
-
-
-
-<Hixie> here's how <object> works (assuming you don't support ActiveX)
-<Hixie> 1. look at the data="" attribute. If it's not there, go to the step i'll label "bail" below.
-<Hixie> 2. fetch the file indicated by the data="" attribute.
-<Hixie> 3. while waiting for the MIME type, treat <object> as a replaced element of transparent nothingness, intrinsic size zero.
-<hyatt> (so we would honor width/height)
-<hyatt> (because it's replaced)
-<Hixie> (yes)
-<Hixie> 4. if the MIME type is a long time coming (e.g. DNS is being slow) then jump to the "bail" step below until you have the MIME type, then jump back to step 5.
-<Hixie> 5. Once you have the MIME type, examine it. If it's a plugin type, jump to the plugin step below. If it's an image, jump to the image step below. If it's a document type (HTML, XML, etc) jump to the iframe step below. Otherwise, you don't recognise it, and jump to the "bail" step.
-<Hixie> plugin step: collect all the <param> element children in the <object>. instantiate the plugin and pass the params to it.
-<Hixie> image step: render the <object> as if it was an <img>
-<Hixie> document step: render the <object> as if it was an <iframe>
-<Hixie> bail step: render the <object> as if it was a <span>
- - if there is no authoratative MIME type, then use the type="" attribute.
- - if type="" is something you know you don't support, you MAY not download it
- - if type="" is dynamically changed, do nothing
- - if data="" is dynamically changed, redo loop
-
-<hyatt> apparently your url can come from <param>
-<hyatt> not just the data attribute
-<hyatt> our code looks for params with "src", "movie", "code" and "url"
-<hyatt> and also tries to find the type on a param
-<Hixie> oh that's you trying to have hacky activex support
-<Hixie> opera does that too
-<hyatt> yeah we support activex versions of plugins that are common
-<hyatt> like flash and quicktime and realaudio
-<Hixie> that would be a step 1b. if no data attribute, then look for a <param> to get you a URL instead.
-<Hixie> and if you find one, carry on as if that was your data="".
-
-
-should have some text talking about the fact that it's ok if your page
-passes through a period of non-conformance while script is running,
-but that in between scripts it should be compliant.
-
-
-how to handle 205 reset content responses and other HTTP codes in
-response to link clicks, link clicks with target="" attributes,
-window.open(), the user typing a URL in the URL bar, etc.
-
-XXX Native code for fast sorting of many data?
-
-http://www.microsoft.com/mind/1097/directanim.asp
-
-
-events: onmousewheel
-<hyatt> with a wheelDelta field on the WheelEvent (whcih comes off UIEvent)
-<hyatt> but in OS X you can wheel horizontally 
-<hyatt> so we actually added wheelX, wheelY, and wheelZ
-<hyatt> with wheelDelta just mapping to wheelY for WinIE compat
-<Hixie_> oh i don't mind wheelZ, maybe we can even say ctrl+wheel should map to it on some platforms (windows)
-<hyatt> but if you hold down Shift+mouse wheel in mac apps on os x you'll wheel horizontally
-wheelDelta is multiples of 120
-http://msdn.microsoft.com/workshop/author/dhtml/reference/properties/wheeldelta.asp
-
-events:
-http://damowmow.com/temp/safari/WebCore-315/khtml/ecma/kjs_events.cpp
-
-Need to resolve whether <a rel=""> should affect an out-of-band UI (or
-whether it should just be a may), see
-https://bugs.opera.com/show_bug.cgi?id=169791
-
-
-should have appendix listing what was already implemented
-- http://www.xml.com/pub/a/2005/04/27/deviant.html
-
-| Hixie and Steven shared an item: in both XHTML2 and HTML5, it will
-| be possible to have a list child of a paragraph. That's good, from a
-| structural point of view. But that's bad, from a user's point of
-| view. Imagine you have a paragraph, with red background color. And
-| you have an unordered list in your clipboard. You place the caret at
-| the end of the paragraph and paste your list. Where does it end up?
-| In the paragraph or after it? Red background or not? I really fear
-| that, once again, document model authors are completely neglecting
-| the authoring side.
- - http://www.glazman.org/weblog/dotclear/index.php?2005/05/27/1055-adam-2
-
-need to define how to process MIME types in <style> and <script> and so forth.
-
-http://www.paulgraham.com/popular.html
-
-
-
-
-"you have mail": bubble notification; flash taskbar button, 
-=> how do you stop advertisers?
-
-
-
-events should bubble from documents to Window
-
-say something about events fired on <body> -> document -> window, like
-onload? onpopstate is defined as body->html->doc->window; as is the
-local storage event. What about the old ones, how do they work? load,
-error, scroll, resize, etc?
-
-If we assuming that bubbling events bubble from document to window,
-then it seems reasonable for scroll events that bubble to be fired at
-the document if the window is resized, and scroll events that don't
-bubble to be fired at elements if they are scrolled. window.onscroll
-and document.onscroll should both work.
-
-
-[HIT TESTING TRANSPARENCY]
-Definition: IE considers a point of an element "transparent" if any
-one of the following are true:
-
- 1. All of the following are true:
-    a: The computed value of 'background-image' is 'none', and
-    b: The computed value of 'background-color' is 'transparent', and
-    c: The point is over a pixel of an AlphaImageLoader filter image
-       that has an alpha value of 0 (fully transparent), or the
-       element does not have an AlphaImageLoader filter applied;
-
- 2. The point is outside the element's CSS clip rectangle;
-
- 3. The computed value of 'visibility' is 'hidden';
-
- 4. The element is a transparent IFRAME (in IE, an IFRAME with the
-    custom attribute "allowtransparency");
-
- 5. The element is an OBJECT with the custom attribute "wmode" set to 
-    "transparent" and the point in question is fully transparent.
-
-Given those definitions, when a mouse event occurs, IE finds the
-target element as follows:
-
-   A. Take the topmost node that is under the point where the pointer
-      was for the event. For CSS boxes, borders, padding areas and
-      content areas are considered part of the node, margins and
-      leading generated by the 'line-height' property are not.
-
-   B. If there is no node at that point, no event is fired. STOP.
-
-   C. If the node is a text node, then the event is fired at the text
-      node's nearest ancestor element node. STOP.
-
-   D. If the node is not an element, assign the node's nearest
-      ancestor element node to a variable X. Otherwise, assign the
-      element node itself to X.
-
-   E. If the element X is the BODY element or the HTML element and its
-      document is not the document of a transparent IFRAME, goto step
-      H. Similarly, if the element X is a TABLE element, or is an IMG
-      element, goto step H.
-
-   F. If the point where the pointer was is, per the above definition,
-      a point that on the element X is transparent, then ignore that
-      element and assign the element that is below that element in the
-      stacking order to X. If there is no element below X, or if the
-      point on X is not transparent and so the previous condition
-      doesn't apply, then leave X as is and go straight to step H.
-
-   G. Goto step E.
-
-   H. If the element X is now a BODY or TABLE element, but the element
-      assigned to X in step D was some other element, assign the
-      element originally assigned in step D back to X.
-
-   I. The event goes to X. STOP
-
-
-
-
-mousedown's default action is focus, so canceling mousedown stops focus transference.
-e.g. on http://www.mozilla.org/editor/midasdemo/
-
-xref all the _ERR exceptions to DOM3CORE
-
-
-<select><option><hr> support
-
-
-raising an exception when the wrong number of arguments is passed -
-is that a language-specific thing, or what?
-
-
-reload: fire an event when "reload" is pressed so that the page can
-reload its data instead of the whole page. cancel the event cancels
-the HTTP reload. Abuse prevention required, though.
-
-
-load event: fire on body, document, window? or just let it bubble?
-
-
-http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/elementfrompoint.asp
-http://msdn.microsoft.com/workshop/author/dhtml/reference/methods/showmodaldialog.asp
-
-
-refs for TCP/IP (rfc793) and IPv6
-
-http://www.joelonsoftware.com/items/2004/06/17.html
-http://www.joelonsoftware.com/items/2004/06/18.html
-
-
-<neutralise> block that kills scripting or anything dangerous?
-
-
-XXXX need explanation of when to use undo/redo, and when to use back/forward
-
-XXX "alternate style sheet" should be "alternative style sheet"
-
-
-
-
-  <h5>Using the <code>a</code> element with the <code>command</code> attribute</h5>
-
-  <p>If an <code>a</code> element has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>Even if the element's <code>href</code> attribute is absent, the
-  element must still match the CSS <code>:link</code> or
-  <code>:visited</code> pseudo-classes. It must match the
-  <code>:visited</code> pseudo-class if the command's action is to
-  follow a link that has already been visited by the user, and must
-  match the <code>:link</code> pseudo-class otherwise.</p>
-
-  <p>If a <code>DOMActivate</code> event is dispatched on the element
-  and is not canceled, and the event has no other default action, and
-  the command's Disabled State is false (enabled), then the command's
-  Action must be triggered as the default action.</p>
-
-  <p class="note">The <code>DOMActivate</code> event is fired as the
-  default action of the <code>click</code> event.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled and must therefore match the
-  <code>:disabled</code> pseudo-class. UAs should style disabled links
-  in such a way as to clearly convey their disabled state.</p>
-
-  <p>The Label, Icon, Checked State and Type facets of the command are
-  ignored by the <code>a</code> element (except for <a
-  href="#pseudosAndCommands">matching CSS pseudo-classes</a>).</p>
-
-  <h5>Using the <code>button</code> element with the <code>command</code> attribute</h5>
-
-  <p>If a <code>button</code> element has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>If a <code>DOMActivate</code> event is dispatched on the element
-  and is not canceled, and the event has no other default action, and
-  the command's Disabled State is false (enabled), and the button's
-  <code>disabled</code> attribute is absent, then the command's Action
-  must be triggered as the default action.</p>
-
-  <p class="note">The <code>DOMActivate</code> event is fired as the
-  default action of the <code>click</code> event.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled. The <code>button</code> element must also
-  be disabled if the element's <code>disabled</code> attribute is
-  set.</p>
- 
-  <p>The Label, Icon, Checked State and Type facets of the command are
-  ignored by the <code>button</code> element (except for <a
-  href="#pseudosAndCommands">matching CSS pseudo-classes</a>).</p>
-
-  <h5>Using the <code>input</code> element with the <code>command</code> attribute</h5>
-
-  <p>If an <code>input</code> element has no <code>type</code>
-  attribute and no <code>name</code> attribute, and it has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the command is of Type "command" then the element must
-  generally be styled and behave as if it was of type
-  <code>button</code>; if the Type of the command is "radio" then the
-  element must generally be styled and behave as if it was of type
-  <code>radio</code>; and if the Type of the command is "checkbox"
-  then the element must generally be styled and behave as if it was of
-  type <code>checkbox</code>.</p>
-
-  <p>If the command is of Type "command" and the element's
-  <code>value</code> attribute is absent, then when the UA attempts to
-  display the element's caption, it must instead use the specified
-  command's Label. The Label facet is ignored if the command is not of
-  Type "command".</p>
-
-  <p>The UA may use the Icon facet of the command to render an
-  icon in the control, if appropriate for the UI used.</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>If a <code>DOMActivate</code> event is dispatched on the element
-  and is not canceled, and the event has no other default action, and
-  the command's Disabled State is false (enabled), and the element's
-  <code>disabled</code> attribute is absent, then the command's Action
-  must be triggered as the default action.</p>
-
-  <p class="note">The <code>DOMActivate</code> event is fired as the
-  default action of the <code>click</code> event.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled. The <code>input</code> element must also
-  be disabled if the element's <code>disabled</code> attribute is
-  set.</p>
-
-  <p>If the command's Checked State is true (checked) then the element
-  must be checked. The <code>input</code> element must also be checked
-  if the element's <code>checked</code> attribute is set.</p>
-
-
-
-
-  <p>This element should not be directly displayed. In CSS-aware user
-  agents, this should be achieved by including the following rules, or
-  their equivalent, in the UA's user agent style sheet:</p>
-
-  <pre>@namespace xh url(http://www.w3.org/1999/xhtml);
-xh|command { display: none; }</pre>
-
-
-
-  <h5 id="command-with-command">Using the <code>command</code> element with the <code>command</code> attribute</h5>
-
-  <p>If a <code>command</code> element has a <code
-  title="command-attribute">command</code> attribute, then:</p>
-
-  <p>If the element's <code>label</code> attribute is absent, then
-  when the UA attempts to display the element's caption, it must instead
-  use the specified command's Label.</p>
-
-  <p>If the element's <code>icon</code> attribute is absent, then
-  when the UA attempts to display the element's icon, it must instead
-  use the specified command's Icon.</p>
-
-  <p>If the element's <code>title</code> attribute is absent, then
-  when the UA attempts to display the element's hint, it must instead
-  use the specified command's Hint.</p>
-
-  <p>If a <code>click</code> event is dispatched on the element and is
-  not canceled, and the command's Disabled State is false (enabled),
-  and the element's own <code>disabled</code> attribute is absent,
-  then the command's Action must be triggered as the default
-  action.</p>
-
-  <p>If the command's Disabled State is true (disabled) then the
-  element must be disabled. The <code>command</code> element must also
-  be disabled if the element's <code>disabled</code> attribute is
-  set.</p>
-
-  <p>If the command's Checked State is true (checked) then the
-  element must be checked. The <code>command</code> element must also
-  be checked if the element's <code>checked</code> attribute is
-  set.</p>
-
-  <p>When a <code title="command-element">command</code> element has a
-  <code title="command-attribute">command</code> attribute, any <code
-  title="attr-command-type">type</code> and <code
-  title="attr-command-radiogroup">radiogroup</code> attribute is
-  ignored.</p>
-
-
-  <h4 id="pseudosAndCommands">CSS pseudo-classes and commands</h4>
-
-  <p>When an element uses the <code
-  title="command-attribute">command</code> attribute, any UI
-  pseudo-classes from the following list that apply to the element
-  defining the command also apply to the elements that refer to that
-  command.</p>
-
-  <dl>
-
-   <dt>:enabled, :disabled</dt>
-
-   <dd>Matches commands whose Disabled State facet is False and True
-   respectively.</dd>
-
-   <dt>:checked</dt>
-
-   <dd>Matches commands whose Type facet is either "radio" or
-   "checkbox", and whose Checked State facet is true.</dd>
-
-  </dl>
-
-
-
-  <p><code>menu</code> elements with explicit <code>label</code>
-  attributes, and <code>menu</code> elements following
-  <code>menulabel</code> elements, should be hidden. In CSS-aware UAs,
-  this effect should be achieved by including the following rules, or
-  their equivalent, in the UA's user agent style sheet:</p>
-
-  <pre>@namespace xh url(http://www.w3.org/1999/xhtml);
-xh|menu[label], xh|menulabel + xh|menu { display: none; }</pre>
-
-  <p>All other <code>menu</code> elements should be rendered
-  identically to <code>ul</code> elements. In CSS-aware UAs, this
-  effect may be achieved by including rules similar to the following
-  in the UA's user agent style sheet:</p>
-
-  <pre>@namespace xh url(http://www.w3.org/1999/xhtml);
-xh|menu { display: block; margin: 0 0 0 40px; list-style: disc; }</pre>
-
-
-
-
-  <h5>Displaying menus</h5>
-
-  <p>When a <code>menu</code> element is activated, the associated
-  menu should be constructed and shown. (For details on how a
-  <code>menu</code> element can be activated, see the sections on
-  <span>menu links</span> and <span>menu bars</span>.)</p>
-
-  <p>The styles applied to each element in the <code>menu</code>
-  element, as well as the element itself, may be applied when
-  constructing a menu. UAs are recommended to not apply styling to
-  context menus and menus for application menu bars, and to only use
-  styles for in-page menus.</p>
-
-  <p>If user agents support styling of menus, they should support only
-  the '<code>background</code>', '<code>color</code>',
-  '<code>border</code>', '<code>padding</code>' and
-  '<code>font</code>' properties on menus and menu items. (This list
-  might be incomplete; in general, properties that merely affect the
-  appearance of the element should work, but properties that affect
-  the layout should not.)</p>
-
-  <p>As the user interacts with a menu, the elements from which the
-  menu was created should have appropriate pseudo-classes (:hover,
-  :focus, :active) applied.</p>
-
-  <p>The menu items must consider only the computed styles of the
-  elements from which they were derived, not other elements.</p>
-
-  <div class="example">
-
-   <p>For example, take this menu:</p>
-
-   <pre><menu>
-<li><command label="a"/></li>
-<menu></pre>
-
-   <p>The menu has one menu item, labeled "a".</p>
-
-   <p>Styles applied to the <code>li</code> element in this menu would
-   have no effect on the rendered menu, except in so far as styles
-   inherit from that element to the <code>command</code> element.</p>
-
-   <p>Styles applied to the <code>command</code> element could affect
-   the menu. While the user is hovering over the menu item, the
-   <code>:hover</code> pseudo-class matches the <code>command</code>
-   element and any appropriate newly matching rules could be
-   applied.</p>
-
-  </div>
-
-  <p>When activated from a <span title="menu links">menu link</span>,
-  a menu must be placed in an Appropriate Place. Specifically, if the
-  <code>a</code> element is displayed as a vertically-stacked box (as
-  is typically seen for elements with '<code>display: block</code>',
-  '<code>list-item</code>', or '<code>table</code>'), then the menu
-  should appear vertically below the element, anchored so that one of
-  its top corners coincides with a bottom corner of the box so that
-  the menu and the box each have a horizontal sides in common (or a
-  bottom corner of the menu coincides with a top corner of the box, if
-  there isn't enough room for the menu to drop down); otherwise, if
-  the element is displayed as a horizontally stacked box
-  ('<code>display: inline</code>', '<code>table-cell</code>', etc),
-  the menu should appear to the <em>side</em> of the box in an
-  analogous way. If the element is on the right of the page, the menu
-  should drop to the left, and vice versa.</p>
-
-  <p>UAs should implement the drop-down behavior in more
-  platform-appropriate ways if the platform conventions differ from
-  the behavior described above.</p>
-
-
-
-
-  <h4>The <dfn title="command-attribute"><code>command</code></dfn>
-  attribute</h4>
-
-  <p>Any element that can define a command can also, instead, have a
-  <code>command</code> attribute that specifies the ID of a command
-  that the element should defer to. In this case the element does not
-  define a command, but, in the absence of attributes to the contrary,
-  reflects the state of the element specified.</p>
-
-  <p>If the <code>command</code> attribute specifies an ID that is not
-  the ID of an element that defines a command, then the
-  <code>command</code> DOM attribute is set to the null value, and the
-  element acts as if it was linked to an element that defined a
-  command with no Label, no Hint, no Icon, no Action, that was not
-  Hidden, not Disabled, not Checked, and that was of Type
-  "command".</p>
-
-
-replaceable DOM properties: http://lxr.mozilla.org/mozilla/source/dom/src/base/nsDOMClassInfo.cpp#5928
-<       brendan>|Hixie: so yeah, lxr for JSRESOLVE_QUALIFIED
-
-screen object:
-screen contains top left width height pixelDepth colorDepth availWidth availHeight availLeft availTop
-
-
-
-  <p>The most direct way to represent a command is by using the <code
-  title="command-element">command</code> element. A <code
-  title="command-element">command</code> element defines a command if
-  it does not have a <code title="command-attribute">command</code>
-  attribute.</p>
-
-  <div class="example">
-   <pre>...
- <command id="c_stop" label="Emergency Stop" onclick="dostop()"/>
- <command id="c_go" label="Go" onclick="dogo()"/>
- <command id="c_lamp" label="Headlamps" onclick="dof2()" disabled="disabled"/>
-...</pre>
-</div>
-
-  <p>The <code>command</code> element, in addition to the core and
-  internationalisation attributes, may have the following
-  attributes specified:</p>
-
-  <dl>
-
-   <!-+- yes i know that some of these are core attributes. If you can
-   give me a better introductory paragraph, I'm all for it. -+->
-
-   <dt><dfn title="attr-command-type"><code>type</code></dfn></dt>
-
-   <dd>The command's Type. If present, this attribute must either have
-   the value <code>radio</code>, in which case the command is of Type
-   "radio", or the value <code>checkbox</code>, in which case the
-   command is (amazingly) of Type "checkbox". Any other value, or the
-   absence of the attribute altogether, means that the command is of
-   Type "command".</dd>
-
-   <dt><dfn title="attr-command-id"><code>id</code></dfn></dt>
-
-   <dd>The command's ID. If this attribute is not specified, then the
-   command is anonymous.</dd>
-
-   <dt><dfn title="attr-command-label"><code>label</code></dfn></dt>
-
-   <dd>The command's Label. If the attribute is not specified, the
-   command's Label is given by the element's <code>textContent</code>
-   DOM attribute.</dd>
-
-   <dt><dfn title="attr-command-title"><code>title</code></dfn></dt>
-
-   <dd>The command's Hint. If the attribute is not specified, the
-   command's Hint is the empty string.</dd>
-
-   <dt><dfn title="attr-command-icon"><code>icon</code></dfn></dt>
-
-   <dd>A URL to the command's Icon. If the attribute is not specified,
-   then the command has no Icon.</dd>
-
-   <dt><dfn title="attr-command-onclick"><code>onclick</code></dfn></dt>
-
-   <dd>An event handler attribute that listens for <code>click</code>
-   events.</dd>
-
-   <dt><dfn title="attr-command-hide"><code>hide</code></dfn></dt>
-
-   <dd>The command's Hidden State. If the attribute is present, the
-   command is hidden (and also disabled, regardless of the value of
-   the <code>disabled</code> attribute), otherwise, the command is
-   shown. If the attribute is present, it should have the value
-   "<code>hide</code>". <!-+-The name of the attribute reflects the
-   fact that Hidden commands in menus are hidden.-+-></dd>
-
-   <dt><dfn title="attr-command-disabled"><code>disabled</code></dfn></dt>
-
-   <dd>The command's Disabled State. If the attribute is present, the
-   command is disabled, otherwise, the command is enabled. If the
-   attribute is present, it should have the value
-   "<code>disabled</code>".</dd>
-
-   <dt><dfn title="attr-command-checked"><code>checked</code></dfn></dt>
-
-   <dd>The command's Checked State. If the attribute is present, the
-   command is checked, otherwise, the command is not. If the attribute
-   is present, it should have the value "<code>checked</code>".</dd>
-
-   <dt><dfn title="attr-command-radiogroup"><code>radiogroup</code></dfn></dt>
-
-   <dd>An attribute indicating the name of the group of commands that
-   will be toggled when the command itself is toggled. (Described <a
-   href="#radiocommand">below</a>.)</dd>
-
-   <dt><dfn title="attr-command-default"><code>default</code></dfn></dt>
-
-   <dd>An attribute indicating whether the command is the default
-   command. If the attribute is present, the command is the default
-   command, otherwise it is not. If it is set, it should have the
-   value <code>default</code>. Used by context menus to indicate what
-   the default option would be. The :default pseudo-class matches
-   <code>command</code> elements with this attribute.</dd>
-
-  </dl>
-
-  <p>In addition, <code title="command-element">command</code>
-  elements may also have a <code
-  title="command-attribute">command</code> attribute, as <a
-  href="#command-with-command">described below</a>.</p>
-
-  <p>The Type, ID, Label, Hint, Icon, Hidden State, Disabled State,
-  and Checked State of the command defined by a <code
-  title="command-element">command</code> element are as described
-  above. The Action of a <code title="command-element">command</code>
-  element is that a <code>{null, "click"}</code> event is fired on the
-  element.</p>
-
-  <p>If the Type of the command is "checkbox", when a
-  <code>click</code> event is dispatched on the element, user agents
-  must toggle the value of the <code>checked</code> attribute before
-  the event is dispatched in the document. (If the attribute is
-  absent, then it is set to the value <code>checked</code>, and if the
-  attribute is present, it is removed.) If the default action of the
-  event is canceled, the value of the attribute must be changed back
-  to the value it had before the event was dispatched.</p>
-
-  <p id="radiocommand">If the Type of the command is "radio", when a
-  <code>click</code> event is dispatched on the element, user agents
-  must set the value of the <code>checked</code> attribute on the
-  element to <code>checked</code>, and remove the attribute from any
-  <code>command</code> elements with <code>type</code> set to
-  <code>radio</code> and the same parent element and same
-  <code>radiogroup</code> attribute, before the event is dispatched in
-  the document. (If the element has no <code>radiogroup</code>
-  attribute, then the elements "with the same <code>radiogroup</code>
-  attribute" are those elements with <em>no</em>
-  <code>radiogroup</code> attribute.) If the default action of the
-  event is canceled, the value of the attributes that were changed
-  must be changed back to the values they had before the event was
-  dispatched.</p>
-
-  <p>In HTML the <code>command</code> element is an empty element with
-  no end tag.</p>
-
-  <p>Authors should put <code>command</code> elements inside the
-  <code>head</code> element, inside any element that may contain
-  ...
-  content</span>, or inside <code>commandset</code> elements.</p> <!-+-
-  should, because hey, if they want to put them elsewhere, why not.
-  XXX -+->
-
-  <p>Authors should not put elements or text inside
-  <code>command</code> elements.</p>
-
-
-
-
-  <p>The <code title="dom-command-ro-command">command</code> DOM attribute
-  is defined with the <code title="attr-command">command</code>
-  content attribute.</p>
-
-
-Need to become consistent about whether or not to quote keyword
-("<code title="">foo</code>" vs <code>foo</code>)
-
-
-
-  XXX command icons in rendering section:
-
-  If the element defining the command has no explicit icon, then the
-  attribute must instead return the computed value of the CSS '<code
-  title="">icon</code>' property on that element. <a
-  href="#refsCSS3UI">[CSS3UI]</a>
-
-  If the computed value of '<code title="">icon</code>' is
-  '<code>auto</code>',
-
-
-search for event-click and make them all point to:
-<a href="http://www.w3.org/TR/DOM-Level-3-Events/events.html#event-click"><code>click</code></a>
-...or something.
-
-<code>DOMActivate -> <code title="event-DOMActivate">DOMActivate
-
-
-onclick="" only fires if it is a MouseEvent
-
-
-<form> .submit definition - see http://lxr.mozilla.org/mozilla/source/content/html/content/src/nsHTMLFormElement.cpp#600
-for how to handle multiple calls in series
-
-
-http://lxr.mozilla.org/mozilla/source/content/html/content/src/nsHTMLFormElement.cpp#699
-
-How events are handled:
-http://lxr.mozilla.org/mozilla/ident?i=HandleDOMEvent
-
-http://www.quirksmode.org/js/events_compinfo.html
-e.g. mousedown mouseup click mousedown mouseup click dblclick
-
-http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/events.asp
-
-
-
-05:46 <            bz>|Hixie: let's put it this way
-05:46 <            bz>|Hixie: 1)  A script is executed when its data is available
-05:47 <            bz>|Hixie: 2) The data for an inline script is available when its </script> is seen
-05:47 <            bz>|Hixie: 3) The data for a script with src is available when it finishes loading
-05:47 <            bz>|Hixie: all good so far?
-05:47 <         Hixie>|i'm waiting for the bit where src= causes blocking in the normal, non-d.w case
-05:47 <            bz>|Hixie: 4) The data for a script with src starts loading when the <script> node is inserted into the DOM
-05:48 <        shaver>|it causes parser blocking in the normal case
-05:48 <            bz>|Hixie: 5)  When such a load starts, all further parsing is suspended until the load has completed and the script has executed.
-05:48 <            bz>|Hixie: so if we forget document.write
-05:48 <            bz>|Hixie: and look at the HTML:  <script src="foo"></script><div>
-05:48 <            bz>|Hixie: the text "<div>" will nto be parsed until after the script runs
-05:49 <            bz>|Hixie: this is needed so that if the script does document.write that text can be inserted _before_ the "<div>" text into the parser
-05:49 <         Hixie>|sure
-05:49 <         Hixie>|all this is fine
-05:49 <            bz>|Hixie: ok.  So now let's look at our case
-05:49 <         Hixie>|but how does document.write() know when to return?
-05:49 -!- davel [davel at moz-4F4E281A.dsl.static.sonic.net] has quit [Quit: davel]
-05:49 <            bz>|It gives the data to the parser, and tells the parser to parse it
-05:49 <            bz>|Once the parser returns, document.write returns
-05:50 <            bz>|The parser returns when it runs out of data to parse (it's parsed it all)
-05:50 <            bz>|Or if it's explicitly suspended (eg by a <script src="">)
-05:50 <         Hixie>|AH
-05:50 <            bz>|All this in Gecko
-05:50 <         Hixie>|ok that was the key piece of information i was missing
-05:50 <         Hixie>|the "explicit suspension"
-05:50 <         Hixie>|ok
-but test IE on this...
-
-
-XXX publish a "Valid HTML5!" button with a kitten on it. Made by an artist. (Doodle?)
-
-
-   Interaction with document.open/write/close is undefined
-   Integration with quirks mode problems
-   <style> parsing needs tweaking if we want to exactly match IE
-   <base> parsing needs tweaking to handle multiple <base>s
-   <isindex> needs some prose in the form submission section
-   No-frames and no-script modes aren't yet defined
-   Execution of <script> is not yet defined
-   New HTML5 elements aren't yet defined
-   There are various cases (marked) where EOF handling is undefined
-   Interaction with the "load" event is undefined
-
-
-hsivonen:
-> To make document conformance a more useful concept for the purpose of catching
-> author errors, I suggest that the following attributes be made required:
-> href and rel on link
-> href on base
-> name and content on meta (other than the encoding decl)
-> src on img
-> code, height and width on applet
-> name and value on param
-...
-> To allow user agents see whether the author provided the empty string as the
-> alternative text of whether the author just didn't care, I suggest that the
-> alt attribute on img be made optional.
-(i agree -ian)
-...
-> On the other hand, I have doubts about the requirement of significant
-> inline content. When the W3C said that paragraphs mustn't be empty,
-> various applications started emitting <p> </p>. If the WHAT WG says
-> that paragraphs must contend significant inline content, are the
-> developers of those applications suddenly going to decide not to allow
-> them to paragraphs to be saved or are they going to come up with an even
-> more crufty work-around to comply with the machine-checkable
-> requirements of the spec?
-
-
-bjoern:
-> If the concern here is what the specification should say, then that's
-> what a valid state is, not what a valid document is, since the class of
-> "predictably valid" documents does not cover many dynamic documents.
-
-
-
-arv asks for: a way to track download progress of, e.g., images when
-you are preloading 10 images; cf onprogress on XHR in mozilla
-
-
-window.getAttention() or some similar API to let the user know the
-page wants attention? How do you reduce the chance of irritation?
-see also https://bugzilla.mozilla.org/show_bug.cgi?id=293412
-
-
-
-ITEM
-
-Items have:
- - parents, children
- - properties
- - commands that can apply to them
-
-
-
-   <li>Inline markup for pop-up windows, for example for dialog boxes
-   or tool palettes, so that dialogs need not be defined in separate
-   files.</li>
-
-   <li>Command updating: applications that have several access
-   points for the same feature, for instance a menu item and a
-   tool-bar button, would benefit from having to disable such
-   commands only once, instead of having to keep each access point
-   synchronized with the feature's availability at all times.
-   Similarly menu items or tool-bar buttons that represent a toggle
-   state could automatically stay synchronized whenever
-   toggled.</li>
-
-   <li>More device-independent DOM events: The DOM event set needs
-   device-independent events, such as events that fire when a button
-   or link is activated, whether via the mouse or the keyboard.
-   <code>DOMActivate</code> is a start, but it lacks equivalent HTML
-   attributes, and additional events may be needed.</li>
-
-   <li>Richer widget set: the existing HTML controls are quite
-   limited, some controls for commonly used types such as date
-   controls and range controls would be useful.</li>
-
-   <li>Sortable and multicolumn tree views and list views with rich
-   formatting.</li>
-
-   <li>Ability to define custom widgets cleanly, for example using
-   XBL and APIs to query and control focus state, widget state, the
-   position and state of input devices, etc.</li>
-
-   <li>Rich text editing: an underlying architecture upon which
-   domain-specific editors can be created, including things like
-   control over the caret position.</li>
-
-   <li>A predefined HTML editor based on the rich text editing
-   architecture.</li>
-
-   <li>Drag and drop APIs.</li>
-
-   <li>Text selection manipulation APIs.</li>
-
-   <li>Clipboard APIs (if the security and privacy concerns can be
-   addressed).</li>
-
-   <li>Flexible box model: The existing box model in CSS is designed
-   largely for documents rather than user interface. We need a new
-   box model designed for user interface which would relieve author
-   complaints about other aspects of CSS and also reduce the need
-   for tables for layout.</li>
-
-   <li>Window-based state management (so that new windows don't
-   interfere with existing sessions), for example implemented as a
-   per-domain, per-window "file system". This would allow multiple
-   instances of the same application (from the same site) to run
-   without the instances overwriting each other's cookies.</li>
-
-   <li>Markup to denote <span>mutually exclusive sections</span> (as
-   in the commonly seen wizard interfaces).</li>
-
-   <li>An improved CSS object model, for example with better APIs
-   for animation, simpler ways to navigate the rendered content, a
-   way to find the position of an element, methods to list the
-   elements under a coordinate, etc.</li>
-
-   <li>Better defined user authentication state handling. (Being able
-   to "log out" of sites reliably, for instance, or being able to
-   integrate the HTTP authentication model into the Web page.)</li>
-
-
-offline storage / caching pining:
-http://groups.google.com/group/mozilla.dev.platform/browse_frm/thread/bf866101aa238773/a298294c27b9380a?lnk=gst&q=offline&rnum=1#a298294c27b9380a
-
-
-DOM0 quirks that Mozilla knows about:
-http://lxr.mozilla.org/seamonkey/source/dom/src/base/nsDOMClassInfo.cpp
-
-
-
-mutually exclusive sections:
-  <p class="example">For example, in an application for an online
-  mutiplayer game, there could be four mutually exclusive sections:
-  one for the login page, one for the network status page displayed
-  while the user is logging in, one for a "lobby" where players get
-  together to organise a game, and one for the actual game. The
-  different sections are the various states that the application can
-  reach.</p>
-
-
-XXX make a consistent decision of which of the following formats to use:
-
-    U+1234 FOO BAR character ("foo")
-    U+1234 FOO BAR character ('foo')
-    U+1234 FOO BAR character (foo)
-    U+1234 FOO BAR ("foo") character
-    U+1234 FOO BAR ('foo') character
-    U+1234 FOO BAR (foo) character
-    U+1234 FOO BAR character ("<code title="">foo</code>")
-    U+1234 FOO BAR character ('<code title="">foo</code>')
-    U+1234 FOO BAR character (<code title="">foo</code>)
-    U+1234 FOO BAR ("<code title="">foo</code>") character
-    U+1234 FOO BAR ('<code title="">foo</code>') character
-    U+1234 FOO BAR (<code title="">foo</code>) character
-
-And make these match:
-
-    0x12 (ASCII FOO)
-    0x12 (ASCII "foo")
-    0x12 (ASCII 'foo')
-    0x12 ("foo")
-    0x12 ('foo')
-    0x12 (ASCII "<code title="">foo</code>")
-    0x12 (ASCII '<code title="">foo</code>')
-    0x12 ("<code title="">foo</code>")
-    0x12 ('<code title="">foo</code>')
-
-Also check case of hex characters in the ASCII cases.
-
+ XXX * add for="" attribute to <input type="password"> so that you can
+       link usernames and passwords. (Jonas Sicking)
+ XXX * value for unchecked checkbox?
+ XXX * maximum height/width or required ratio for image uploads? - Leons Petrazickis
+ XXX * A way to specify the default button - Michael Gratton 
+ XXX * <fieldset readonly>?
+ XXX * keygen?
+ XXX * action="" should be defined as not being relative to base URI
+       see https://bugzilla.mozilla.org/show_bug.cgi?id=297761
 -->
 
  </body>




More information about the Commit-Watchers mailing list