svg2: 2 new changesets

details:   https://svgwg.org/hg/svg2/rev/2e94d1cf7f52
branches:  
changeset: 557:2e94d1cf7f52
user:      Erik Dahlstrom <ed@opera.com>
date:      Tue Nov 19 13:31:19 2013 +0100
description:
ACTION-3549: SVGLoad -> load.

Fire load events only on the root svg (window proxy),
and on elements with external content: image and script.

details:   https://svgwg.org/hg/svg2/rev/49116d54b822
branches:  
changeset: 558:49116d54b822
user:      Erik Dahlstrom <ed@opera.com>
date:      Tue Nov 19 13:33:56 2013 +0100
description:
merge

diffstat:

 master/definitions.xml |   2 +
 master/interact.html   |  54 ++++++++++++++++++++++++++++---------------------
 master/intro.html      |   6 +++++
 master/refs.html       |  25 ++++++++++++++++------
 master/struct.html     |   2 +-
 5 files changed, 58 insertions(+), 31 deletions(-)

diffs (292 lines):

diff --git a/master/definitions.xml b/master/definitions.xml
--- a/master/definitions.xml
+++ b/master/definitions.xml
@@ -777,16 +777,17 @@
   <elementcategory name='graphics referencing' href='intro.html#TermGraphicsReferencingElement' elements='use, image'/>
   <elementcategory name='light source' href='intro.html#TermLightSourceElement' elements='feDistantLight, fePointLight, feSpotLight'/>
   <elementcategory name='markable' href='intro.html#TermMarkableElement' elements='path, line, polyline, polygon'/>
   <elementcategory name='paint server' href='intro.html#TermPaintServerElement' elements='solidColor, linearGradient, radialGradient, meshGradient, pattern, hatch'/>
   <elementcategory name='shape' href='intro.html#TermShapeElement' elements='circle, ellipse, line, path, polygon, polyline, rect'/>
   <elementcategory name='structural' href='intro.html#TermStructuralElement' elements='defs, g, svg, symbol, use'/>
   <elementcategory name='text content' href='intro.html#TermTextContentElement' elements='text, tspan, tref, textPath, altGlyph'/>
   <elementcategory name='text content child' href='intro.html#TermTextContentChildElement' elements='tspan, tref, textPath, altGlyph'/>
+  <elementcategory name='structurally external' elements='script, image'/> <!-- possibly add later: iframe, video, audio, foreignObject(if it has xlink:href) -->
 
   <!-- ... attributes common to multiple elements ........................ -->
 
   <!-- Note: An <attribute> defined here applies only to the listed
        elements if a list is given in 'elements', otherwise, it
        applies to all <element>s that include the attribute name in
        their 'attribute' attribute.
   -->
@@ -1346,16 +1347,17 @@
   <term name='SVG documents' href='intro.html#TermSVGDocumentFragment'/>
   <term name='SVG document fragment' href='intro.html#TermSVGDocumentFragment'/>
   <term name='SVG document fragments' href='intro.html#TermSVGDocumentFragment'/>
   <term name='SVG elements' href='intro.html#TermSVGElements'/>
   <term name='SVG namespace' href='intro.html#Namespace'/>
   <term name='SVG user agent' href='intro.html#TermUserAgent'/>
   <term name='SVG user agents' href='intro.html#TermUserAgent'/>
   <term name='SVG viewport' href='intro.html#TermSVGViewport'/>
+  <term name='structurally external elements' href='intro.html#TermStructurallyExternalElement'/>
   <term name='transformation' href='intro.html#TermTransformation'/>
   <term name='transformations' href='intro.html#TermTransformation'/>
   <term name='transformation matrix' href='intro.html#TermTransformationMatrix'/>
   <term name='transformation matrices' href='intro.html#TermTransformationMatrix'/>
   <term name='user agent' href='intro.html#TermUserAgent'/>
   <term name='user agents' href='intro.html#TermUserAgent'/>
   <term name='user coordinate system' href='intro.html#TermUserCoordinateSystem'/>
   <term name='user space' href='intro.html#TermUserSpace'/>
diff --git a/master/interact.html b/master/interact.html
--- a/master/interact.html
+++ b/master/interact.html
@@ -153,59 +153,59 @@ the SVG language:</p>
     </tr>
   </table>
 </div>
 
 <p>The following aspects of SVG are affected by events:</p>
 
 <ul>
   <li>Using <a href="svgdom.html">SVG Document Object Model (DOM)</a>, a script can
