improve tabindex cross-reference and create section in intro for navigation attributes
authorRichard Schwerdtfeger <schwer@us.ibm.com>
Wed, 01 May 2013 15:17:58 -0500
changeset 492 e014e18bcd62
parent 491 420435c82f76
child 493 dd542102ef56
improve tabindex cross-reference and create section in intro for navigation attributes
master/definitions.xml
master/intro.html
--- a/master/definitions.xml	Wed May 01 10:01:15 2013 -0500
+++ b/master/definitions.xml	Wed May 01 15:17:58 2013 -0500
@@ -15,7 +15,7 @@
       contentmodel='textoranyof'
       elementcategories='animation, descriptive, shape, structural, paint server'
       elements='a, clipPath, color-profile, cursor, filter, font, font-face, foreignObject, image, marker, mask, script, style, switch, view, text, altGlyphDef'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style, xlink'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style, xlink'
       interfaces='SVGAElement'>
     <attribute name='xlink:href' href='linking.html#AElementXLinkHrefAttribute' animatable='yes'/>
     <attribute name='xlink:show' href='linking.html#XLinkShowAttribute'/>
@@ -27,7 +27,7 @@
       name='altGlyph'
       href='text.html#AltGlyphElement'
       contentmodel='any'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style, xlink'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style, xlink'
       interfaces='SVGAltGlyphElement'>
     <attribute name='x' href='text.html#AltGlyphElementXAttribute' animatable='yes'/>
     <attribute name='y' href='text.html#AltGlyphElementYAttribute' animatable='yes'/>
@@ -56,7 +56,7 @@
   <element
       name='altGlyphItem'
       href='text.html#AltGlyphItemElement'
-      attributecategories='aria, core'
+      attributecategories='aria, navigation, core'
       interfaces='SVGAltGlyphItemElement'>
     <x:contentmodel xmlns='http://www.w3.org/1999/xhtml'>
       One or more <a>'glyphRef'</a> elements.
@@ -75,7 +75,7 @@
     href='animate.html#AnimateColorElement'
     contentmodel='anyof'
     elementcategories='descriptive'
-    attributecategories='conditional processing, core, animation event, xlink, animation attribute target, animation timing, animation value, animation addition, presentation, aria'
+    attributecategories='conditional processing, core, animation event, xlink, animation attribute target, animation timing, animation value, animation addition, presentation, aria, navigation'
     interfaces='SVGAnimateColorElement'/>
   <element
       name='animateMotion'
@@ -107,7 +107,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
       interfaces='SVGCircleElement'>
     <attribute name='cx' href='shapes.html#CircleElementCXAttribute' animatable='yes'/>
     <attribute name='cy' href='shapes.html#CircleElementCYAttribute' animatable='yes'/>
@@ -132,7 +132,7 @@
       href='interact.html#CursorElement'
       contentmodel='anyof'
       elementcategories='descriptive'
-      attributecategories='aria, core, xlink'
+      attributecategories='aria, navigation, core, xlink'
       interfaces='SVGCursorElement'>
     <attribute name='x' href='interact.html#CursorElementXAttribute' animatable='yes'/>
     <attribute name='y' href='interact.html#CursorElementYAttribute' animatable='yes'/>
@@ -159,7 +159,7 @@
     href='struct.html#DiscardElement'
     contentmodel='anyof'
     elementcategories='descriptive'
-    attributecategories='conditional processing, core, aria'>
+    attributecategories='conditional processing, core, aria, navigation'>
     <attribute name='begin' href='struct.html#DiscardElementBeginAttribute' animatable='no'/>
     <attribute name='href' href='struct.html#DiscardElementHrefAttribute' animatable='no'/>
   </element>
@@ -170,7 +170,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style' 
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style' 
       interfaces='SVGEllipseElement'>
     <attribute name='cx' href='shapes.html#EllipseElementCXAttribute' animatable='yes'/>
     <attribute name='cy' href='shapes.html#EllipseElementCYAttribute' animatable='yes'/>
@@ -273,7 +273,7 @@
       name='foreignObject'
       href='extend.html#ForeignObjectElement'
       contentmodel='any'
-      attributecategories='aria, core, conditional processing, graphical event, presentation, style'
+      attributecategories='aria, navigation, core, conditional processing, graphical event, presentation, style'
       interfaces='SVGForeignObjectElement'>
     <attribute name='x' href='extend.html#ForeignObjectElementXAttribute' animatable='yes'/>
     <attribute name='y' href='extend.html#ForeignObjectElementYAttribute' animatable='yes'/>
