svg2: Remove SVGDefinitionElement interface. Remove conditional proc...

details:   https://svgwg.org/hg/svg2/rev/e5fb6a22e70b
branches:  
changeset: 414:e5fb6a22e70b
user:      Cameron McCormack <cam@mcc.id.au>
date:      Fri Jan 11 16:43:52 2013 +1100
description:
Remove SVGDefinitionElement interface.  Remove conditional processing attributes and SVGTests from elements where they shouldn't be.

diffstat:

 master/changes.html    |   2 +-
 master/definitions.xml |  11 +++++------
 master/fonts.html      |   2 +-
 master/idlindex.html   |   1 -
 master/interact.html   |   2 +-
 master/painting.html   |   2 +-
 master/pservers.html   |   4 ++--
 master/struct.html     |   6 +++---
 master/types.html      |  11 -----------
 9 files changed, 14 insertions(+), 27 deletions(-)

diffs (335 lines):

diff --git a/master/changes.html b/master/changes.html
--- a/master/changes.html
+++ b/master/changes.html
@@ -50,17 +50,17 @@ have been made.</p>
 <h3 id="types">Basic Data Types and Interfaces chapter</h3>
 
 <ul>
   <li>Removed the SVGStylable and SVGLangSpace interfaces and moved all of their members on to <a>SVGElement</a>.</li>
 
   <li>Turned SVGLocatable and SVGTransformable into <a>SVGLocatableElement</a> and <a>SVGTransformableElement</a>,
   which directly inherit from <a>SVGElement</a>.</li>
 
-  <li>Added <a>SVGGraphicsElement</a> and <a>SVGDefinitionElement</a> interfaces.</li>
+  <li>Added an <a>SVGGraphicsElement</a> interface.</li>
 
   <li>Added an <a>SVGGeometryElement</a> interface with isPointInFill and isPointInStroke methods.</li>
 
   <li>Removed the SVGExternalResourcesRequired interface.</li>
 
   <li>Added constructors to <a>SVGNumber</a>, <a>SVGLength</a>, <a>SVGAngle</a> and <a>SVGRect</a>.</li>
 
   <li>Added <a href="types.html#__svg__SVGLocatableElement__getStrokeBBox">getStrokeBBox</a> to get the tight stroke bounding box.</li>
diff --git a/master/definitions.xml b/master/definitions.xml
--- a/master/definitions.xml
+++ b/master/definitions.xml
@@ -118,17 +118,17 @@
   </element>
 
   <element
       name='clipPath'
       href='masking.html#ClipPathElement'
       contentmodel='anyof'
       elementcategories='descriptive, animation, shape'
       elements='text, use'
-      attributecategories='conditional processing, core, presentation, style'
+      attributecategories='core, presentation, style'
       interfaces='SVGClipPathElement'>
     <attribute name='clipPathUnits' elements='clipPath' href='masking.html#ClipPathElementClipPathUnitsAttribute' animatable='yes'/>
   </element>
 
   <element
       name='color-profile'
       href='color.html#ColorProfileElement'
       contentmodel='anyof'
@@ -141,30 +141,30 @@
     <attribute name='xlink:href' href='color.html#ColorProfileElementHrefAttribute'/>
   </element>
 
   <element
       name='cursor'
       href='interact.html#CursorElement'
       contentmodel='anyof'
       elementcategories='descriptive'
-      attributecategories='core, conditional processing, xlink'
+      attributecategories='core, xlink'
       interfaces='SVGCursorElement'>
     <attribute name='x' href='interact.html#CursorElementXAttribute' animatable='yes'/>
     <attribute name='y' href='interact.html#CursorElementYAttribute' animatable='yes'/>
     <attribute name='xlink:href' href='interact.html#CursorElementHrefAttribute' animatable='yes'/>
   </element>
 
   <element
     name='defs'
     href='struct.html#DefsElement'
     contentmodel='anyof'
     elementcategories='animation, descriptive, shape, structural, gradient'
     elements='a, clipPath, color-profile, cursor, filter, font, font-face, foreignObject, image, marker, mask, pattern, script, style, switch, view, text, altGlyphDef'