-  <a href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-registration">register DOM 2 event listeners</a>
-  ([<a href="refs.html#ref-DOM2EVENTS">DOM2EVENTS</a>], section 1.3) so that
-  script can be invoked when a given event occurs.</li>
+  <a href="http://www.w3.org/TR/2013/WD-DOM-Level-3-Events-20131105/#widl-EventTarget-addEventListener">add or remove DOM 3 event listeners</a>
+  ([<a href="refs.html#ref-DOM3EVENTS">DOM3EVENTS</a>], section 4.3 Interface Event Target) so that
+  script can be invoked or ignored when a given event occurs on an event target</li>
 
   <li>SVG includes <a href="script.html#EventAttributes">event attributes</a>
   on selected elements which define script that can be executed when a given
   event occurs in association with the given element.</li>
 
   <li>SVG's <a>animation elements</a> can be defined to begin or end based on
   events.</li>
 </ul>
 
 <p>The following table lists all of the events which are
 recognized and supported in SVG. The <em>Event name</em> in the
 first column is the name to use within SVG's <a>animation elements</a> to
 define the events which can start or end animations. The
-<em>DOM2 name</em> in the second column is the name to use when
-defining <a href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-registration">DOM 2 event listeners</a>
-([<a href="refs.html#ref-DOM2EVENTS">DOM2EVENTS</a>], section 1.3).
+<em>DOM3 or UI Event name</em> in the second column is the name to use when
+defining <a href="http://www.w3.org/TR/2013/WD-DOM-Level-3-Events-20131105/#widl-EventTarget-addEventListener">DOM 3 event listeners</a>
+([<a href="refs.html#ref-DOM3EVENTS">DOM3EVENTS</a>], section 4.3).
 The <em>Event attribute name</em> in the fourth column contains the
 corresponding name of the <a href="script.html#EventAttributes">event attributes</a>
 that can be attached to elements in the SVG language.</p>
 
 <p>Requirements in the table on whether an event of a given type
 bubbles or is cancelable apply only to events that are created and
 dispatched by the user agent.  Events of those types created from script
 using the <code>createEvent</code> method on the <a>Document</a> interface can be made to bubble
 or be cancelable with the
-<a class='idlattr' href='http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-Event-initEvent'>initEvent</a>
+<a class='idlattr' href='http://www.w3.org/TR/2013/WD-DOM-Level-3-Events-20131105/#widl-Event-initEvent'>initEvent</a>
 method.</p>
 
 <p class="issue">Having all these SVG-specific duplicates of standard DOM events isn't
 ideal.  How much can we remove?  SVGLoad in particular, and how it is currently
 required to fire for every element.</p>
 
-<p class="issue">DOM 2 has no keyboard events in it. The only normative spec. on this is a new <a href="https://dvcs.w3.org/hg/d4e/raw-file/default/source_respec.htm">UI events</a> specification that should become a public working draft soon. This is a replacement for the DOM 3 Events spec. The group needs to discuss the current limitation in using DOM 2 events. Also, DOMActivate does not appear in the UI Events Spec. Regarding the activate event, user agents treat click the same as activate. We should question whether we should call the table headers DOM2 name and DOM2 category. These are insufficient. Should we reference the UIEvent spec. vs. the DOM2 Event where there is overlap?
+<p class="issue">DOM 3 and UI Event both define a keyboard event where UI Event introduced a key code which appears to be necessary per the WebApps effort. UI Event is an extension to KeyboardEvent in DOM 3. The group needs to discuss whether to use the UIEvent or DOM3 Event for keyboard. Also, HTML has taken on DOM 4 events and the group needes to decide what to do with this long term. Additionally, DOMActivate does not appear in the UI Events or DOM 3 Events Specs. Regarding the activate event, user agents treat click the same as activate. 
 </p>
 
     <table  class="vert event-table">
       <tr>
         <th>Event name and description</th>
-        <th>DOM2 name</th>
-        <th>DOM2 category</th>
+        <th>DOM3 or UI Event name</th>
+        <th>Event category</th>
         <th>Event attribute name</th>
       </tr>
       <tr>
         <td id="FocusInEvent"><p class="event-name"><strong>focusin</strong></p>
           <p>Occurs when an element receives focus, such as when a <a>'text'</a> becomes selected.</p></td>
         <td>DOMFocusIn</td>
         <td><a
         href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-UIEvent">
@@ -343,29 +343,37 @@ required to fire for every element.</p>
         <td>(same)</td>
         <td><a
         href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-MouseEvent">
         MouseEvent</a></td>
         <td><a
         href="script.html#OnMouseOutEventAttribute">onmouseout</a></td>
       </tr>
       <tr>