@@ -287,7 +287,7 @@
     contentmodel='anyof'
     elementcategories='animation, descriptive, shape, structural, paint server'
     elements='a, clipPath, color-profile, cursor, filter, font, font-face, foreignObject, image, marker, mask, script, style, switch, view, text, altGlyphDef'
-    attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+    attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
     interfaces='SVGGElement'/>
 
   <element
@@ -325,7 +325,7 @@
   <element
     name='hkern'
     href='fonts.html#HKernElement'
-    attributecategories='aria, core'
+    attributecategories='aria, navigation, core'
     attributes='u1, g1, u2, g2, k'
     interfaces='SVGHKernElement'/>
 
@@ -335,7 +335,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, core, conditional processing, graphical event, style, xlink, presentation'
+      attributecategories='aria, navigation, core, conditional processing, graphical event, style, xlink, presentation'
       attributes='preserveAspectRatio'
       interfaces='SVGImageElement'>
     <attribute name='x' href='struct.html#ImageElementXAttribute' animatable='yes'/>
@@ -351,7 +351,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
       interfaces='SVGLineElement'>
     <attribute name='x1' href='shapes.html#LineElementX1Attribute' animatable='yes'/>
     <attribute name='y1' href='shapes.html#LineElementY1Attribute' animatable='yes'/>
@@ -464,7 +464,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
       interfaces='SVGPathElement'>
     <attribute name='d' href='paths.html#DAttribute' animatable='yes'/>
     <attribute name='pathLength' href='paths.html#PathLengthAttribute' animatable='yes'/>
@@ -495,7 +495,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
       interfaces='SVGPolygonElement'>
     <attribute name='points' href='shapes.html#PolygonElementPointsAttribute' animatable='yes'/>
   </element>
@@ -506,7 +506,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
       interfaces='SVGPolylineElement'>
     <attribute name='points' href='shapes.html#PolylineElementPointsAttribute' animatable='yes'/>
   </element>
@@ -537,7 +537,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
       interfaces='SVGRectElement'>
     <attribute name='x' href='shapes.html#RectElementXAttribute' animatable='yes'/>
     <attribute name='y' href='shapes.html#RectElementYAttribute' animatable='yes'/>
@@ -606,7 +606,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, shape, structural, paint server'
       elements='a, clipPath, color-profile, cursor, filter, font, font-face, foreignObject, image, marker, mask, script, style, switch, view, text, altGlyphDef'
-      attributecategories='aria, conditional processing, core, document event, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, document event, graphical event, presentation, style'
       attributes='viewBox, preserveAspectRatio, zoomAndPan'
       interfaces='SVGSVGElement'>
     <attribute name='x' href='struct.html#SVGElementXAttribute' animatable='yes'/>
@@ -625,8 +625,9 @@
     contentmodel='anyof'
     elementcategories='animation, descriptive, shape, paint server'
     elements='svg, g, use, text, image, a, foreignObject, switch, mask, clipPath, marker'
-    attributecategories='aria, conditional processing, core, graphical event, presentation, style'
-    interfaces='SVGSwitchElement'/>
+    attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
+    interfaces='SVGSwitchElement'>
+  </element>
 
   <element
     name='symbol'
@@ -634,9 +635,10 @@
     contentmodel='anyof'
     elementcategories='animation, descriptive, shape, structural, paint server'
     elements='a, clipPath, color-profile, cursor, filter, font, font-face, foreignObject, image, marker, mask, script, style, switch, view, text, altGlyphDef'
-    attributecategories='aria, core, graphical event, presentation, style'
+    attributecategories='aria, navigation, core, graphical event, presentation, style'
     attributes='preserveAspectRatio, viewBox'
-    interfaces='SVGSymbolElement'/>
+    interfaces='SVGSymbolElement'>
+  </element>
 
   <element
       name='text'
@@ -644,7 +646,7 @@
       contentmodel='textoranyof'
       elementcategories='animation, descriptive, text content child, paint server'
       elements='a, mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
       attributes='lengthAdjust'
       interfaces='SVGTextElement'>
     <attribute name='x' href='text.html#TextElementXAttribute' animatable='yes'/>
@@ -662,7 +664,7 @@
       contentmodel='textoranyof'
       elementcategories='descriptive, paint server'
       elements='animate, animateColor, a, set, tspan, tref, altGlyph, mask, clipPath, marker'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style, xlink'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style, xlink'
       attributes='lengthAdjust, textLength'
       interfaces='SVGTextPathElement'>
     <attribute name='d' href='text.html#TextPathElementDAttribute' animatable='yes'/>