-    attributecategories='conditional processing, core, graphical event, presentation, style'
+    attributecategories='core, graphical event, presentation, style'
     interfaces='SVGDefsElement'/>
 
   <element
     name='desc'
     href='struct.html#DescElement'
     contentmodel='any'
     attributecategories='core, style'
     attributes='lang'
@@ -412,17 +412,17 @@
   </element>
 
   <element
       name='mask'
       href='masking.html#MaskElement'
       contentmodel='anyof'
       elementcategories='animation, descriptive, shape, structural, gradient'
       elements='a, clipPath, color-profile, cursor, filter, font, font-face, foreignObject, image, marker, mask, pattern, script, style, switch, view, text, altGlyphDef'
-      attributecategories='conditional processing, core, presentation, style'
+      attributecategories='core, presentation, style'
       interfaces='SVGMaskElement'>
     <attribute name='x' elements='mask' href='masking.html#MaskElementXAttribute' animatable='yes'/>
     <attribute name='y' elements='mask' href='masking.html#MaskElementYAttribute' animatable='yes'/>
     <attribute name='width' elements='mask' href='masking.html#MaskElementWidthAttribute' animatable='yes'/>
     <attribute name='height' elements='mask' href='masking.html#MaskElementHeightAttribute' animatable='yes'/>
     <attribute name='maskUnits' elements='mask' href='masking.html#MaskElementMaskUnitsAttribute' animatable='yes'/>
     <attribute name='maskContentUnits' elements='mask' href='masking.html#MaskElementMaskContentUnitsAttribute' animatable='yes'/>
     <attribute name='maskType' elements='mask' href='masking.html#MaskElementMaskTypeAttribute' animatable='yes'/>
@@ -503,17 +503,17 @@
   </element>
 
   <element
       name='pattern'
       href='pservers.html#PatternElement'
       contentmodel='anyof'
       elementcategories='animation, descriptive, shape, structural, gradient'
       elements='a, clipPath, color-profile, cursor, filter, font, font-face, foreignObject, image, marker, mask, pattern, script, style, switch, view, text, altGlyphDef'
-      attributecategories='conditional processing, core, presentation, style, xlink'
+      attributecategories='core, presentation, style, xlink'
       attributes='viewBox, preserveAspectRatio'
       interfaces='SVGPatternElement'>
     <attribute name='x' href='pservers.html#PatternElementXAttribute' animatable='yes'/>
     <attribute name='y' href='pservers.html#PatternElementYAttribute' animatable='yes'/>
     <attribute name='width' href='pservers.html#PatternElementWidthAttribute' animatable='yes'/>
     <attribute name='height' href='pservers.html#PatternElementHeightAttribute' animatable='yes'/>
     <attribute name='patternUnits' href='pservers.html#PatternElementPatternUnitsAttribute' animatable='yes'/>
     <attribute name='patternContentUnits' href='pservers.html#PatternElementPatternContentUnitsAttribute' animatable='yes'/>
@@ -1058,17 +1058,16 @@
   <interface name='SVGAnimatedNumberList' href='types.html#InterfaceSVGAnimatedNumberList'/>
   <interface name='SVGLengthList' href='types.html#InterfaceSVGLengthList'/>
   <interface name='SVGColor' href='types.html#InterfaceSVGColor'/>
   <interface name='SVGICCColor' href='types.html#InterfaceSVGICCColor'/>
   <interface name='SVGLocatableElement' href='types.html#InterfaceSVGLocatableElement'/>
   <interface name='SVGTransformableElement' href='types.html#InterfaceSVGTransformableElement'/>
   <interface name='SVGGraphicsElement' href='types.html#InterfaceSVGGraphicsElement'/>
   <interface name='SVGGeometryElement' href='types.html#InterfaceSVGGeometryElement'/>