-        <td id="LoadEvent"><p class="event-name"><strong>SVGLoad</strong></p>
-          <p>The event is triggered at the point at which the user
-          agent has fully parsed the element and its descendants and
-          is ready to act appropriately upon that element, such as
-          being ready to render the element to the target device.
-          Referenced external resources that are required must be loaded,
-          parsed and ready to render before the event is triggered.
-          Optional external resources are not required to be ready
-          for the event to be triggered.</p>
-	  <p class="issue">Now that <span class="attr-name">'externalResourcesRequired'</span>
-	  has been removed, we need to have better wording for
-	  when SVGLoad is dispatched.</p>
-          <p>SVGLoad events do not bubble and are not cancelable.</p>
+        <td id="LoadEvent"><p class="event-name"><strong>load</strong></p>
+          <p>
+          The load event is dispatched only to <a>structurally external elements</a> and to the
+          <a>Window</a>, when the corresponding external resources have finished loading. Note that
+          due to it's <a href="struct.html#SVGElementEventHandlerAttributes">relationship</a> with <a>Window</a>
+          the load event on <a>'svg'</a> elements is only dispatched when all resources in the document
+          have been completely loaded.
+          </p>
+
+          <p>The load event and the error event on
+          <a>structurally external elements</a> are mutually exclusive, 
+          only one of these events must be dispatched when
+          processing the element in question.</p>
+
+          <p>load events do not bubble and are not cancelable.</p>
+
+          <p class="note">In previous SVG specifications the load event
+          was called SVGLoad and could be dispatched immidiately after
+          parsing an element but before the related resource(s) were
+          fully loaded.</p>
+
         </td>
         <td>(same)</td>
         <td>none</td>
         <td><a
         href="script.html#OnLoadEventAttribute">onload</a></td>
       </tr>
       <tr>
         <td id="UnloadEvent"><p class="event-name"><strong>SVGUnload</strong></p>
diff --git a/master/intro.html b/master/intro.html
--- a/master/intro.html
+++ b/master/intro.html
@@ -571,16 +571,22 @@ element and attribute categories and the
   character glyphs in a text string.</dd>
 
   <dt id="TermStructuralElement">structural element</dt>
   <dd>The structural elements are those which define the primary
   structure of an SVG document.  Specifically, the following
   elements are structural elements:
   <edit:elementcategory name='structural'/>.</dd>
 
+  <dt id="TermStructurallyExternalElement">structurally external element</dt>
+  <dd>Elements that define its structure by reference to an external resource.
+  Specifically, the following elements are structurally external elements when
+  they have an <span class="attr-name">'xlink:href'</span> attribute:
+  <edit:elementcategory name='structurally external'/>.</dd>
+
   <dt id="TermSVGCanvas">SVG canvas</dt>
   <dd>The <a>canvas</a> onto which the SVG
   content is rendered. See the discussion of the
   <a href="coords.html#SVGCanvas">SVG canvas</a> in the chapter on
   <a href="coords.html">Coordinate Systems, Transformations and Units</a>.</dd>
       
   <dt id="TermSVGContext">SVG context</dt>
   <dd>
diff --git a/master/refs.html b/master/refs.html
--- a/master/refs.html
+++ b/master/refs.html
@@ -17,17 +17,17 @@
 <h1>References</h1>
 
 <h2 id="NormativeReferences">Normative references</h2>
 
 <dl class="references">
 
   <dt id="ref-ARIA" class="normref">[ARIA]</dt>
   <dd>
-    <cite class="w3crec"><a href="http://www.w3.org/TR/wai-aria-1.1/">Accessible Internet Applications (WAI-ARIA) 1.1</a></cite>,
+    <cite class="w3crec"><a href="http://www.w3.org/TR/2013/WD-wai-aria-1.1-20130926/">Accessible Internet Applications (WAI-ARIA) 1.1</a></cite>,
     J. Craig, M. Cooper, eds.
     World Wide Web Consortium, 26 September 2013.
     <br/>This edition of WAI-ARIA 1.1 is http://www.w3.org/TR/2011/wai-aria-1.1/.
     <br/>The <a href="http://www.w3.org/TR/wai-aria-1.1/">latest edition of WAI-ARIA</a> is available at
     http://www.w3.org/TR/wai-aria-1.1/.
   </dd>
   
   <dt id="ref-ARIAIMPL" class="normref">[ARIAIMPL]</dt>
@@ -175,24 +175,24 @@
     E. Etemad, T. Atkins, eds.
     World Wide Web Consortium, 21 July 2012.
     <br/>The <a href="http://dev.w3.org/csswg/css4-images/">latest edition of CSS4 Images</a> is available at
     http://dev.w3.org/csswg/css4-images/.
   </dd>
 </dl>
 
 <dl class="references">
-  <dt id="ref-DOM2EVENTS" class="normref">[DOM2EVENTS]</dt>
+  <dt id="ref-DOM3EVENTS" class="normref">[DOM3EVENTS]</dt>
   <dd>