@@ -686,7 +688,7 @@
       contentmodel='anyof'
       elementcategories='descriptive, paint server'
       elements='animate, animateColor, set'
-      attributecategories='aria, conditional processing, core, graphical event, presentation, style, xlink'
+      attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style, xlink'
       attributes='x, y, dx, dy, rotate, textLength, lengthAdjust'
       interfaces='SVGTRefElement'>
     <attribute name='xlink:href' elements='tref' href='text.html#TRefElementHrefAttribute' animatable='yes'/>
@@ -698,9 +700,10 @@
     contentmodel='textoranyof'
     elementcategories='descriptive, paint server'
     elements='a, animate, animateColor, set, tspan, tref, altGlyph'
-    attributecategories='aria, conditional processing, core, graphical event, presentation, style'
+    attributecategories='aria, navigation, conditional processing, core, graphical event, presentation, style'
     attributes='x, y, dx, dy, rotate, textLength, lengthAdjust'
-    interfaces='SVGTSpanElement'/>
+    interfaces='SVGTSpanElement'>
+  </element>
 
   <element
       name='use'
@@ -708,7 +711,7 @@
       contentmodel='anyof'
       elementcategories='animation, descriptive, paint server'
       elements='mask, clipPath, marker'
-      attributecategories='aria, core, conditional processing, graphical event, presentation, style, xlink'
+      attributecategories='aria, navigation, core, conditional processing, graphical event, presentation, style, xlink'
       interfaces='SVGUseElement'>
     <attribute name='x' href='struct.html#UseElementXAttribute' animatable='yes'/>
     <attribute name='y' href='struct.html#UseElementYAttribute' animatable='yes'/>
@@ -722,7 +725,7 @@
       href='linking.html#ViewElement'
       contentmodel='anyof'
       elementcategories='descriptive'
-      attributecategories='aria, core'
+      attributecategories='aria, navigation, core'
       attributes='viewBox, preserveAspectRatio, zoomAndPan'
       interfaces='SVGViewElement'>
     <attribute name='viewTarget' elements='view' href='linking.html#ViewElementViewTargetAttribute'/>
@@ -794,9 +797,6 @@
   <!-- attribute common to all animation elements -->
   <attribute name='xlink:href' elements='animate, animateColor, animateMotion, animateTransform, set' href='animate.html#HrefAttribute'/>
 
-  <!-- attributes common to all keyboard focusable elements -->
-  <attribute name='tabindex' elements='a, altGlyph, altGlyphItem, animateColor, circle, cursor, discard, ellipse, foreignObject, g, hkern, image, line, path, polygon, polyline, rect, svg, switch, symbol, text, textPath, tref, tspan, use, view' href='interact.html#SVGElementTabindexAttribute'> 
-
   <!-- misc:  Applies to all <element>s that include attribute name in 'attribute'. -->
   <attribute name='viewBox' href='coords.html#ViewBoxAttribute' animatable='yes'/>
   <attribute name='preserveAspectRatio' href='coords.html#PreserveAspectRatioAttribute' animatable='yes'/>
@@ -845,6 +845,12 @@
     <attribute name='role' href='struct.html#RoleAttribute'/>
   </attributecategory>
   <attributecategory
+      name='navigation'
+      href='intro.html#TermNavigationAttribute'>
+    <attribute name='tabindex' href='tabindex' href='interact.html#SVGElementTabindexAttribute'/>
+    <!--Make room for SVG tiny directional navigation-->
+  </attributecategory>
+  <attributecategory
       name='conditional processing'
       href='intro.html#TermConditionalProcessingAttribute'>
     <attribute name='requiredFeatures' href='struct.html#RequiredFeaturesAttribute'/>
--- a/master/intro.html	Wed May 01 10:01:15 2013 -0500
+++ b/master/intro.html	Wed May 01 15:17:58 2013 -0500
@@ -452,6 +452,10 @@
   <a href="struct.html#Head">References and the
   <span class="element-name">'defs'</span> element</a>.</dd>
 
+ <dt id="TermNavigationAttribute">navigation attributes</dt>
+  <dd>These are the collection of attributes which enable navigation.
+  The navigation-related attributes include <edit:attributecategory name='navigation'/>.</dd>
+
   <dt id="TermInvalidValue">invalid value</dt>
   <dd>An invalid value specified for a <a>property</a>, either in a style sheet
   or a <a>presentation attribute</a>, is one that is either not allowed according