-  <interface name='SVGDefinitionElement' href='types.html#InterfaceSVGDefinitionElement'/>
   <interface name='SVGTests' href='types.html#InterfaceSVGTests'/>
   <interface name='SVGURIReference' href='types.html#InterfaceSVGURIReference'/>
   <interface name='SVGCSSRule' href='types.html#InterfaceSVGCSSRule'/>
   <interface name='SVGRenderingIntent' href='types.html#InterfaceSVGRenderingIntent'/>
   <interface name='SVGAnimatedBoolean' href='types.html#InterfaceSVGAnimatedBoolean'/>
   <interface name='SVGUnitTypes' href='types.html#InterfaceSVGUnitTypes'/>
   <interface name='SVGStyleElement' href='styling.html#InterfaceSVGStyleElement'/>
   <interface name='SVGPoint' href='coords.html#InterfaceSVGPoint'/>
diff --git a/master/fonts.html b/master/fonts.html
--- a/master/fonts.html
+++ b/master/fonts.html
@@ -1480,17 +1480,17 @@ of <a>'u2'</a> or <a>'g2'</a> must be pr
 <p>The <a>SVGFontElement</a> interface corresponds to the
 <a>'font element'</a> element.
 </p>
 
 
 <p>Object-oriented access to the attributes of the <a>'font element'</a> element
 via the SVG DOM is not available.
 </p>