-    <cite class="w3crec"><a href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/">Document Object Model (DOM) Level 2 Events Specification</a></cite>,
-    T. Pixley, ed.
-    World Wide Web Consortium, 13 November 2000.
+    <cite class="w3crec"><a href="http://www.w3.org/TR/2013/WD-DOM-Level-3-Events-20131105/">Document Object Model (DOM) Level 3 Events Specification</a></cite>,
+    Gary Kacmarcik, Travis Leithead, Jacob Rossi, Doug Schepers, Björn Höhrmann, Philippe Le Hégaret, Tom Pixley, eds.
+    World Wide Web Consortium, 15 November 2013.
     <br/>This edition of DOM 2 Events is http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/.
-    <br/>The <a href="http://www.w3.org/TR/DOM-Level-2-Events/">latest edition of DOM 2 Events</a> is available at
-    http://www.w3.org/TR/DOM-Level-2-Events/.
+    <br/>The <a href="http://www.w3.org/TR/DOM-Level-3-Events/">latest edition of DOM 2 Events</a> is available at
+    http://www.w3.org/TR/DOM-Level-3-Events/.
   </dd>
 
   <dt id="ref-DOM2STYLE"  class="normref">[DOM2STYLE]</dt>
   <dd>
     <cite class="w3crec"><a href="http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/">Document Object Model (DOM) Level 2 Style Specification</a></cite>,
     C. Wilson, P. Le Hégaret, V. Apparao, eds.
     World Wide Web Consortium, 13 November 2000.
     <br/>This edition of DOM Level 2 Style is http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/.
@@ -433,16 +433,27 @@
 
   <dt id="ref-UAX9" class="normref">[UAX9]</dt>
   <dd>
     <cite><a href="http://www.unicode.org/reports/tr9/">Unicode Bidirectional Algorithm</a></cite>,
     The Unicode Standard Annex #9.  The Unicode Consortium, 2010.
     <br />Available at http://www.unicode.org/reports/tr9/.
   </dd>
 
+  <dt id="ref-UIEVENTS" class="normref">[UIEVENTS]</dt>
+  <dd>
+    <cite class="w3crec"><a href="http://www.w3.org/TR/2013/WD-uievents-20131105/">UI Events</a></cite>,
+    Gary Kacmarcik, Travis Leithead, eds.
+    World Wide Web Consortium, 5 November 2013.
+    <br/>This edition of UI Events is http://www.w3.org/TR/2013/WD-uievents-20131105/.
+    <br/>The <a href="http://www.w3.org/TR/uievents/">latest edition of UI Events</a> is available at
+    http://www.w3.org/TR/uievents/.
+  </dd>
+
+
   <dt id="ref-UNICODE" class="normref">[UNICODE]</dt>
   <dd>
     <cite><a href="http://www.unicode.org/versions/Unicode6.0.0/">The Unicode Standard, Version 6.0.0</a></cite>,
     The Unicode Consortium, Mountain View, CA, 2011. ISBN 978-1-936213-01-6.
     <br />Available at http://www.unicode.org/versions/Unicode6.0.0.
   </dd>
 </dl>
 
diff --git a/master/struct.html b/master/struct.html
--- a/master/struct.html
+++ b/master/struct.html
@@ -535,17 +535,17 @@ create SVG fragments.</p>
 </dl>
 
 <p>If an SVG document is likely to be referenced as a component
 of another document, the author will often want to include a
 <a>'viewBox'</a> attribute on the <a>outermost svg element</a> of the
 referenced document. This attribute provides a convenient way to design
 SVG documents to scale-to-fit into an arbitrary viewport.</p>
 
-<p>The <a>'svg'</a> element exposes as <a>event handler content attributes</a> a number of the <a>event handlers</a> of the <a>Window</a> object. It also mirrors their <a>event handler IDL attributes</a>.</p>
+<p id="SVGElementEventHandlerAttributes">The <a>'svg'</a> element exposes as <a>event handler content attributes</a> a number of the <a>event handlers</a> of the <a>Window</a> object. It also mirrors their <a>event handler IDL attributes</a>.</p>
 
 <p>The <a>onblur</a>, <a>onerror</a>, <a>onfocus</a>, <a>onload</a>, and <a>onscroll</a> <a>event handlers</a> of the <a>Window</a> object, exposed on the <a>'svg'</a> element,
 replace the generic <a>event handlers</a> with the same names normally supported by <a>SVG elements</a>.</p>
 
 <p class="issue">The above paragraphs feel out of place just after the list
 of attributes specific to <a>'svg'</a>.</p>
 
 </edit:with>

Received on Tuesday, 19 November 2013 12:37:29 UTC