-<pre class="idl">interface <b>SVGFontElement</b> : <a>SVGDefinitionElement</a> {
+<pre class="idl">interface <b>SVGFontElement</b> : <a>SVGElement</a> {
 };</pre>
 
 </edit:with>
 
 <h3 id="InterfaceSVGGlyphElement">Interface SVGGlyphElement</h3>
 
 
 <edit:with element='glyph'>
diff --git a/master/idlindex.html b/master/idlindex.html
--- a/master/idlindex.html
+++ b/master/idlindex.html
@@ -45,17 +45,16 @@
   <li><a>SVGAnimationElement</a></li>
   <li><a>SVGCSSRule</a></li>
   <li><a>SVGCircleElement</a></li>
   <li><a>SVGClipPathElement</a></li>
   <li><a>SVGColor</a></li>
   <li><a>SVGColorProfileElement</a></li>
   <li><a>SVGColorProfileRule</a></li>
   <li><a>SVGCursorElement</a></li>
-  <li><a>SVGDefinitionElement</a></li>
   <li><a>SVGDefsElement</a></li>
   <li><a>SVGDescElement</a></li>
   <li><a>SVGDocument</a></li>
   <li><a>SVGElement</a></li>
   <li><a>SVGElementInstance</a></li>
   <li><a>SVGElementInstanceList</a></li>
   <li><a>SVGEllipseElement</a></li>
   <li><a>SVGFitToViewBox</a></li>
diff --git a/master/interact.html b/master/interact.html
--- a/master/interact.html
+++ b/master/interact.html
@@ -1121,17 +1121,17 @@ that the cursor can be visible over most
 <h2 id="DOMInterfaces">DOM interfaces</h2>
 
 <h3 id="InterfaceSVGCursorElement">Interface SVGCursorElement</h3>
 
 <edit:with element='cursor'>
 
 The <a>SVGCursorElement</a> interface corresponds to the
 <a>'cursor element'</a> element.
-<pre class="idl">interface <b>SVGCursorElement</b> : <a>SVGDefinitionElement</a> {
+<pre class="idl">interface <b>SVGCursorElement</b> : <a>SVGElement</a> {
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="interact.html#__svg__SVGCursorElement__x">x</a>;
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="interact.html#__svg__SVGCursorElement__y">y</a>;
 };
 
 <a>SVGCursorElement</a> implements <a>SVGURIReference</a>;</pre>
 
 <dl class="interface">
 <dt class="attributes-header">Attributes:</dt>
diff --git a/master/painting.html b/master/painting.html
--- a/master/painting.html
+++ b/master/painting.html
@@ -3890,17 +3890,17 @@ interface <b>SVGMarkableElement</b> {
 
 <h3 id="InterfaceSVGMarkerElement">Interface SVGMarkerElement</h3>
 
 
 <edit:with element='marker'>
 
 The <a>SVGMarkerElement</a> interface corresponds to the
 <a>'marker element'</a> element.
-<pre class="idl">interface <b>SVGMarkerElement</b> : <a>SVGDefinitionElement</a> {
+<pre class="idl">interface <b>SVGMarkerElement</b> : <a>SVGElement</a> {
 
   // Marker Unit Types
   const unsigned short <a href="painting.html#__svg__SVGMarkerElement__SVG_MARKERUNITS_UNKNOWN">SVG_MARKERUNITS_UNKNOWN</a> = 0;
   const unsigned short <a href="painting.html#__svg__SVGMarkerElement__SVG_MARKERUNITS_USERSPACEONUSE">SVG_MARKERUNITS_USERSPACEONUSE</a> = 1;
   const unsigned short <a href="painting.html#__svg__SVGMarkerElement__SVG_MARKERUNITS_STROKEWIDTH">SVG_MARKERUNITS_STROKEWIDTH</a> = 2;
 
   // Marker Orientation Types
   const unsigned short <a href="painting.html#__svg__SVGMarkerElement__SVG_MARKER_ORIENT_UNKNOWN">SVG_MARKER_ORIENT_UNKNOWN</a> = 0;
diff --git a/master/pservers.html b/master/pservers.html
--- a/master/pservers.html
+++ b/master/pservers.html
@@ -1824,17 +1824,17 @@ to the bounds of the pattern tile.</p>
 
 </edit:with>
 
 <h3 id="InterfaceSVGGradientElement">Interface SVGGradientElement</h3>
 
 
 The <a>SVGGradientElement</a> interface is a base interface used by
 <a>SVGLinearGradientElement</a> and <a>SVGRadialGradientElement</a>.
-<pre class="idl">interface <b>SVGGradientElement</b> : <a>SVGDefinitionElement</a> {
+<pre class="idl">interface <b>SVGGradientElement</b> : <a>SVGElement</a> {
 
   // Spread Method Types
   const unsigned short <a href="pservers.html#__svg__SVGGradientElement__SVG_SPREADMETHOD_UNKNOWN">SVG_SPREADMETHOD_UNKNOWN</a> = 0;
   const unsigned short <a href="pservers.html#__svg__SVGGradientElement__SVG_SPREADMETHOD_PAD">SVG_SPREADMETHOD_PAD</a> = 1;
   const unsigned short <a href="pservers.html#__svg__SVGGradientElement__SVG_SPREADMETHOD_REFLECT">SVG_SPREADMETHOD_REFLECT</a> = 2;
   const unsigned short <a href="pservers.html#__svg__SVGGradientElement__SVG_SPREADMETHOD_REPEAT">SVG_SPREADMETHOD_REPEAT</a> = 3;
 
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedEnumeration">SVGAnimatedEnumeration</a> <a href="pservers.html#__svg__SVGGradientElement__gradientUnits">gradientUnits</a>;
@@ -2147,17 +2147,17 @@ element.
 
 <h3 id="InterfaceSVGPatternElement">Interface SVGPatternElement</h3>
 
 
 <edit:with element='pattern'>
 
 The <a>SVGPatternElement</a> interface corresponds to the <a>'pattern'</a>
 element.
-<pre class="idl">interface <b>SVGPatternElement</b> : <a>SVGDefinitionElement</a> {
+<pre class="idl">interface <b>SVGPatternElement</b> : <a>SVGElement</a> {
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedEnumeration">SVGAnimatedEnumeration</a> <a href="pservers.html#__svg__SVGPatternElement__patternUnits">patternUnits</a>;
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedEnumeration">SVGAnimatedEnumeration</a> <a href="pservers.html#__svg__SVGPatternElement__patternContentUnits">patternContentUnits</a>;
   readonly attribute <a class="idlinterface" href="coords.html#InterfaceSVGAnimatedTransformList">SVGAnimatedTransformList</a> <a href="pservers.html#__svg__SVGPatternElement__patternTransform">patternTransform</a>;
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="pservers.html#__svg__SVGPatternElement__x">x</a>;
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="pservers.html#__svg__SVGPatternElement__y">y</a>;
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="pservers.html#__svg__SVGPatternElement__width">width</a>;
   readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="pservers.html#__svg__SVGPatternElement__height">height</a>;
 };
diff --git a/master/struct.html b/master/struct.html
--- a/master/struct.html
+++ b/master/struct.html
@@ -1664,18 +1664,18 @@ other elements (such as via a <a>'use'</
 
 <p>In consequence:</p>
 
 <ul>
   <li><a>'requiredFeatures'</a>, <a>'requiredExtensions'</a> and <a>'systemLanguage'</a> attributes affect
   <a>'a'</a>, <a>'altGlyph'</a>, <a>'foreignObject'</a>, <a>'textPath'</a>, <a>'tref'</a>, and <a>'tspan'</a> elements.</li>
 
   <li><a>'requiredFeatures'</a>, <a>'requiredExtensions'</a> and <a>'systemLanguage'</a> attributes will
-  have no effect on <a>'mask element'</a>,
-  <a>'clipPath'</a>, and <a>'pattern'</a> elements.</li>
+  have no effect on the <a>'clipPath'</a>, <a>'filter element'</a>, <a>'marker element'</a>, <a>'mask element'</a>,
+  <a>'pattern'</a> and <a>'symbol'</a> elements or on <a>gradient elements</a>.</li>
 
   <li><a>'requiredFeatures'</a>, <a>'requiredExtensions'</a> and <a>'systemLanguage'</a> attributes do not
   apply to the <a>'defs'</a>, and
   <a>'cursor element'</a> elements because
   they are not part of the rendering tree.</li>
 
   <li><a>'requiredFeatures'</a>, <a>'requiredExtensions'</a> and <a>'systemLanguage'</a> attributes affect
   <a>'animate'</a>, <a>'animateColor'</a>, <a>'animateMotion'</a>, <a>'animateTransform'</a>, and <a>'set'</a> elements. If the
@@ -3142,17 +3142,17 @@ element.
 
 <h3 id="InterfaceSVGSymbolElement">Interface SVGSymbolElement</h3>
 
 
 <edit:with element='symbol'>
 
 The <a>SVGSymbolElement</a> interface corresponds to the <a>'symbol'</a>
 element.
-<pre class="idl">interface <b>SVGSymbolElement</b> : <a>SVGDefinitionElement</a> {
+<pre class="idl">interface <b>SVGSymbolElement</b> : <a>SVGElement</a> {
 };
 
 <a>SVGSymbolElement</a> implements <a>SVGFitToViewBox</a>;</pre>
 
 </edit:with>
 
 <h3 id="InterfaceSVGUseElement">Interface SVGUseElement</h3>
 
diff --git a/master/types.html b/master/types.html
--- a/master/types.html
+++ b/master/types.html
@@ -4494,27 +4494,16 @@ paths, text and the basic shapes.</p>
           or false otherwise.</dd>
         </dl>
       </dd>
     </dl>
   </dd>
 </dl>
 </div>
 
-<h3 id="InterfaceSVGDefinitionElement">Interface SVGDefinitionElement</h3>
-
-<p>Interface <a>SVGDefinitionElement</a> represents SVG elements whose primary purpose
-is to define a reusable resource.</p>
-
-<pre class="idl">interface <b>SVGDefinitionElement</b> : <a>SVGElement</a> {
-};
-
-<a>SVGDefinitionElement</a> implements <a>SVGTests</a>;</pre>
-
-
 <h3 id="InterfaceSVGTests">Interface SVGTests</h3>
 
 <p>Interface <a>SVGTests</a> defines an interface which applies to all
 elements which have attributes <a>'requiredFeatures'</a>,
 <a>'requiredExtensions'</a> and <a>'systemLanguage'</a>.</p>
 
 <pre class="idl">[NoInterfaceObject]
 interface <b>SVGTests</b> {

Received on Friday, 11 January 2013 05:42:55 UTC