changeset 47728:aa0344e6f39b

8184219: Fix accessibility of tables in the java.desktop module Reviewed-by: jjg
author serb
date Fri, 20 Oct 2017 15:39:50 -0700
parents 328167c4ef32
children b3ea71b70f7b
files src/java.desktop/share/classes/java/applet/AppletContext.java src/java.desktop/share/classes/java/awt/AWTKeyStroke.java src/java.desktop/share/classes/java/awt/AWTPermission.java src/java.desktop/share/classes/java/awt/AlphaComposite.java src/java.desktop/share/classes/java/awt/Component.java src/java.desktop/share/classes/java/awt/Container.java src/java.desktop/share/classes/java/awt/EventQueue.java src/java.desktop/share/classes/java/awt/KeyboardFocusManager.java src/java.desktop/share/classes/java/awt/Scrollbar.java src/java.desktop/share/classes/java/awt/SystemTray.java src/java.desktop/share/classes/java/awt/font/NumericShaper.java src/java.desktop/share/classes/java/awt/font/TextAttribute.java src/java.desktop/share/classes/javax/imageio/package-info.java src/java.desktop/share/classes/javax/imageio/plugins/bmp/BMPImageWriteParam.java src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java src/java.desktop/share/classes/javax/print/DocFlavor.java src/java.desktop/share/classes/javax/print/attribute/standard/Chromaticity.java src/java.desktop/share/classes/javax/print/attribute/standard/JobKOctets.java src/java.desktop/share/classes/javax/print/attribute/standard/package-info.java src/java.desktop/share/classes/javax/sound/midi/MidiFileFormat.java src/java.desktop/share/classes/javax/sound/midi/MidiSystem.java src/java.desktop/share/classes/javax/sound/sampled/AudioFileFormat.java src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java src/java.desktop/share/classes/javax/sound/sampled/AudioPermission.java src/java.desktop/share/classes/javax/sound/sampled/AudioSystem.java src/java.desktop/share/classes/javax/sound/sampled/ReverbType.java src/java.desktop/share/classes/javax/swing/Action.java src/java.desktop/share/classes/javax/swing/JFormattedTextField.java src/java.desktop/share/classes/javax/swing/JList.java src/java.desktop/share/classes/javax/swing/JOptionPane.java src/java.desktop/share/classes/javax/swing/plaf/basic/BasicListUI.java src/java.desktop/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTreeUI.java src/java.desktop/share/classes/javax/swing/text/JTextComponent.java src/java.desktop/share/classes/javax/swing/text/MaskFormatter.java src/java.desktop/share/classes/javax/swing/text/html/FormView.java src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java src/java.desktop/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java
diffstat 39 files changed, 1597 insertions(+), 1554 deletions(-) [+]
line wrap: on
line diff
--- a/src/java.desktop/share/classes/java/applet/AppletContext.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/applet/AppletContext.java	Fri Oct 20 15:39:50 2017 -0700
@@ -117,24 +117,30 @@
      * <table class="striped">
      * <caption>Target arguments and their descriptions</caption>
      * <thead>
-     * <tr><th>Target Argument</th>
-     * <th>Description</th></tr>
+     *   <tr>
+     *     <th scope="col">Target Argument
+     *     <th scope="col">Description
      * </thead>
      * <tbody>
-     * <tr><td>{@code "_self"}  <td>Show in the window and frame that
-     *                                   contain the applet.</tr>
-     * <tr><td>{@code "_parent"}<td>Show in the applet's parent frame. If
-     *                                   the applet's frame has no parent frame,
-     *                                   acts the same as "_self".</tr>
-     * <tr><td>{@code "_top"}   <td>Show in the top-level frame of the applet's
-     *                                   window. If the applet's frame is the
-     *                                   top-level frame, acts the same as "_self".</tr>
-     * <tr><td>{@code "_blank"} <td>Show in a new, unnamed
-     *                                   top-level window.</tr>
-     * <tr><td><i>name</i><td>Show in the frame or window named <i>name</i>. If
-     *                        a target named <i>name</i> does not already exist, a
-     *                        new top-level window with the specified name is created,
-     *                        and the document is shown there.</tr>
+     *   <tr>
+     *     <th scope="row">{@code "_self"}
+     *     <td>Show in the window and frame that contain the applet.
+     *   <tr>
+     *     <th scope="row">{@code "_parent"}
+     *     <td>Show in the applet's parent frame. If the applet's frame has no
+     *     parent frame, acts the same as "_self".
+     *   <tr>
+     *     <th scope="row">{@code "_top"}
+     *     <td>Show in the top-level frame of the applet's window. If the
+     *     applet's frame is the top-level frame, acts the same as "_self".
+     *   <tr>
+     *     <th scope="row">{@code "_blank"}
+     *     <td>Show in a new, unnamed top-level window.
+     *   <tr>
+     *     <th scope="row"><i>name</i>
+     *     <td>Show in the frame or window named <i>name</i>. If a target named
+     *     <i>name</i> does not already exist, a new top-level window with the
+     *     specified name is created, and the document is shown there.
      * </tbody>
      * </table>
      * <p>
--- a/src/java.desktop/share/classes/java/awt/AWTKeyStroke.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/AWTKeyStroke.java	Fri Oct 20 15:39:50 2017 -0700
@@ -94,25 +94,23 @@
      * <table class="striped">
      * <caption>AWTKeyStroke default values</caption>
      * <thead>
-     * <tr><th>Property</th><th>Default Value</th></tr>
+     *   <tr>
+     *     <th scope="col">Property
+     *     <th scope="col">Default Value
      * </thead>
      * <tbody>
-     * <tr>
-     *    <td>Key Char</td>
-     *    <td>{@code KeyEvent.CHAR_UNDEFINED}</td>
-     * </tr>
-     * <tr>
-     *    <td>Key Code</td>
-     *    <td>{@code KeyEvent.VK_UNDEFINED}</td>
-     * </tr>
-     * <tr>
-     *    <td>Modifiers</td>
-     *    <td>none</td>
-     * </tr>
-     * <tr>
-     *    <td>On key release?</td>
-     *    <td>{@code false}</td>
-     * </tr>
+     *   <tr>
+     *     <th scope="row">Key Char
+     *     <td>{@code KeyEvent.CHAR_UNDEFINED}
+     *   <tr>
+     *     <th scope="row">Key Code
+     *     <td>{@code KeyEvent.VK_UNDEFINED}
+     *   <tr>
+     *     <th scope="row">Modifiers
+     *     <td>none
+     *   <tr>
+     *     <th scope="row">On key release?
+     *     <td>{@code false}
      * </tbody>
      * </table>
      *
--- a/src/java.desktop/share/classes/java/awt/AWTPermission.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/AWTPermission.java	Fri Oct 20 15:39:50 2017 -0700
@@ -48,144 +48,116 @@
  * <caption>AWTPermission target names, descriptions, and associated risks
  * </caption>
  * <thead>
- * <tr>
- * <th>Permission Target Name</th>
- * <th>What the Permission Allows</th>
- * <th>Risks of Allowing this Permission</th>
- * </tr>
+ *   <tr>
+ *     <th scope="col">Permission Target Name
+ *     <th scope="col">What the Permission Allows
+ *     <th scope="col">Risks of Allowing this Permission
  * </thead>
  * <tbody>
- * <tr>
- *   <td>accessClipboard</td>
- *   <td>Posting and retrieval of information to and from the AWT clipboard</td>
- *   <td>This would allow malfeasant code to share
- * potentially sensitive or confidential information.</td>
- * </tr>
- *
- * <tr>
- *   <td>accessEventQueue</td>
- *   <td>Access to the AWT event queue</td>
- *   <td>After retrieving the AWT event queue,
- * malicious code may peek at and even remove existing events
- * from its event queue, as well as post bogus events which may purposefully
- * cause the application or applet to misbehave in an insecure manner.</td>
- * </tr>
- *
- * <tr>
- *   <td>accessSystemTray</td>
- *   <td>Access to the AWT SystemTray instance</td>
- *   <td>This would allow malicious code to add tray icons to the system tray.
- * First, such an icon may look like the icon of some known application
- * (such as a firewall or anti-virus) and order a user to do something unsafe
- * (with help of balloon messages). Second, the system tray may be glutted with
- * tray icons so that no one could add a tray icon anymore.</td>
- * </tr>
- *
- * <tr>
- *   <td>createRobot</td>
- *   <td>Create java.awt.Robot objects</td>
- *   <td>The java.awt.Robot object allows code to generate native-level
- * mouse and keyboard events as well as read the screen. It could allow
- * malicious code to control the system, run other programs, read the
- * display, and deny mouse and keyboard access to the user.</td>
- * </tr>
- *
- * <tr>
- *   <td>fullScreenExclusive</td>
- *   <td>Enter full-screen exclusive mode</td>
- *   <td>Entering full-screen exclusive mode allows direct access to
- * low-level graphics card memory.  This could be used to spoof the
- * system, since the program is in direct control of rendering. Depending on
- * the implementation, the security warning may not be shown for the windows
- * used to enter the full-screen exclusive mode (assuming that the {@code
- * fullScreenExclusive} permission has been granted to this application). Note
- * that this behavior does not mean that the {@code
- * showWindowWithoutWarningBanner} permission will be automatically granted to
- * the application which has the {@code fullScreenExclusive} permission:
- * non-full-screen windows will continue to be shown with the security
- * warning.</td>
- * </tr>
- *
- * <tr>
- *   <td>listenToAllAWTEvents</td>
- *   <td>Listen to all AWT events, system-wide</td>
- *   <td>After adding an AWT event listener,
- * malicious code may scan all AWT events dispatched in the system,
- * allowing it to read all user input (such as passwords).  Each
- * AWT event listener is called from within the context of that
- * event queue's EventDispatchThread, so if the accessEventQueue
- * permission is also enabled, malicious code could modify the
- * contents of AWT event queues system-wide, causing the application
- * or applet to misbehave in an insecure manner.</td>
- * </tr>
- *
- * <tr>
- *   <td>readDisplayPixels</td>
- *   <td>Readback of pixels from the display screen</td>
- *   <td>Interfaces such as the java.awt.Composite interface or the
- * java.awt.Robot class allow arbitrary code to examine pixels on the
- * display enable malicious code to snoop on the activities of the user.</td>
- * </tr>
- *
- * <tr>
- *   <td>replaceKeyboardFocusManager</td>
- *   <td>Sets the {@code KeyboardFocusManager} for
- *       a particular thread.
- *   <td>When {@code SecurityManager} is installed, the invoking
- *       thread must be granted this permission in order to replace
- *       the current {@code KeyboardFocusManager}.  If permission
- *       is not granted, a {@code SecurityException} will be thrown.
- * </tr>
- *
- * <tr>
- *   <td>setAppletStub</td>
- *   <td>Setting the stub which implements Applet container services</td>
- *   <td>Malicious code could set an applet's stub and result in unexpected
- * behavior or denial of service to an applet.</td>
- * </tr>
- *
- * <tr>
- *   <td>setWindowAlwaysOnTop</td>
- *   <td>Setting always-on-top property of the window: {@link Window#setAlwaysOnTop}</td>
- *   <td>The malicious window might make itself look and behave like a real full desktop, so that
- * information entered by the unsuspecting user is captured and subsequently misused </td>
- * </tr>
- *
- * <tr>
- *   <td>showWindowWithoutWarningBanner</td>
- *   <td>Display of a window without also displaying a banner warning
- * that the window was created by an applet</td>
- *   <td>Without this warning,
- * an applet may pop up windows without the user knowing that they
- * belong to an applet.  Since users may make security-sensitive
- * decisions based on whether or not the window belongs to an applet
- * (entering a username and password into a dialog box, for example),
- * disabling this warning banner may allow applets to trick the user
- * into entering such information.</td>
- * </tr>
- *
- * <tr>
- *   <td>toolkitModality</td>
- *   <td>Creating {@link Dialog.ModalityType#TOOLKIT_MODAL TOOLKIT_MODAL} dialogs
- *       and setting the {@link Dialog.ModalExclusionType#TOOLKIT_EXCLUDE
- *       TOOLKIT_EXCLUDE} window property.</td>
- *   <td>When a toolkit-modal dialog is shown from an applet, it blocks all other
- * applets in the browser. When launching applications from Java Web Start,
- * its windows (such as the security dialog) may also be blocked by toolkit-modal
- * dialogs, shown from these applications.</td>
- * </tr>
- *
- * <tr>
- *   <td>watchMousePointer</td>
- *   <td>Getting the information about the mouse pointer position at any
- * time</td>
- *   <td>Constantly watching the mouse pointer,
- * an applet can make guesses about what the user is doing, i.e. moving
- * the mouse to the lower left corner of the screen most likely means that
- * the user is about to launch an application. If a virtual keypad is used
- * so that keyboard is emulated using the mouse, an applet may guess what
- * is being typed.</td>
- * </tr>
+ *   <tr>
+ *     <th scope="row">accessClipboard
+ *     <td>Posting and retrieval of information to and from the AWT clipboard
+ *     <td>This would allow malfeasant code to share potentially sensitive or
+ *     confidential information.
+ *   <tr>
+ *     <th scope="row">accessEventQueue
+ *     <td>Access to the AWT event queue
+ *     <td>After retrieving the AWT event queue, malicious code may peek at and
+ *     even remove existing events from its event queue, as well as post bogus
+ *     events which may purposefully cause the application or applet to
+ *     misbehave in an insecure manner.
+ *   <tr>
+ *     <th scope="row">accessSystemTray
+ *     <td>Access to the AWT SystemTray instance
+ *     <td>This would allow malicious code to add tray icons to the system tray.
+ *     First, such an icon may look like the icon of some known application
+ *     (such as a firewall or anti-virus) and order a user to do something
+ *     unsafe (with help of balloon messages). Second, the system tray may be
+ *     glutted with tray icons so that no one could add a tray icon anymore.
+ *   <tr>
+ *     <th scope="row">createRobot
+ *     <td>Create java.awt.Robot objects
+ *     <td>The java.awt.Robot object allows code to generate native-level mouse
+ *     and keyboard events as well as read the screen. It could allow malicious
+ *     code to control the system, run other programs, read the display, and
+ *     deny mouse and keyboard access to the user.
+ *   <tr>
+ *     <th scope="row">fullScreenExclusive
+ *     <td>Enter full-screen exclusive mode
+ *     <td>Entering full-screen exclusive mode allows direct access to low-level
+ *     graphics card memory. This could be used to spoof the system, since the
+ *     program is in direct control of rendering. Depending on the
+ *     implementation, the security warning may not be shown for the windows
+ *     used to enter the full-screen exclusive mode (assuming that the
+ *     {@code fullScreenExclusive} permission has been granted to this
+ *     application). Note that this behavior does not mean that the
+ *     {@code showWindowWithoutWarningBanner} permission will be automatically
+ *     granted to the application which has the {@code fullScreenExclusive}
+ *     permission: non-full-screen windows will continue to be shown with the
+ *     security warning.
+ *   <tr>
+ *     <th scope="row">listenToAllAWTEvents
+ *     <td>Listen to all AWT events, system-wide
+ *     <td>After adding an AWT event listener, malicious code may scan all AWT
+ *     events dispatched in the system, allowing it to read all user input (such
+ *     as passwords). Each AWT event listener is called from within the context
+ *     of that event queue's EventDispatchThread, so if the accessEventQueue
+ *     permission is also enabled, malicious code could modify the contents of
+ *     AWT event queues system-wide, causing the application or applet to
+ *     misbehave in an insecure manner.
+ *   <tr>
+ *     <th scope="row">readDisplayPixels
+ *     <td>Readback of pixels from the display screen
+ *     <td>Interfaces such as the java.awt.Composite interface or the
+ *     java.awt.Robot class allow arbitrary code to examine pixels on the
+ *     display enable malicious code to snoop on the activities of the user.
+ *   <tr>
+ *     <th scope="row">replaceKeyboardFocusManager
+ *     <td>Sets the {@code KeyboardFocusManager} for a particular thread.
+ *     <td>When {@code SecurityManager} is installed, the invoking thread must
+ *     be granted this permission in order to replace the current
+ *     {@code KeyboardFocusManager}. If permission is not granted, a
+ *     {@code SecurityException} will be thrown.
+ *   <tr>
+ *     <th scope="row">setAppletStub
+ *     <td>Setting the stub which implements Applet container services
+ *     <td>Malicious code could set an applet's stub and result in unexpected
+ *     behavior or denial of service to an applet.
+ *   <tr>
+ *     <th scope="row">setWindowAlwaysOnTop
+ *     <td>Setting always-on-top property of the window:
+ *     {@link Window#setAlwaysOnTop}
+ *     <td>The malicious window might make itself look and behave like a real
+ *     full desktop, so that information entered by the unsuspecting user is
+ *     captured and subsequently misused
+ *   <tr>
+ *     <th scope="row">showWindowWithoutWarningBanner
+ *     <td>Display of a window without also displaying a banner warning that the
+ *     window was created by an applet
+ *     <td>Without this warning, an applet may pop up windows without the user
+ *     knowing that they belong to an applet. Since users may make
+ *     security-sensitive decisions based on whether or not the window belongs
+ *     to an applet (entering a username and password into a dialog box, for
+ *     example), disabling this warning banner may allow applets to trick the
+ *     user into entering such information.
+ *   <tr>
+ *     <th scope="row">toolkitModality
+ *     <td>Creating {@link Dialog.ModalityType#TOOLKIT_MODAL TOOLKIT_MODAL}
+ *     dialogs and setting the
+ *     {@link Dialog.ModalExclusionType#TOOLKIT_EXCLUDE TOOLKIT_EXCLUDE} window
+ *     property.
+ *     <td>When a toolkit-modal dialog is shown from an applet, it blocks all
+ *     other applets in the browser. When launching applications from Java Web
+ *     Start, its windows (such as the security dialog) may also be blocked by
+ *     toolkit-modal dialogs, shown from these applications.
+ *   <tr>
+ *     <th scope="row">watchMousePointer
+ *     <td>Getting the information about the mouse pointer position at any time
+ *     <td>Constantly watching the mouse pointer, an applet can make guesses
+ *     about what the user is doing, i.e. moving the mouse to the lower left
+ *     corner of the screen most likely means that the user is about to launch
+ *     an application. If a virtual keypad is used so that keyboard is emulated
+ *     using the mouse, an applet may guess what is being typed.
  * </tbody>
  * </table>
  *
@@ -195,11 +167,9 @@
  * @see java.security.PermissionCollection
  * @see java.lang.SecurityManager
  *
- *
  * @author Marianne Mueller
  * @author Roland Schemers
  */
-
 public final class AWTPermission extends BasicPermission {
 
     /** use serialVersionUID from the Java 2 platform for interoperability */
--- a/src/java.desktop/share/classes/java/awt/AlphaComposite.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/AlphaComposite.java	Fri Oct 20 15:39:50 2017 -0700
@@ -72,22 +72,40 @@
  * The following factors are used in the description of the blending
  * equation in the Porter and Duff paper:
  *
- * <blockquote>
- * <table class="borderless">
+ * <table class="striped">
  * <caption style="display:none">Factors</caption>
- * <tr><th style="text-align:left">Factor&nbsp;&nbsp;<th style="text-align:left">Definition
- * <tr><td><em>A<sub>s</sub></em><td>the alpha component of the source pixel
- * <tr><td><em>C<sub>s</sub></em><td>a color component of the source pixel in premultiplied form
- * <tr><td><em>A<sub>d</sub></em><td>the alpha component of the destination pixel
- * <tr><td><em>C<sub>d</sub></em><td>a color component of the destination pixel in premultiplied form
- * <tr><td><em>F<sub>s</sub></em><td>the fraction of the source pixel that contributes to the output
- * <tr><td><em>F<sub>d</sub></em><td>the fraction of the destination pixel that contributes
- * to the output
- * <tr><td><em>A<sub>r</sub></em><td>the alpha component of the result
- * <tr><td><em>C<sub>r</sub></em><td>a color component of the result in premultiplied form
+ * <thead>
+ *   <tr>
+ *     <th scope="col">Factor
+ *     <th scope="col">Definition
+ * </thead>
+ * <tbody>
+ *   <tr>
+ *     <th scope="row"><em>A<sub>s</sub></em>
+ *     <td>the alpha component of the source pixel
+ *   <tr>
+ *     <th scope="row"><em>C<sub>s</sub></em>
+ *     <td>a color component of the source pixel in premultiplied form
+ *   <tr>
+ *     <th scope="row"><em>A<sub>d</sub></em>
+ *     <td>the alpha component of the destination pixel
+ *   <tr>
+ *     <th scope="row"><em>C<sub>d</sub></em>
+ *     <td>a color component of the destination pixel in premultiplied form
+ *   <tr>
+ *     <th scope="row"><em>F<sub>s</sub></em>
+ *     <td>the fraction of the source pixel that contributes to the output
+ *   <tr>
+ *     <th scope="row"><em>F<sub>d</sub></em>
+ *     <td>the fraction of the destination pixel that contributes to the output
+ *   <tr>
+ *     <th scope="row"><em>A<sub>r</sub></em>
+ *     <td>the alpha component of the result
+ *   <tr>
+ *     <th scope="row"><em>C<sub>r</sub></em>
+ *     <td>a color component of the result in premultiplied form
+ * </tbody>
  * </table>
- * </blockquote>
- *
  * <p>
  * Using these factors, Porter and Duff define 12 ways of choosing
  * the blending factors <em>F<sub>s</sub></em> and <em>F<sub>d</sub></em> to
@@ -113,19 +131,37 @@
  * The following factors will be used to discuss our extensions to
  * the blending equation in the Porter and Duff paper:
  *
- * <blockquote>
- * <table class="borderless">
+ * <table class="striped">
  * <caption style="display:none">Factors</caption>
- * <tr><th style="text-align:left">Factor&nbsp;&nbsp;<th style="text-align:left">Definition
- * <tr><td><em>C<sub>sr</sub></em> <td>one of the raw color components of the source pixel
- * <tr><td><em>C<sub>dr</sub></em> <td>one of the raw color components of the destination pixel
- * <tr><td><em>A<sub>ac</sub></em>  <td>the "extra" alpha component from the AlphaComposite instance
- * <tr><td><em>A<sub>sr</sub></em> <td>the raw alpha component of the source pixel
- * <tr><td><em>A<sub>dr</sub></em><td>the raw alpha component of the destination pixel
- * <tr><td><em>A<sub>df</sub></em> <td>the final alpha component stored in the destination
- * <tr><td><em>C<sub>df</sub></em> <td>the final raw color component stored in the destination
+ * <thead>
+ *   <tr>
+ *     <th scope="col">Factor
+ *     <th scope="col">Definition
+ * </thead>
+ * <tbody>
+ *   <tr>
+ *     <th scope="row"><em>C<sub>sr</sub></em>
+ *     <td>one of the raw color components of the source pixel
+ *   <tr>
+ *     <th scope="row"><em>C<sub>dr</sub></em>
+ *     <td>one of the raw color components of the destination pixel
+ *   <tr>
+ *     <th scope="row"><em>A<sub>ac</sub></em>
+ *     <td>the "extra" alpha component from the AlphaComposite instance
+ *   <tr>
+ *     <th scope="row"><em>A<sub>sr</sub></em>
+ *     <td>the raw alpha component of the source pixel
+ *   <tr>
+ *     <th scope="row"><em>A<sub>dr</sub></em>
+ *     <td>the raw alpha component of the destination pixel
+ *   <tr>
+ *     <th scope="row"><em>A<sub>df</sub></em>
+ *     <td>the final alpha component stored in the destination
+ *   <tr>
+ *     <th scope="row"><em>C<sub>df</sub></em>
+ *     <td>the final raw color component stored in the destination
+ * </tbody>
  * </table>
- *</blockquote>
  *
  * <h3>Preparing Inputs</h3>
  *
--- a/src/java.desktop/share/classes/java/awt/Component.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/Component.java	Fri Oct 20 15:39:50 2017 -0700
@@ -7247,28 +7247,24 @@
      * <caption>Recommended default values for a Component's focus traversal
      * keys</caption>
      * <thead>
-     * <tr>
-     *    <th>Identifier</th>
-     *    <th>Meaning</th>
-     *    <th>Default</th>
-     * </tr>
+     *   <tr>
+     *     <th scope="col">Identifier
+     *     <th scope="col">Meaning
+     *     <th scope="col">Default
      * </thead>
      * <tbody>
-     * <tr>
-     *    <td>KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS</td>
-     *    <td>Normal forward keyboard traversal</td>
-     *    <td>TAB on KEY_PRESSED, CTRL-TAB on KEY_PRESSED</td>
-     * </tr>
-     * <tr>
-     *    <td>KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS</td>
-     *    <td>Normal reverse keyboard traversal</td>
-     *    <td>SHIFT-TAB on KEY_PRESSED, CTRL-SHIFT-TAB on KEY_PRESSED</td>
-     * </tr>
-     * <tr>
-     *    <td>KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS</td>
-     *    <td>Go up one focus traversal cycle</td>
-     *    <td>none</td>
-     * </tr>
+     *   <tr>
+     *     <th scope="row">KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS
+     *     <td>Normal forward keyboard traversal
+     *     <td>TAB on KEY_PRESSED, CTRL-TAB on KEY_PRESSED
+     *   <tr>
+     *     <th scope="row">KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS
+     *     <td>Normal reverse keyboard traversal
+     *     <td>SHIFT-TAB on KEY_PRESSED, CTRL-SHIFT-TAB on KEY_PRESSED
+     *   <tr>
+     *     <th scope="row">KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS
+     *     <td>Go up one focus traversal cycle
+     *     <td>none
      * </tbody>
      * </table>
      *
--- a/src/java.desktop/share/classes/java/awt/Container.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/Container.java	Fri Oct 20 15:39:50 2017 -0700
@@ -3069,33 +3069,28 @@
      * <caption>Recommended default values for a Container's focus traversal
      * keys</caption>
      * <thead>
-     * <tr>
-     *    <th>Identifier</th>
-     *    <th>Meaning</th>
-     *    <th>Default</th>
-     * </tr>
+     *   <tr>
+     *     <th scope="col">Identifier
+     *     <th scope="col">Meaning
+     *     <th scope="col">Default
      * </thead>
      * <tbody>
-     * <tr>
-     *    <td>KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS</td>
-     *    <td>Normal forward keyboard traversal</td>
-     *    <td>TAB on KEY_PRESSED, CTRL-TAB on KEY_PRESSED</td>
-     * </tr>
-     * <tr>
-     *    <td>KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS</td>
-     *    <td>Normal reverse keyboard traversal</td>
-     *    <td>SHIFT-TAB on KEY_PRESSED, CTRL-SHIFT-TAB on KEY_PRESSED</td>
-     * </tr>
-     * <tr>
-     *    <td>KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS</td>
-     *    <td>Go up one focus traversal cycle</td>
-     *    <td>none</td>
-     * </tr>
-     * <tr>
-     *    <td>KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS</td>
-     *    <td>Go down one focus traversal cycle</td>
-     *    <td>none</td>
-     * </tr>
+     *   <tr>
+     *     <th scope="row">KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS
+     *     <td>Normal forward keyboard traversal
+     *     <td>TAB on KEY_PRESSED, CTRL-TAB on KEY_PRESSED
+     *   <tr>
+     *     <th scope="row">KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS
+     *     <td>Normal reverse keyboard traversal
+     *     <td>SHIFT-TAB on KEY_PRESSED, CTRL-SHIFT-TAB on KEY_PRESSED
+     *   <tr>
+     *     <th scope="row">KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS
+     *     <td>Go up one focus traversal cycle
+     *     <td>none
+     *   <tr>
+     *     <th scope="row">KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS
+     *     <td>Go down one focus traversal cycle
+     *     <td>none
      * </tbody>
      * </table>
      *
--- a/src/java.desktop/share/classes/java/awt/EventQueue.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/EventQueue.java	Fri Oct 20 15:39:50 2017 -0700
@@ -680,33 +680,28 @@
      * <table class="striped">
      * <caption>Event types, source types, and dispatch methods</caption>
      * <thead>
-     * <tr>
-     *     <th>Event Type</th>
-     *     <th>Source Type</th>
-     *     <th>Dispatched To</th>
-     * </tr>
+     *   <tr>
+     *     <th scope="col">Event Type
+     *     <th scope="col">Source Type
+     *     <th scope="col">Dispatched To
      * </thead>
      * <tbody>
-     * <tr>
-     *     <td>ActiveEvent</td>
-     *     <td>Any</td>
-     *     <td>event.dispatch()</td>
-     * </tr>
-     * <tr>
-     *     <td>Other</td>
-     *     <td>Component</td>
-     *     <td>source.dispatchEvent(AWTEvent)</td>
-     * </tr>
-     * <tr>
-     *     <td>Other</td>
-     *     <td>MenuComponent</td>
-     *     <td>source.dispatchEvent(AWTEvent)</td>
-     * </tr>
-     * <tr>
-     *     <td>Other</td>
-     *     <td>Other</td>
-     *     <td>No action (ignored)</td>
-     * </tr>
+     *   <tr>
+     *     <th scope="row">ActiveEvent
+     *     <td>Any
+     *     <td>event.dispatch()
+     *   <tr>
+     *     <th scope="row">Other
+     *     <td>Component
+     *     <td>source.dispatchEvent(AWTEvent)
+     *   <tr>
+     *     <th scope="row">Other
+     *     <td>MenuComponent
+     *     <td>source.dispatchEvent(AWTEvent)
+     *   <tr>
+     *     <th scope="row">Other
+     *     <td>Other
+     *     <td>No action (ignored)
      * </tbody>
      * </table>
      *
--- a/src/java.desktop/share/classes/java/awt/KeyboardFocusManager.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/KeyboardFocusManager.java	Fri Oct 20 15:39:50 2017 -0700
@@ -1042,35 +1042,30 @@
      * <table class="striped">
      * <caption>Recommended default values for focus traversal keys</caption>
      * <thead>
-     * <tr>
-     *    <th>Identifier</th>
-     *    <th>Meaning</th>
-     *    <th>Default</th>
-     * </tr>
+     *   <tr>
+     *     <th scope="col">Identifier
+     *     <th scope="col">Meaning
+     *     <th scope="col">Default
      * </thead>
      * <tbody>
-     * <tr>
-     *    <td>{@code KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS}</td>
-     *    <td>Normal forward keyboard traversal</td>
-     *    <td>{@code TAB} on {@code KEY_PRESSED},
-     *        {@code CTRL-TAB} on {@code KEY_PRESSED}</td>
-     * </tr>
-     * <tr>
-     *    <td>{@code KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS}</td>
-     *    <td>Normal reverse keyboard traversal</td>
-     *    <td>{@code SHIFT-TAB} on {@code KEY_PRESSED},
-     *        {@code CTRL-SHIFT-TAB} on {@code KEY_PRESSED}</td>
-     * </tr>
-     * <tr>
-     *    <td>{@code KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS}</td>
-     *    <td>Go up one focus traversal cycle</td>
-     *    <td>none</td>
-     * </tr>
-     * <tr>
-     *    <td>{@code KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS}</td>
-     *    <td>Go down one focus traversal cycle</td>
-     *    <td>none</td>
-     * </tr>
+     *   <tr>
+     *     <th scope="row">{@code KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS}
+     *     <td>Normal forward keyboard traversal
+     *     <td>{@code TAB} on {@code KEY_PRESSED}, {@code CTRL-TAB} on
+     *     {@code KEY_PRESSED}
+     *   <tr>
+     *     <th scope="row">{@code KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS}
+     *     <td>Normal reverse keyboard traversal
+     *     <td>{@code SHIFT-TAB} on {@code KEY_PRESSED}, {@code CTRL-SHIFT-TAB}
+     *     on {@code KEY_PRESSED}
+     *   <tr>
+     *     <th scope="row">{@code KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS}
+     *     <td>Go up one focus traversal cycle
+     *     <td>none
+     *   <tr>
+     *     <th scope="row">{@code KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS}
+     *     <td>Go down one focus traversal cycle
+     *     <td>none
      * </tbody>
      * </table>
      *
--- a/src/java.desktop/share/classes/java/awt/Scrollbar.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/Scrollbar.java	Fri Oct 20 15:39:50 2017 -0700
@@ -299,58 +299,44 @@
      * <table class="striped">
      * <caption>Scrollbar default properties</caption>
      * <thead>
-     * <tr>
-     *   <th>Property</th>
-     *   <th>Description</th>
-     *   <th>Default Value</th>
-     * </tr>
+     *   <tr>
+     *     <th scope="col">Property
+     *     <th scope="col">Description
+     *     <th scope="col">Default Value
      * </thead>
      * <tbody>
-     * <tr>
-     *   <td>orientation</td>
-     *   <td>indicates whether the scroll bar is vertical
-     *   <br>or horizontal</td>
-     *   <td>{@code Scrollbar.VERTICAL}</td>
-     * </tr>
-     * <tr>
-     *   <td>value</td>
-     *   <td>value which controls the location
-     *   <br>of the scroll bar's bubble</td>
-     *   <td>0</td>
-     * </tr>
-     * <tr>
-     *   <td>visible amount</td>
-     *   <td>visible amount of the scroll bar's range,
-     *   <br>typically represented by the size of the
-     *   <br>scroll bar's bubble</td>
-     *   <td>10</td>
-     * </tr>
-     * <tr>
-     *   <td>minimum</td>
-     *   <td>minimum value of the scroll bar</td>
-     *   <td>0</td>
-     * </tr>
-     * <tr>
-     *   <td>maximum</td>
-     *   <td>maximum value of the scroll bar</td>
-     *   <td>100</td>
-     * </tr>
-     * <tr>
-     *   <td>unit increment</td>
-     *   <td>amount the value changes when the
-     *   <br>Line Up or Line Down key is pressed,
-     *   <br>or when the end arrows of the scrollbar
-     *   <br>are clicked </td>
-     *   <td>1</td>
-     * </tr>
-     * <tr>
-     *   <td>block increment</td>
-     *   <td>amount the value changes when the
-     *   <br>Page Up or Page Down key is pressed,
-     *   <br>or when the scrollbar track is clicked
-     *   <br>on either side of the bubble </td>
-     *   <td>10</td>
-     * </tr>
+     *   <tr>
+     *     <th scope="row">orientation
+     *     <td>indicates whether the scroll bar is vertical or horizontal
+     *     <td>{@code Scrollbar.VERTICAL}
+     *   <tr>
+     *     <th scope="row">value
+     *     <td>value which controls the location of the scroll bar's bubble
+     *     <td>0
+     *   <tr>
+     *     <th scope="row">visible amount
+     *     <td>visible amount of the scroll bar's range, typically represented
+     *     by the size of the scroll bar's bubble
+     *     <td>10
+     *   <tr>
+     *     <th scope="row">minimum
+     *     <td>minimum value of the scroll bar
+     *     <td>0
+     *   <tr>
+     *     <th scope="row">maximum
+     *     <td>maximum value of the scroll bar
+     *     <td>100
+     *   <tr>
+     *     <th scope="row">unit increment
+     *     <td>amount the value changes when the Line Up or Line Down key is
+     *     pressed, or when the end arrows of the scrollbar are clicked
+     *     <td>1
+     *   <tr>
+     *     <th scope="row">block increment
+     *     <td>amount the value changes when the Page Up or Page Down key is
+     *     pressed, or when the scrollbar track is clicked<br>on either side of
+     *     the bubble
+     *     <td>10
      * </tbody>
      * </table>
      *
--- a/src/java.desktop/share/classes/java/awt/SystemTray.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/SystemTray.java	Fri Oct 20 15:39:50 2017 -0700
@@ -371,28 +371,26 @@
      * <table class="striped">
      * <caption>SystemTray properties</caption>
      * <thead>
-     * <tr>
-     *    <th>Property</th>
-     *    <th>Description</th>
-     * </tr>
+     *   <tr>
+     *     <th scope="col">Property
+     *     <th scope="col">Description
      * </thead>
      * <tbody>
-     * <tr>
-     *    <td>{@code trayIcons}</td>
-     *    <td>The {@code SystemTray}'s array of {@code TrayIcon} objects.
-     *        The array is accessed via the {@link #getTrayIcons} method.<br>
-     *        This property is changed when a tray icon is added to (or removed
-     *        from) the system tray.<br> For example, this property is changed
-     *        when the system tray becomes unavailable on the desktop<br>
-     *        and the tray icons are automatically removed.</td>
-     * </tr>
-     * <tr>
-     *    <td>{@code systemTray}</td>
-     *    <td>This property contains {@code SystemTray} instance when the system tray
-     *        is available or {@code null} otherwise.<br> This property is changed
-     *        when the system tray becomes available or unavailable on the desktop.<br>
-     *        The property is accessed by the {@link #getSystemTray} method.</td>
-     * </tr>
+     *   <tr>
+     *     <th scope="row">{@code trayIcons}
+     *     <td>The {@code SystemTray}'s array of {@code TrayIcon} objects. The
+     *     array is accessed via the {@link #getTrayIcons} method. This property
+     *     is changed when a tray icon is added to (or removed from) the system
+     *     tray. For example, this property is changed when the system tray
+     *     becomes unavailable on the desktop and the tray icons are
+     *     automatically removed.
+     *   <tr>
+     *     <th scope="row">{@code systemTray}
+     *     <td>This property contains {@code SystemTray} instance when the
+     *     system tray is available or {@code null} otherwise. This property is
+     *     changed when the system tray becomes available or unavailable on the
+     *     desktop. The property is accessed by the {@link #getSystemTray}
+     *     method.
      * </tbody>
      * </table>
      * <p>
--- a/src/java.desktop/share/classes/java/awt/font/NumericShaper.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/font/NumericShaper.java	Fri Oct 20 15:39:50 2017 -0700
@@ -108,39 +108,36 @@
  *
  * <table class="plain">
  * <caption>NumericShaper constants precedence</caption>
- *    <thead>
- *    <tr>
- *       <th class="TableHeadingColor">Unicode Range</th>
- *       <th class="TableHeadingColor">{@code NumericShaper} Constants</th>
- *       <th class="TableHeadingColor">Precedence</th>
- *    </tr>
- *    </thead>
- *    <tbody>
- *    <tr>
- *       <td rowspan="2">Arabic</td>
- *       <td>{@link NumericShaper#ARABIC NumericShaper.ARABIC}<br>
- *           {@link NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC}</td>
- *       <td>{@link NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC}</td>
- *    </tr>
- *    <tr>
- *       <td>{@link NumericShaper.Range#ARABIC}<br>
- *           {@link NumericShaper.Range#EASTERN_ARABIC}</td>
- *       <td>{@link NumericShaper.Range#EASTERN_ARABIC}</td>
- *    </tr>
- *    </tbody>
- *    <tbody>
- *    <tr>
- *       <td>Tai Tham</td>
- *       <td>{@link NumericShaper.Range#TAI_THAM_HORA}<br>
- *           {@link NumericShaper.Range#TAI_THAM_THAM}</td>
- *       <td>{@link NumericShaper.Range#TAI_THAM_THAM}</td>
- *    </tr>
- *    </tbody>
+ * <thead>
+ *   <tr>
+ *     <th scope="col">Unicode Range
+ *     <th scope="col">{@code NumericShaper} Constants
+ *     <th scope="col">Precedence
+ * </thead>
+ * <tbody>
+ *   <tr>
+ *     <th scope="row" rowspan="2">Arabic
+ *     <td>{@link NumericShaper#ARABIC NumericShaper.ARABIC}
+ *     <br>
+ *     {@link NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC}
+ *     <td>{@link NumericShaper#EASTERN_ARABIC NumericShaper.EASTERN_ARABIC}
+ *   </tr>
+ *   <tr>
+ *     <th scope="row">{@link NumericShaper.Range#ARABIC}
+ *     <br>
+ *     {@link NumericShaper.Range#EASTERN_ARABIC}
+ *     <td>{@link NumericShaper.Range#EASTERN_ARABIC}
+ *   <tr>
+ *     <th scope="row">Tai Tham
+ *     <td>{@link NumericShaper.Range#TAI_THAM_HORA}
+ *     <br>
+ *     {@link NumericShaper.Range#TAI_THAM_THAM}
+ *     <td>{@link NumericShaper.Range#TAI_THAM_THAM}
+ * </tbody>
  * </table>
  *
  * @since 1.4
  */
-
 public final class NumericShaper implements java.io.Serializable {
 
     // For access from java.text.Bidi
--- a/src/java.desktop/share/classes/java/awt/font/TextAttribute.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/java/awt/font/TextAttribute.java	Fri Oct 20 15:39:50 2017 -0700
@@ -96,159 +96,141 @@
  * </UL>
  *
  * <h4>Summary of attributes</h4>
- * <table style="float:center;width:95%" class="striped">
- * <caption>Key, value type, principal constants, and
- * default value behavior of all TextAttributes</caption>
+ *
+ * <table style="width:95%;margin: 0px auto" class="striped">
+ * <caption>Key, value type, principal constants, and default value behavior of
+ * all TextAttributes</caption>
  * <thead>
- * <tr>
- * <th valign="TOP" style="text-align:center">Key</th>
- * <th valign="TOP" style="text-align:center">Value Type</th>
- * <th valign="TOP" style="text-align:center">Principal Constants</th>
- * <th valign="TOP" style="text-align:center">Default Value</th>
- * </tr>
+ *   <tr>
+ *     <th scope="col">Key
+ *     <th scope="col">Value Type
+ *     <th scope="col">Principal Constants
+ *     <th scope="col">Default Value
  * </thead>
  * <tbody>
- * <tr>
- * <td valign="TOP">{@link #FAMILY}</td>
- * <td valign="TOP">String</td>
- * <td valign="TOP">See Font {@link java.awt.Font#DIALOG DIALOG},
- * {@link java.awt.Font#DIALOG_INPUT DIALOG_INPUT},<br> {@link java.awt.Font#SERIF SERIF},
- * {@link java.awt.Font#SANS_SERIF SANS_SERIF}, and {@link java.awt.Font#MONOSPACED MONOSPACED}.
- * </td>
- * <td valign="TOP">"Default" (use platform default)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #WEIGHT}</td>
- * <td valign="TOP">Number</td>
- * <td valign="TOP">WEIGHT_REGULAR, WEIGHT_BOLD</td>
- * <td valign="TOP">WEIGHT_REGULAR</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #WIDTH}</td>
- * <td valign="TOP">Number</td>
- * <td valign="TOP">WIDTH_CONDENSED, WIDTH_REGULAR,<br>WIDTH_EXTENDED</td>
- * <td valign="TOP">WIDTH_REGULAR</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #POSTURE}</td>
- * <td valign="TOP">Number</td>
- * <td valign="TOP">POSTURE_REGULAR, POSTURE_OBLIQUE</td>
- * <td valign="TOP">POSTURE_REGULAR</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #SIZE}</td>
- * <td valign="TOP">Number</td>
- * <td valign="TOP">none</td>
- * <td valign="TOP">12.0</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #TRANSFORM}</td>
- * <td valign="TOP">{@link TransformAttribute}</td>
- * <td valign="TOP">See TransformAttribute {@link TransformAttribute#IDENTITY IDENTITY}</td>
- * <td valign="TOP">TransformAttribute.IDENTITY</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #SUPERSCRIPT}</td>
- * <td valign="TOP">Integer</td>
- * <td valign="TOP">SUPERSCRIPT_SUPER, SUPERSCRIPT_SUB</td>
- * <td valign="TOP">0 (use the standard glyphs and metrics)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #FONT}</td>
- * <td valign="TOP">{@link java.awt.Font}</td>
- * <td valign="TOP">none</td>
- * <td valign="TOP">null (do not override font resolution)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #CHAR_REPLACEMENT}</td>
- * <td valign="TOP">{@link GraphicAttribute}</td>
- * <td valign="TOP">none</td>
- * <td valign="TOP">null (draw text using font glyphs)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #FOREGROUND}</td>
- * <td valign="TOP">{@link java.awt.Paint}</td>
- * <td valign="TOP">none</td>
- * <td valign="TOP">null (use current graphics paint)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #BACKGROUND}</td>
- * <td valign="TOP">{@link java.awt.Paint}</td>
- * <td valign="TOP">none</td>
- * <td valign="TOP">null (do not render background)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #UNDERLINE}</td>
- * <td valign="TOP">Integer</td>
- * <td valign="TOP">UNDERLINE_ON</td>
- * <td valign="TOP">-1 (do not render underline)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #STRIKETHROUGH}</td>
- * <td valign="TOP">Boolean</td>
- * <td valign="TOP">STRIKETHROUGH_ON</td>
- * <td valign="TOP">false (do not render strikethrough)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #RUN_DIRECTION}</td>
- * <td valign="TOP">Boolean</td>
- * <td valign="TOP">RUN_DIRECTION_LTR<br>RUN_DIRECTION_RTL</td>
- * <td valign="TOP">null (use {@link java.text.Bidi} standard default)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #BIDI_EMBEDDING}</td>
- * <td valign="TOP">Integer</td>
- * <td valign="TOP">none</td>
- * <td valign="TOP">0 (use base line direction)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #JUSTIFICATION}</td>
- * <td valign="TOP">Number</td>
- * <td valign="TOP">JUSTIFICATION_FULL</td>
- * <td valign="TOP">JUSTIFICATION_FULL</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #INPUT_METHOD_HIGHLIGHT}</td>
- * <td valign="TOP">{@link java.awt.im.InputMethodHighlight},<br>{@link java.text.Annotation}</td>
- * <td valign="TOP">(see class)</td>
- * <td valign="TOP">null (do not apply input highlighting)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #INPUT_METHOD_UNDERLINE}</td>
- * <td valign="TOP">Integer</td>
- * <td valign="TOP">UNDERLINE_LOW_ONE_PIXEL,<br>UNDERLINE_LOW_TWO_PIXEL</td>
- * <td valign="TOP">-1 (do not render underline)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #SWAP_COLORS}</td>
- * <td valign="TOP">Boolean</td>
- * <td valign="TOP">SWAP_COLORS_ON</td>
- * <td valign="TOP">false (do not swap colors)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #NUMERIC_SHAPING}</td>
- * <td valign="TOP">{@link java.awt.font.NumericShaper}</td>
- * <td valign="TOP">none</td>
- * <td valign="TOP">null (do not shape digits)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #KERNING}</td>
- * <td valign="TOP">Integer</td>
- * <td valign="TOP">KERNING_ON</td>
- * <td valign="TOP">0 (do not request kerning)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #LIGATURES}</td>
- * <td valign="TOP">Integer</td>
- * <td valign="TOP">LIGATURES_ON</td>
- * <td valign="TOP">0 (do not form optional ligatures)</td>
- * </tr>
- * <tr>
- * <td valign="TOP">{@link #TRACKING}</td>
- * <td valign="TOP">Number</td>
- * <td valign="TOP">TRACKING_LOOSE, TRACKING_TIGHT</td>
- * <td valign="TOP">0 (do not add tracking)</td>
- * </tr>
+ *   <tr>
+ *     <th scope="row">{@link #FAMILY}
+ *     <td>String
+ *     <td>See Font {@link java.awt.Font#DIALOG DIALOG},
+ *     {@link java.awt.Font#DIALOG_INPUT DIALOG_INPUT},
+ *     <br>
+ *     {@link java.awt.Font#SERIF SERIF},
+ *     {@link java.awt.Font#SANS_SERIF SANS_SERIF}, and
+ *     {@link java.awt.Font#MONOSPACED MONOSPACED}.
+ *     <td>"Default" (use platform default)
+ *   <tr>
+ *     <th scope="row">{@link #WEIGHT}
+ *     <td>Number
+ *     <td>WEIGHT_REGULAR, WEIGHT_BOLD
+ *     <td>WEIGHT_REGULAR
+ *   <tr>
+ *     <th scope="row">{@link #WIDTH}
+ *     <td>Number
+ *     <td>WIDTH_CONDENSED, WIDTH_REGULAR,<br>WIDTH_EXTENDED
+ *     <td>WIDTH_REGULAR
+ *   <tr>
+ *     <th scope="row">{@link #POSTURE}
+ *     <td>Number
+ *     <td>POSTURE_REGULAR, POSTURE_OBLIQUE
+ *     <td>POSTURE_REGULAR
+ *   <tr>
+ *     <th scope="row">{@link #SIZE}
+ *     <td>Number
+ *     <td>none
+ *     <td>12.0
+ *   <tr>
+ *     <th scope="row">{@link #TRANSFORM}
+ *     <td>{@link TransformAttribute}
+ *     <td>See TransformAttribute {@link TransformAttribute#IDENTITY IDENTITY}
+ *     <td>TransformAttribute.IDENTITY
+ *   <tr>
+ *     <th scope="row">{@link #SUPERSCRIPT}
+ *     <td>Integer
+ *     <td>SUPERSCRIPT_SUPER, SUPERSCRIPT_SUB
+ *     <td>0 (use the standard glyphs and metrics)
+ *   <tr>
+ *     <th scope="row">{@link #FONT}
+ *     <td>{@link java.awt.Font}
+ *     <td>none
+ *     <td>null (do not override font resolution)
+ *   <tr>
+ *     <th scope="row">{@link #CHAR_REPLACEMENT}
+ *     <td>{@link GraphicAttribute}
+ *     <td>none
+ *     <td>null (draw text using font glyphs)
+ *   <tr>
+ *     <th scope="row">{@link #FOREGROUND}
+ *     <td>{@link java.awt.Paint}
+ *     <td>none
+ *     <td>null (use current graphics paint)
+ *   <tr>
+ *     <th scope="row">{@link #BACKGROUND}
+ *     <td>{@link java.awt.Paint}
+ *     <td>none
+ *     <td>null (do not render background)
+ *   <tr>
+ *     <th scope="row">{@link #UNDERLINE}
+ *     <td>Integer
+ *     <td>UNDERLINE_ON
+ *     <td>-1 (do not render underline)
+ *   <tr>
+ *     <th scope="row">{@link #STRIKETHROUGH}
+ *     <td>Boolean
+ *     <td>STRIKETHROUGH_ON
+ *     <td>false (do not render strikethrough)
+ *   <tr>
+ *     <th scope="row">{@link #RUN_DIRECTION}
+ *     <td>Boolean
+ *     <td>RUN_DIRECTION_LTR<br>RUN_DIRECTION_RTL
+ *     <td>null (use {@link java.text.Bidi} standard default)
+ *   <tr>
+ *     <th scope="row">{@link #BIDI_EMBEDDING}
+ *     <td>Integer
+ *     <td>none
+ *     <td>0 (use base line direction)
+ *   <tr>
+ *     <th scope="row">{@link #JUSTIFICATION}
+ *     <td>Number
+ *     <td>JUSTIFICATION_FULL
+ *     <td>JUSTIFICATION_FULL
+ *   <tr>
+ *     <th scope="row">{@link #INPUT_METHOD_HIGHLIGHT}
+ *     <td>{@link java.awt.im.InputMethodHighlight},
+ *     <br>
+ *     {@link java.text.Annotation}
+ *     <td>(see class)
+ *     <td>null (do not apply input highlighting)
+ *   <tr>
+ *     <th scope="row">{@link #INPUT_METHOD_UNDERLINE}
+ *     <td>Integer
+ *     <td>UNDERLINE_LOW_ONE_PIXEL,<br>UNDERLINE_LOW_TWO_PIXEL
+ *     <td>-1 (do not render underline)
+ *   <tr>
+ *     <th scope="row">{@link #SWAP_COLORS}
+ *     <td>Boolean
+ *     <td>SWAP_COLORS_ON
+ *     <td>false (do not swap colors)
+ *   <tr>
+ *     <th scope="row">{@link #NUMERIC_SHAPING}
+ *     <td>{@link java.awt.font.NumericShaper}
+ *     <td>none
+ *     <td>null (do not shape digits)
+ *   <tr>
+ *     <th scope="row">{@link #KERNING}
+ *     <td>Integer
+ *     <td>KERNING_ON
+ *     <td>0 (do not request kerning)
+ *   <tr>
+ *     <th scope="row">{@link #LIGATURES}
+ *     <td>Integer
+ *     <td>LIGATURES_ON
+ *     <td>0 (do not form optional ligatures)
+ *   <tr>
+ *     <th scope="row">{@link #TRACKING}
+ *     <td>Number
+ *     <td>TRACKING_LOOSE, TRACKING_TIGHT
+ *     <td>0 (do not add tracking)
+ *   </tr>
  * </tbody>
  * </table>
  *
--- a/src/java.desktop/share/classes/javax/imageio/package-info.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/imageio/package-info.java	Fri Oct 20 15:39:50 2017 -0700
@@ -39,84 +39,77 @@
  * <p>
  * All implementations of javax.imageio provide the following standard image
  * format plug-ins:
- * <div>
- * <table border=1 cellpadding=5 style="margin: 0px auto;" summary="Standard
- * image format plug-ins">
- *     <tr>
- *         <th>&nbsp;</th><th>Reading</th><th>Writing</th><th>Notes</th>
- *         <th>Metadata</th>
- *     </tr>
  *
+ * <table class="striped">
+ * <caption>Standard image format plug-ins</caption>
+ * <thead>
+ *   <tr>
+ *     <th scope="col">Image format
+ *     <th scope="col">Reading
+ *     <th scope="col">Writing
+ *     <th scope="col">Notes
+ *     <th scope="col">Metadata
+ * </thead>
+ * <tbody>
  * <!-- BMP plugin -->
- *     <tr>
- *         <td><a href="https://msdn.microsoft.com/en-us/library/dd183391.aspx">
- *         BMP</a></td>
- *         <td align='center'>yes</td>
- *         <td align='center'>yes</td>
- *         <td align='center'>none</td>
- *         <td align='center'><a href='metadata/doc-files/bmp_metadata.html'>BMP
- *         metadata format</a></td>
- *     </tr>
- *
+ *   <tr>
+ *     <th scope="row">
+ *     <a href="https://msdn.microsoft.com/en-us/library/dd183391.aspx">BMP</a>
+ *     <td>yes
+ *     <td>yes
+ *     <td>none
+ *     <td><a href='metadata/doc-files/bmp_metadata.html'>BMP
+ *     metadata format</a>
  * <!-- GIF plugin -->
- *     <tr>
- *         <td><a href="http://www.w3.org/Graphics/GIF/spec-gif89a.txt">GIF</a>
- *         </td>
- *         <td align='center'>yes</td>
- *         <td align='center'>yes</td>
- *         <td align='center'><a href="#gif_plugin_notes">GIF plug-in notes</a>
- *         </td>
- *         <td align='center'><a href='metadata/doc-files/gif_metadata.html'>GIF
- *         metadata format</a></td>
- *     </tr>
- *
+ *   <tr>
+ *     <th scope="row">
+ *     <a href="http://www.w3.org/Graphics/GIF/spec-gif89a.txt">GIF</a>
+ *     <td>yes
+ *     <td>yes
+ *     <td><a href="#gif_plugin_notes">GIF plug-in notes</a>
+ *     <td><a href='metadata/doc-files/gif_metadata.html'>GIF
+ *     metadata format</a>
  * <!-- JPEG plugin -->
- *     <tr>
- *         <td><a href="http://www.jpeg.org">JPEG</a></td>
- *         <td align='center'>yes</td>
- *         <td align='center'>yes</td>
- *         <td align='center'>none</td>
- *         <td align='center'><a href='metadata/doc-files/jpeg_metadata.html'>
- *         JPEG metadata format</a></td>
- *     </tr>
- *
+ *   <tr>
+ *     <th scope="row"><a href="http://www.jpeg.org">JPEG</a>
+ *     <td>yes
+ *     <td>yes
+ *     <td>none
+ *     <td><a href='metadata/doc-files/jpeg_metadata.html'>
+ *     JPEG metadata format</a>
  * <!-- PNG plugin -->
- *     <tr>
- *         <td><a href="http://www.libpng.org/pub/png/spec/">PNG</a></td>
- *         <td align='center'>yes</td>
- *         <td align='center'>yes</td>
- *         <td align='center'>none</td>
- *         <td align='center'><a href='metadata/doc-files/png_metadata.html'>PNG
- *         metadata format</a></td>
- *     </tr>
- *
+ *   <tr>
+ *     <th scope="row"><a href="http://www.libpng.org/pub/png/spec/">PNG</a>
+ *     <td>yes
+ *     <td>yes
+ *     <td>none
+ *     <td><a href='metadata/doc-files/png_metadata.html'>PNG
+ *     metadata format</a>
  * <!-- TIFF plugin -->
- *     <tr>
- *         <td><a href="https://partners.adobe.com/public/developer/en/tiff/TIFF6.pdf">
- *         TIFF</a></td>
- *         <td align='center'>yes</td>
- *         <td align='center'>yes</td>
- *         <td align='center'><a href='metadata/doc-files/tiff_metadata.html#Reading'>
- *         TIFF plug-in notes</a></td>
- *         <td align='center'><a href='metadata/doc-files/tiff_metadata.html#StreamMetadata'>
- *         TIFF metadata format</a></td>
- *     </tr>
- *
+ *   <tr>
+ *     <th scope="row">
+ *     <a href="https://partners.adobe.com/public/developer/en/tiff/TIFF6.pdf">
+ *     TIFF</a>
+ *     <td>yes
+ *     <td>yes
+ *     <td>
+ *     <a href='metadata/doc-files/tiff_metadata.html#Reading'>TIFF plug-in
+ *     notes</a>
+ *     <td>
+ *     <a href='metadata/doc-files/tiff_metadata.html#StreamMetadata'>TIFF
+ *     metadata format</a>
  * <!-- WBMP plugin -->
- *     <tr>
- *         <td><a href="http://www.wapforum.org/what/technical/SPEC-WAESpec-19990524.pdf">
- *         WBMP</a></td>
- *         <td align='center'>yes</td>
- *         <td align='center'>yes</td>
- *         <td align='center'>none</td>
- *         <td align='center'><a href='metadata/doc-files/wbmp_metadata.html'>
- *         WBMP metadata format</a></td>
- *     </tr>
+ *   <tr>
+ *     <th scope="row">
+ *     <a href="http://www.wapforum.org/what/technical/SPEC-WAESpec-19990524.pdf">
+ *     WBMP</a>
+ *     <td>yes
+ *     <td>yes
+ *     <td>none
+ *     <td><a href='metadata/doc-files/wbmp_metadata.html'>
+ *     WBMP metadata format</a>
+ * </tbody>
  * </table>
- * </div>
- * <BR>
- * <BR>
- * <BR>
  *
  * <h2> Standard Plug-in Notes</h2>
  *
--- a/src/java.desktop/share/classes/javax/imageio/plugins/bmp/BMPImageWriteParam.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/imageio/plugins/bmp/BMPImageWriteParam.java	Fri Oct 20 15:39:50 2017 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -54,13 +54,32 @@
  * listed in the following
  * table:
  *
- * <table border=1>
- * <caption><b>Compression Types</b></caption>
- * <tr><th>Type String</th> <th>Description</th>  <th>Image Types</th></tr>
- * <tr><td>BI_RGB</td>  <td>Uncompressed RLE</td> <td>{@literal <= } 8-bits/sample</td></tr>
- * <tr><td>BI_RLE8</td> <td>8-bit Run Length Encoding</td> <td>{@literal <=} 8-bits/sample</td></tr>
- * <tr><td>BI_RLE4</td> <td>4-bit Run Length Encoding</td> <td>{@literal <=} 4-bits/sample</td></tr>
- * <tr><td>BI_BITFIELDS</td> <td>Packed data</td> <td> 16 or 32 bits/sample</td></tr>
+ * <table class="striped">
+ * <caption>Compression Types</caption>
+ * <thead>
+ *   <tr>
+ *     <th scope="col">Type String
+ *     <th scope="col">Description
+ *     <th scope="col">Image Types
+ * </thead>
+ * <tbody>
+ *   <tr>
+ *     <th scope="row">BI_RGB
+ *     <td>Uncompressed RLE
+ *     <td>{@literal <= } 8-bits/sample
+ *   <tr>
+ *     <th scope="row">BI_RLE8
+ *     <td>8-bit Run Length Encoding
+ *     <td>{@literal <=} 8-bits/sample
+ *   <tr>
+ *     <th scope="row">BI_RLE4
+ *     <td>4-bit Run Length Encoding
+ *     <td>{@literal <=} 4-bits/sample
+ *   <tr>
+ *     <th scope="row">BI_BITFIELDS
+ *     <td>Packed data
+ *     <td>16 or 32 bits/sample
+ * </tbody>
  * </table>
  */
 public class BMPImageWriteParam extends ImageWriteParam {
--- a/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java	Fri Oct 20 15:39:50 2017 -0700
@@ -40,221 +40,83 @@
  * TIFF data types are referred to by Java constants and mapped internally
  * onto Java language data types and type names as follows:
  *
- * <br>
- * <br>
- * <table border="1">
+ * <table class="striped">
  * <caption>TIFF Data Type to Java Data Type Mapping</caption>
- *
- * <tr>
- * <th>
- * <b>TIFF Data Type</b>
- * </th>
- * <th>
- * <b>Java Constant</b>
- * </th>
- * <th>
- * <b>Java Data Type</b>
- * </th>
- * <th>
- * <b>Java Type Name</b>
- * </th>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code BYTE}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_BYTE}
- * </td>
- * <td>
- * {@code byte}
- * </td>
- * <td>
- * {@code "Byte"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code ASCII}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_ASCII}
- * </td>
- * <td>
- * {@code String}
- * </td>
- * <td>
- * {@code "Ascii"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code SHORT}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_SHORT}
- * </td>
- * <td>
- * {@code char}
- * </td>
- * <td>
- * {@code "Short"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code LONG}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_LONG}
- * </td>
- * <td>
- * {@code long}
- * </td>
- * <td>
- * {@code "Long"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code RATIONAL}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_RATIONAL}
- * </td>
- * <td>
- * {@code long[2]} {numerator, denominator}
- * </td>
- * <td>
- * {@code "Rational"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code SBYTE}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_SBYTE}
- * </td>
- * <td>
- * {@code byte}
- * </td>
- * <td>
- * {@code "SByte"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code UNDEFINED}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_UNDEFINED}
- * </td>
- * <td>
- * {@code byte}
- * </td>
- * <td>
- * {@code "Undefined"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code SSHORT}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_SSHORT}
- * </td>
- * <td>
- * {@code short}
- * </td>
- * <td>
- * {@code "SShort"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code SLONG}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_SLONG}
- * </td>
- * <td>
- * {@code int}
- * </td>
- * <td>
- * {@code "SLong"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code SRATIONAL}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_SRATIONAL}
- * </td>
- * <td>
- * {@code int[2]} {numerator, denominator}
- * </td>
- * <td>
- * {@code "SRational"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code FLOAT}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_FLOAT}
- * </td>
- * <td>
- * {@code float}
- * </td>
- * <td>
- * {@code "Float"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code DOUBLE}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_DOUBLE}
- * </td>
- * <td>
- * {@code double}
- * </td>
- * <td>
- * {@code "Double"}
- * </td>
- * </tr>
- *
- * <tr>
- * <td>
- * {@code IFD}
- * </td>
- * <td>
- * {@link TIFFTag#TIFF_IFD_POINTER}
- * </td>
- * <td>
- * {@code long}
- * </td>
- * <td>
- * {@code "IFDPointer"}
- * </td>
- * </tr>
- *
+ * <thead>
+ *   <tr>
+ *     <th scope="col">TIFF Data Type
+ *     <th scope="col">Java Constant
+ *     <th scope="col">Java Data Type
+ *     <th scope="col">Java Type Name
+ * </thead>
+ * <tbody>
+ *   <tr>
+ *     <th scope="row">{@code BYTE}
+ *     <td>{@link TIFFTag#TIFF_BYTE}
+ *     <td>{@code byte}
+ *     <td>{@code "Byte"}
+ *   <tr>
+ *     <th scope="row">{@code ASCII}
+ *     <td>{@link TIFFTag#TIFF_ASCII}
+ *     <td>{@code String}
+ *     <td>{@code "Ascii"}
+ *   <tr>
+ *     <th scope="row">{@code SHORT}
+ *     <td>{@link TIFFTag#TIFF_SHORT}
+ *     <td>{@code char}
+ *     <td>{@code "Short"}
+ *   <tr>
+ *     <th scope="row">{@code LONG}
+ *     <td>{@link TIFFTag#TIFF_LONG}
+ *     <td>{@code long}
+ *     <td>{@code "Long"}
+ *   <tr>
+ *     <th scope="row">{@code RATIONAL}
+ *     <td>{@link TIFFTag#TIFF_RATIONAL}
+ *     <td>{@code long[2]} {numerator, denominator}
+ *     <td>{@code "Rational"}
+ *   <tr>
+ *     <th scope="row">{@code SBYTE}
+ *     <td>{@link TIFFTag#TIFF_SBYTE}
+ *     <td>{@code byte}
+ *     <td>{@code "SByte"}
+ *   <tr>
+ *     <th scope="row">{@code UNDEFINED}
+ *     <td>{@link TIFFTag#TIFF_UNDEFINED}
+ *     <td>{@code byte}
+ *     <td>{@code "Undefined"}
+ *   <tr>
+ *     <th scope="row">{@code SSHORT}
+ *     <td>{@link TIFFTag#TIFF_SSHORT}
+ *     <td>{@code short}
+ *     <td>{@code "SShort"}
+ *   <tr>
+ *     <th scope="row">{@code SLONG}
+ *     <td>{@link TIFFTag#TIFF_SLONG}
+ *     <td>{@code int}
+ *     <td>{@code "SLong"}
+ *   <tr>
+ *     <th scope="row">{@code SRATIONAL}
+ *     <td>{@link TIFFTag#TIFF_SRATIONAL}
+ *     <td>{@code int[2]} {numerator, denominator}
+ *     <td>{@code "SRational"}
+ *   <tr>
+ *     <th scope="row">{@code FLOAT}
+ *     <td>{@link TIFFTag#TIFF_FLOAT}
+ *     <td>{@code float}
+ *     <td>{@code "Float"}
+ *   <tr>
+ *     <th scope="row">{@code DOUBLE}
+ *     <td>{@link TIFFTag#TIFF_DOUBLE}
+ *     <td>{@code double}
+ *     <td>{@code "Double"}
+ *   <tr>
+ *     <th scope="row">{@code IFD}
+ *     <td>{@link TIFFTag#TIFF_IFD_POINTER}
+ *     <td>{@code long}
+ *     <td>{@code "IFDPointer"}
+ *   </tr>
+ * </tbody>
  * </table>
  *
  * @since 9
--- a/src/java.desktop/share/classes/javax/print/DocFlavor.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/print/DocFlavor.java	Fri Oct 20 15:39:50 2017 -0700
@@ -175,21 +175,21 @@
  *   <caption>MIME-Types and their descriptions</caption>
  *   <thead>
  *     <tr>
- *       <th>MIME-Type
- *       <th>Description
+ *       <th scope="col">MIME-Type
+ *       <th scope="col">Description
  *   </thead>
  *   <tbody>
  *     <tr>
- *       <td>{@code "text/plain"}
+ *       <th scope="row">{@code "text/plain"}
  *       <td>Plain text in the default character set (US-ASCII)
  *     <tr>
- *       <td><code> "text/plain; charset=<i>xxx</i>"</code>
+ *       <th scope="row"><code> "text/plain; charset=<i>xxx</i>"</code>
  *       <td>Plain text in character set <i>xxx</i>
  *     <tr>
- *       <td>{@code "text/html"}
+ *       <th scope="row">{@code "text/html"}
  *       <td>HyperText Markup Language in the default character set (US-ASCII)
  *     <tr>
- *       <td><code> "text/html; charset=<i>xxx</i>"</code>
+ *       <th scope="row"><code> "text/html; charset=<i>xxx</i>"</code>
  *       <td>HyperText Markup Language in character set <i>xxx</i>
  *   </tbody>
  *   </table>
@@ -201,18 +201,18 @@
  *   <caption>MIME-Types and their descriptions</caption>
  *   <thead>
  *     <tr>
- *       <th>MIME-Type
- *       <th>Description
+ *       <th scope="col">MIME-Type
+ *       <th scope="col">Description
  *   </thead>
  *   <tbody>
  *     <tr>
- *       <td>{@code "application/pdf"}
+ *       <th scope="row">{@code "application/pdf"}
  *       <td>Portable Document Format document
  *     <tr>
- *       <td>{@code "application/postscript"}
+ *       <th scope="row">{@code "application/postscript"}
  *       <td>PostScript document
  *     <tr>
- *       <td>{@code "application/vnd.hp-PCL"}
+ *       <th scope="row">{@code "application/vnd.hp-PCL"}
  *       <td>Printer Control Language document
  *   </tbody>
  *   </table>
@@ -223,18 +223,18 @@
  *   <caption>MIME-Types and their descriptions</caption>
  *   <thead>
  *     <tr>
- *       <th>MIME-Type
- *       <th>Description
+ *       <th scope="col">MIME-Type
+ *       <th scope="col">Description
  *   </thead>
  *   <tbody>
  *     <tr>
- *       <td>{@code "image/gif"}
+ *       <th scope="row">{@code "image/gif"}
  *       <td>Graphics Interchange Format image
  *     <tr>
- *       <td>{@code "image/jpeg"}
+ *       <th scope="row">{@code "image/jpeg"}
  *       <td>Joint Photographic Experts Group image
  *     <tr>
- *       <td>{@code "image/png"}
+ *       <th scope="row">{@code "image/png"}
  *       <td>Portable Network Graphics image
  *   </tbody>
  *   </table>
@@ -245,12 +245,12 @@
  *   <caption>MIME-Types and their descriptions</caption>
  *   <thead>
  *     <tr>
- *       <th>MIME-Type
- *       <th>Description
+ *       <th scope="col">MIME-Type
+ *       <th scope="col">Description
  *   </thead>
  *   <tbody>
  *     <tr>
- *       <td>{@code "application/octet-stream"}
+ *       <th scope="row">{@code "application/octet-stream"}
  *       <td>The print data format is unspecified (just an octet stream)
  *   </tbody>
  *   </table>
--- a/src/java.desktop/share/classes/javax/print/attribute/standard/Chromaticity.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/print/attribute/standard/Chromaticity.java	Fri Oct 20 15:39:50 2017 -0700
@@ -42,22 +42,23 @@
  * The table below shows the effects of specifying a Chromaticity attribute of
  * {@link #MONOCHROME MONOCHROME} or {@link #COLOR COLOR} for a monochrome or
  * color document.
+ *
  * <table class="striped">
  * <caption>Shows effects of specifying {@code MONOCHROME} or {@code COLOR}
  * Chromaticity attributes</caption>
  * <thead>
  *   <tr>
- *     <th>Chromaticity<br>Attribute
- *     <th>Effect on<br>Monochrome Document
- *     <th>Effect on<br>Color Document
+ *     <th scope="col">Chromaticity<br>Attribute
+ *     <th scope="col">Effect on<br>Monochrome Document
+ *     <th scope="col">Effect on<br>Color Document
  * </thead>
  * <tbody>
  *   <tr>
- *     <td>{@link #MONOCHROME MONOCHROME}
+ *     <th scope="row">{@link #MONOCHROME MONOCHROME}
  *     <td>Printed as is, in monochrome
  *     <td>Printed in monochrome, with colors converted to shades of gray
  *   <tr>
- *     <td>{@link #COLOR COLOR}
+ *     <th scope="row">{@link #COLOR COLOR}
  *     <td>Printed as is, in monochrome
  *     <td>Printed as is, in color
  * </tbody>
--- a/src/java.desktop/share/classes/javax/print/attribute/standard/JobKOctets.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/print/attribute/standard/JobKOctets.java	Fri Oct 20 15:39:50 2017 -0700
@@ -69,40 +69,41 @@
  * The size of a doc is computed based on the print data representation class as
  * specified by the doc's {@link javax.print.DocFlavor DocFlavor}, as shown in
  * the table below.
+ *
  * <table class="striped">
  * <caption>Table showing computation of doc sizes</caption>
  * <thead>
  *   <tr>
- *     <th>Representation Class
- *     <th>Document Size
+ *     <th scope="col">Representation Class
+ *     <th scope="col">Document Size
  * </thead>
  * <tbody>
  *   <tr>
- *     <td>{@code byte[]}
+ *     <th scope="row">{@code byte[]}
  *     <td>Length of the byte array
  *   <tr>
- *     <td>{@code java.io.InputStream}
+ *     <th scope="row">{@code java.io.InputStream}
  *     <td>Number of bytes read from the stream
  *   <tr>
- *     <td>{@code char[]}
+ *     <th scope="row">{@code char[]}
  *     <td>Length of the character array x 2
  *   <tr>
- *     <td>{@code java.lang.String}
+ *     <th scope="row">{@code java.lang.String}
  *     <td>Length of the string x 2
  *   <tr>
- *     <td>{@code java.io.Reader}
+ *     <th scope="row">{@code java.io.Reader}
  *     <td>Number of characters read from the stream x 2
  *   <tr>
- *     <td>{@code java.net.URL}
+ *     <th scope="row">{@code java.net.URL}
  *     <td>Number of bytes read from the file at the given {@code URL} address
  *   <tr>
- *     <td>{@code java.awt.image.renderable.RenderableImage}
+ *     <th scope="row">{@code java.awt.image.renderable.RenderableImage}
  *     <td>Implementation dependent&#42;
  *   <tr>
- *     <td>{@code java.awt.print.Printable}
+ *     <th scope="row">{@code java.awt.print.Printable}
  *     <td>Implementation dependent&#42;
  *   <tr>
- *     <td>{@code java.awt.print.Pageable}
+ *     <th scope="row">{@code java.awt.print.Pageable}
  *     <td>Implementation dependent&#42;
  * </tbody>
  * </table>
--- a/src/java.desktop/share/classes/javax/print/attribute/standard/package-info.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/print/attribute/standard/package-info.java	Fri Oct 20 15:39:50 2017 -0700
@@ -150,412 +150,437 @@
  * attribute, the column marked "SupportedValuesAttribute" lists the
  * supported-values attribute class, if any, with which a print service
  * indicates the supported values for that attribute category.
- * <table border=1 cellpadding=2 cellspacing=1 summary="Lists all printing
- * attributes as described in above text">
- *   <tr style="background-color:#E5E5E5">
- *     <th valign="bottom">Attribute Class
- *     <th valign="bottom">Doc<br>Attribute
- *     <th valign="bottom">Print<br>Request<br>Attribute
- *     <th valign="bottom">Print<br>Job<br>Attribute
- *     <th valign="bottom">Print<br>Service<br>Attribute
- *     <th valign="bottom">SupportedValuesAttribute
+ *
+ * <table class="striped">
+ * <caption>Lists all printing attributes as described above</caption>
+ * <thead>
  *   <tr>
- *     <td><a href="Compression.html">Compression</a>
+ *     <th scope="col">Attribute Class
+ *     <th scope="col">Doc<br>Attribute
+ *     <th scope="col">Print<br>Request<br>Attribute
+ *     <th scope="col">Print<br>Job<br>Attribute
+ *     <th scope="col">Print<br>Service<br>Attribute
+ *     <th scope="col">SupportedValuesAttribute
+ * </thead>
+ * <tbody>
+ *   <tr>
+ *     <th scope="row"><a href="Compression.html">Compression</a>
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="DocumentName.html">DocumentName</a>
+ *     <th scope="row"><a href="DocumentName.html">DocumentName</a>
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="Chromaticity.html">Chromaticity</a>
+ *     <th scope="row"><a href="Chromaticity.html">Chromaticity</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="Copies.html">Copies</a>
+ *     <th scope="row"><a href="Copies.html">Copies</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td><a href="CopiesSupported.html">CopiesSupported</a>
  *   <tr>
- *     <td><a href="Finishings.html">Finishings</a>
+ *     <th scope="row"><a href="Finishings.html">Finishings</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobHoldUntil.html">JobHoldUntil</a>
+ *     <th scope="row"><a href="JobHoldUntil.html">JobHoldUntil</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobImpressions.html">JobImpressions</a>
+ *     <th scope="row"><a href="JobImpressions.html">JobImpressions</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td><a href="JobImpressionsSupported.html">JobImpressionsSupported</a>
  *   <tr>
- *     <td><a href="JobKOctets.html">JobKOctets</a>
+ *     <th scope="row"><a href="JobKOctets.html">JobKOctets</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td><a href="JobKOctetsSupported.html">JobKOctetsSupported</a>
  *   <tr>
- *     <td><a href="JobMediaSheets.html">JobMediaSheets</a>
+ *     <th scope="row"><a href="JobMediaSheets.html">JobMediaSheets</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td><a href="JobMediaSheetsSupported.html">JobMediaSheetsSupported</a>
  *   <tr>
- *     <td><a href="JobName.html">JobName</a>
+ *     <th scope="row"><a href="JobName.html">JobName</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobPriority.html">JobPriority</a>
+ *     <th scope="row"><a href="JobPriority.html">JobPriority</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td><a href="JobPrioritySupported.html">JobPrioritySupported</a>
  *   <tr>
- *     <td><a href="JobSheets.html">JobSheets</a>
+ *     <th scope="row"><a href="JobSheets.html">JobSheets</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="Media.html">Media</a>
+ *     <th scope="row"><a href="Media.html">Media</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="MediaSize.html">MediaSize</a>
+ *     <th scope="row"><a href="MediaSize.html">MediaSize</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="MultipleDocumentHandling.html">MultipleDocumentHandling</a>
+ *     <th scope="row"><a href="MultipleDocumentHandling.html">
+ *     MultipleDocumentHandling</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="NumberUp.html">NumberUp</a>
+ *     <th scope="row"><a href="NumberUp.html">NumberUp</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td><a href="NumberUpSupported.html">NumberUpSupported</a>
  *   <tr>
- *     <td><a href="OrientationRequested.html">OrientationRequested</a>
+ *     <th scope="row"><a href="OrientationRequested.html">
+ *     OrientationRequested</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PageRanges.html">PageRanges</a>
+ *     <th scope="row"><a href="PageRanges.html">PageRanges</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PresentationDirection.html">PresentationDirection</a>
+ *     <th scope="row"><a href="PresentationDirection.html">
+ *     PresentationDirection</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterResolution.html">PrinterResolution</a>
+ *     <th scope="row"><a href="PrinterResolution.html">PrinterResolution</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrintQuality.html">PrintQuality</a>
+ *     <th scope="row"><a href="PrintQuality.html">PrintQuality</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="RequestingUserName.html">RequestingUserName</a>
+ *     <th scope="row"><a href="RequestingUserName.html">RequestingUserName</a>
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="SheetCollate.html">SheetCollate</a>
+ *     <th scope="row"><a href="SheetCollate.html">SheetCollate</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="Sides.html">Sides</a>
+ *     <th scope="row"><a href="Sides.html">Sides</a>
  *     <td align="center">X
  *     <td align="center">X
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="DateTimeAtCompleted.html">DateTimeAtCompleted</a>
+ *     <th scope="row"><a href="DateTimeAtCompleted.html">
+ *     DateTimeAtCompleted</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="DateTimeAtCreation.html">DateTimeAtCreation</a>
+ *     <th scope="row"><a href="DateTimeAtCreation.html">DateTimeAtCreation</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="DateTimeAtProcessing.html">DateTimeAtProcessing</a>
+ *     <th scope="row"><a href="DateTimeAtProcessing.html">
+ *     DateTimeAtProcessing</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobImpressionsCompleted.html">JobImpressionsCompleted</a>
+ *     <th scope="row"><a href="JobImpressionsCompleted.html">
+ *     JobImpressionsCompleted</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobKOctetsProcessed.html">JobKOctetsProcessed</a>
+ *     <th scope="row"><a href="JobKOctetsProcessed.html">
+ *     JobKOctetsProcessed</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobMediaSheetsCompleted.html">JobMediaSheetsCompleted</a>
+ *     <th scope="row"><a href="JobMediaSheetsCompleted.html">
+ *     JobMediaSheetsCompleted</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobMessageFromOperator.html">JobMessageFromOperator</a>
+ *     <th scope="row"><a href="JobMessageFromOperator.html">
+ *     JobMessageFromOperator</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobOriginatingUserName.html">JobOriginatingUserName</a>
+ *     <th scope="row"><a href="JobOriginatingUserName.html">
+ *     JobOriginatingUserName</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobState.html">JobState</a>
+ *     <th scope="row"><a href="JobState.html">JobState</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="JobStateReasons.html">JobStateReasons</a><br>
- *             Contains zero or more --
+ *     <th scope="row"><a href="JobStateReasons.html">JobStateReasons</a>
+ *     <br>
+ *     Contains zero or more --
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td>-- <a href="JobStateReason.html">JobStateReason</a>
+ *     <th scope="row">-- <a href="JobStateReason.html">JobStateReason</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="NumberOfDocuments.html">NumberOfDocuments</a>
+ *     <th scope="row"><a href="NumberOfDocuments.html">NumberOfDocuments</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="NumberOfInterveningJobs.html">NumberOfInterveningJobs</a>
+ *     <th scope="row"><a href="NumberOfInterveningJobs.html">
+ *     NumberOfInterveningJobs</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="OutputDeviceAssigned.html">OutputDeviceAssigned</a>
+ *     <th scope="row"><a href="OutputDeviceAssigned.html">
+ *     OutputDeviceAssigned</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="ColorSupported.html">ColorSupported</a>
+ *     <th scope="row"><a href="ColorSupported.html">ColorSupported</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PagesPerMinute.html">PagesPerMinute</a>
+ *     <th scope="row"><a href="PagesPerMinute.html">PagesPerMinute</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PagesPerMinuteColor.html">PagesPerMinuteColor</a>
+ *     <th scope="row"><a href="PagesPerMinuteColor.html">
+ *     PagesPerMinuteColor</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PDLOverrideSupported.html">PDLOverrideSupported</a>
+ *     <th scope="row"><a href="PDLOverrideSupported.html">
+ *     PDLOverrideSupported</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterIsAcceptingJobs.html">PrinterIsAcceptingJobs</a>
+ *     <th scope="row"><a href="PrinterIsAcceptingJobs.html">
+ *     PrinterIsAcceptingJobs</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterInfo.html">PrinterInfo</a>
+ *     <th scope="row"><a href="PrinterInfo.html">PrinterInfo</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterLocation.html">PrinterLocation</a>
+ *     <th scope="row"><a href="PrinterLocation.html">PrinterLocation</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterMessageFromOperator.html">
- *             PrinterMessageFromOperator</a>
+ *     <th scope="row"><a href="PrinterMessageFromOperator.html">
+ *     PrinterMessageFromOperator</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterMakeAndModel.html">PrinterMakeAndModel</a>
+ *     <th scope="row"><a href="PrinterMakeAndModel.html">
+ *     PrinterMakeAndModel</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterMoreInfo.html">PrinterMoreInfo</a>
+ *     <th scope="row"><a href="PrinterMoreInfo.html">PrinterMoreInfo</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterMoreInfoManufacturer.html">
- *             PrinterMoreInfoManufacturer</a>
+ *     <th scope="row"><a href="PrinterMoreInfoManufacturer.html">
+ *     PrinterMoreInfoManufacturer</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterName.html">PrinterName</a>
+ *     <th scope="row"><a href="PrinterName.html">PrinterName</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterState.html">PrinterState</a>
+ *     <th scope="row"><a href="PrinterState.html">PrinterState</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="PrinterStateReasons.html">PrinterStateReasons</a><br>
- *             Contains zero or more --
+ *     <th scope="row"><a href="PrinterStateReasons.html">
+ *     PrinterStateReasons</a>
+ *     <br>
+ *     Contains zero or more --
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td>-- <a href="PrinterStateReason.html">PrinterStateReason</a>
+ *     <th scope="row">-- <a href="PrinterStateReason.html">
+ *     PrinterStateReason</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td>-- <a href="Severity.html">Severity</a>
+ *     <th scope="row">-- <a href="Severity.html">Severity</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="QueuedJobCount.html">QueuedJobCount</a>
+ *     <th scope="row"><a href="QueuedJobCount.html">QueuedJobCount</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td align="center">X
  *     <td>&nbsp;
  *   <tr>
- *     <td><a href="ReferenceUriSchemesSupported.html">
- *             ReferenceUriSchemesSupported</a>
+ *     <th scope="row"><a href="ReferenceUriSchemesSupported.html">
+ *     ReferenceUriSchemesSupported</a>
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
  *     <td>&nbsp;
+ * </tbody>
  * </table>
  * <p>
  * Please note: In the {@code javax.print} APIs, a {@code null} reference
--- a/src/java.desktop/share/classes/javax/sound/midi/MidiFileFormat.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/sound/midi/MidiFileFormat.java	Fri Oct 20 15:39:50 2017 -0700
@@ -43,32 +43,36 @@
  * The following table lists some common properties that should be used in
  * implementations:
  *
- * <table border=1>
+ * <table class="striped">
  * <caption>MIDI File Format Properties</caption>
+ * <thead>
  *   <tr>
- *     <th>Property key
- *     <th>Value type
- *     <th>Description
+ *     <th scope="col">Property key
+ *     <th scope="col">Value type
+ *     <th scope="col">Description
+ * </thead>
+ * <tbody>
  *   <tr>
- *     <td>&quot;author&quot;
+ *     <th scope="row">"author"
  *     <td>{@link String String}
  *     <td>name of the author of this file
  *   <tr>
- *     <td>&quot;title&quot;
+ *     <th scope="row">"title"
  *     <td>{@link String String}
  *     <td>title of this file
  *   <tr>
- *     <td>&quot;copyright&quot;
+ *     <th scope="row">"copyright"
  *     <td>{@link String String}
  *     <td>copyright message
  *   <tr>
- *     <td>&quot;date&quot;
+ *     <th scope="row">"date"
  *     <td>{@link java.util.Date Date}
  *     <td>date of the recording or release
  *   <tr>
- *     <td>&quot;comment&quot;
+ *     <th scope="row">"comment"
  *     <td>{@link String String}
  *     <td>an arbitrary text
+ * </tbody>
  * </table>
  *
  * @author Kara Kytle
--- a/src/java.desktop/share/classes/javax/sound/midi/MidiSystem.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/sound/midi/MidiSystem.java	Fri Oct 20 15:39:50 2017 -0700
@@ -78,32 +78,32 @@
  * <caption>MIDI System Property Keys</caption>
  * <thead>
  *   <tr>
- *     <th>Property Key
- *     <th>Interface
- *     <th>Affected Method
+ *     <th scope="col">Property Key
+ *     <th scope="col">Interface
+ *     <th scope="col">Affected Method
  * </thead>
  * <tbody>
  *   <tr>
- *     <td>{@code javax.sound.midi.Receiver}
+ *     <th scope="row">{@code javax.sound.midi.Receiver}
  *     <td>{@link Receiver}
  *     <td>{@link #getReceiver}
  *   <tr>
- *     <td>{@code javax.sound.midi.Sequencer}
+ *     <th scope="row">{@code javax.sound.midi.Sequencer}
  *     <td>{@link Sequencer}
  *     <td>{@link #getSequencer}
  *   <tr>
- *     <td>{@code javax.sound.midi.Synthesizer}
+ *     <th scope="row">{@code javax.sound.midi.Synthesizer}
  *     <td>{@link Synthesizer}
  *     <td>{@link #getSynthesizer}
  *   <tr>
- *     <td>{@code javax.sound.midi.Transmitter}
+ *     <th scope="row">{@code javax.sound.midi.Transmitter}
  *     <td>{@link Transmitter}
  *     <td>{@link #getTransmitter}
  * </tbody>
  * </table>
  *
  * The property value consists of the provider class name and the device name,
- * separated by the hash mark (&quot;#&quot;). The provider class name is the
+ * separated by the hash mark ("#"). The provider class name is the
  * fully-qualified name of a concrete
  * {@link MidiDeviceProvider MIDI device provider} class. The device name is
  * matched against the {@code String} returned by the {@code getName} method of
--- a/src/java.desktop/share/classes/javax/sound/sampled/AudioFileFormat.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/sound/sampled/AudioFileFormat.java	Fri Oct 20 15:39:50 2017 -0700
@@ -50,36 +50,40 @@
  * The following table lists some common properties that should be used in
  * implementations:
  *
- * <table border=1>
+ * <table class="striped">
  * <caption>Audio File Format Properties</caption>
+ * <thead>
  *   <tr>
- *     <th>Property key
- *     <th>Value type
- *     <th>Description
+ *     <th scope="col">Property key
+ *     <th scope="col">Value type
+ *     <th scope="col">Description
+ * </thead>
+ * <tbody>
  *   <tr>
- *     <td>&quot;duration&quot;
+ *     <th scope="row">"duration"
  *     <td>{@link Long Long}
  *     <td>playback duration of the file in microseconds
  *   <tr>
- *     <td>&quot;author&quot;
+ *     <th scope="row">"author"
  *     <td>{@link String String}
  *     <td>name of the author of this file
  *   <tr>
- *     <td>&quot;title&quot;
+ *     <th scope="row">"title"
  *     <td>{@link String String}
  *     <td>title of this file
  *   <tr>
- *     <td>&quot;copyright&quot;
+ *     <th scope="row">"copyright"
  *     <td>{@link String String}
  *     <td>copyright message
  *   <tr>
- *     <td>&quot;date&quot;
+ *     <th scope="row">"date"
  *     <td>{@link java.util.Date Date}
  *     <td>date of the recording or release
  *   <tr>
- *     <td>&quot;comment&quot;
+ *     <th scope="row">"comment"
  *     <td>{@link String String}
  *     <td>an arbitrary text
+ * </tbody>
  * </table>
  *
  * @author David Rivas
--- a/src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/sound/sampled/AudioFormat.java	Fri Oct 20 15:39:50 2017 -0700
@@ -94,21 +94,21 @@
  * <caption>Audio Format Properties</caption>
  * <thead>
  *   <tr>
- *     <th>Property key
- *     <th>Value type
- *     <th>Description
+ *     <th scope="col">Property key
+ *     <th scope="col">Value type
+ *     <th scope="col">Description
  * </thead>
  * <tbody>
  *   <tr>
- *     <td>&quot;bitrate&quot;
+ *     <th scope="row">"bitrate"
  *     <td>{@link java.lang.Integer Integer}
  *     <td>average bit rate in bits per second
  *   <tr>
- *     <td>&quot;vbr&quot;
+ *     <th scope="row">"vbr"
  *     <td>{@link java.lang.Boolean Boolean}
  *     <td>{@code true}, if the file is encoded in variable bit rate (VBR)
  *   <tr>
- *     <td>&quot;quality&quot;
+ *     <th scope="row">"quality"
  *     <td>{@link java.lang.Integer Integer}
  *     <td>encoding/conversion quality, 1..100
  * </tbody>
--- a/src/java.desktop/share/classes/javax/sound/sampled/AudioPermission.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/sound/sampled/AudioPermission.java	Fri Oct 20 15:39:50 2017 -0700
@@ -46,13 +46,13 @@
  * risks</caption>
  * <thead>
  *   <tr>
- *     <th>Permission Target Name
- *     <th>What the Permission Allows
- *     <th>Risks of Allowing this Permission
+ *     <th scope="col">Permission Target Name
+ *     <th scope="col">What the Permission Allows
+ *     <th scope="col">Risks of Allowing this Permission
  * </thead>
  * <tbody>
  *   <tr>
- *     <td>play
+ *     <th scope="row">play
  *     <td>Audio playback through the audio device or devices on the system.
  *     Allows the application to obtain and manipulate lines and mixers for
  *     audio playback (rendering).
@@ -61,7 +61,7 @@
  *     audio being played on the system, or because manipulation of a mixer
  *     affects the audio for all lines using that mixer.
  *   <tr>
- *     <td>record
+ *     <th scope="row">record
  *     <td>Audio recording through the audio device or devices on the system.
  *     Allows the application to obtain and manipulate lines and mixers for
  *     audio recording (capture).
--- a/src/java.desktop/share/classes/javax/sound/sampled/AudioSystem.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/sound/sampled/AudioSystem.java	Fri Oct 20 15:39:50 2017 -0700
@@ -75,32 +75,32 @@
  * <caption>Audio System Property Keys</caption>
  * <thead>
  *   <tr>
- *     <th>Property Key
- *     <th>Interface
- *     <th>Affected Method(s)
+ *     <th scope="col">Property Key
+ *     <th scope="col">Interface
+ *     <th scope="col">Affected Method(s)
  * </thead>
  * <tbody>
  *   <tr>
- *     <td>{@code javax.sound.sampled.Clip}
+ *     <th scope="row">{@code javax.sound.sampled.Clip}
  *     <td>{@link Clip}
  *     <td>{@link #getLine}, {@link #getClip}
  *   <tr>
- *     <td>{@code javax.sound.sampled.Port}
+ *     <th scope="row">{@code javax.sound.sampled.Port}
  *     <td>{@link Port}
  *     <td>{@link #getLine}
  *   <tr>
- *     <td>{@code javax.sound.sampled.SourceDataLine}
+ *     <th scope="row">{@code javax.sound.sampled.SourceDataLine}
  *     <td>{@link SourceDataLine}
  *     <td>{@link #getLine}, {@link #getSourceDataLine}
  *   <tr>
- *     <td>{@code javax.sound.sampled.TargetDataLine}
+ *     <th scope="row">{@code javax.sound.sampled.TargetDataLine}
  *     <td>{@link TargetDataLine}
  *     <td>{@link #getLine}, {@link #getTargetDataLine}
  * </tbody>
  * </table>
  *
  * The property value consists of the provider class name and the mixer name,
- * separated by the hash mark (&quot;#&quot;). The provider class name is the
+ * separated by the hash mark ("#"). The provider class name is the
  * fully-qualified name of a concrete {@link MixerProvider mixer provider}
  * class. The mixer name is matched against the {@code String} returned by the
  * {@code getName} method of {@code Mixer.Info}. Either the class name, or the
--- a/src/java.desktop/share/classes/javax/sound/sampled/ReverbType.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/sound/sampled/ReverbType.java	Fri Oct 20 15:39:50 2017 -0700
@@ -75,44 +75,44 @@
  * early intensity, and early delay</caption>
  * <thead>
  *   <tr>
- *     <th>Type
- *     <th>Decay Time (ms)
- *     <th>Late Intensity (dB)
- *     <th>Late Delay (ms)
- *     <th>Early Intensity (dB)
- *     <th>Early Delay(ms)
+ *     <th scope="col">Type
+ *     <th scope="col">Decay Time (ms)
+ *     <th scope="col">Late Intensity (dB)
+ *     <th scope="col">Late Delay (ms)
+ *     <th scope="col">Early Intensity (dB)
+ *     <th scope="col">Early Delay(ms)
  * </thead>
  * <tbody>
  *   <tr>
- *     <td>Cavern
+ *     <th scope="row">Cavern
  *     <td>2250
  *     <td>-2.0
  *     <td>41.3
  *     <td>-1.4
  *     <td>10.3
  *   <tr>
- *     <td>Dungeon
+ *     <th scope="row">Dungeon
  *     <td>1600
  *     <td>-1.0
  *     <td>10.3
  *     <td>-0.7
  *     <td>2.6
  *   <tr>
- *     <td>Garage
+ *     <th scope="row">Garage
  *     <td>900
  *     <td>-6.0
  *     <td>14.7
  *     <td>-4.0
  *     <td>3.9
  *   <tr>
- *     <td>Acoustic Lab
+ *     <th scope="row">Acoustic Lab
  *     <td>280
  *     <td>-3.0
  *     <td>8.0
  *     <td>-2.0
  *     <td>2.0
  *   <tr>
- *     <td>Closet
+ *     <th scope="row">Closet
  *     <td>150
  *     <td>-10.0
  *     <td>2.5
--- a/src/java.desktop/share/classes/javax/swing/Action.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/Action.java	Fri Oct 20 15:39:50 2017 -0700
@@ -98,102 +98,88 @@
  * <caption>Supported Action properties</caption>
  * <thead>
  *  <tr>
- *    <th>Component Property
- *    <th>Components
- *    <th>Action Key
- *    <th>Notes
+ *    <th scope="col">Component Property
+ *    <th scope="col">Components
+ *    <th scope="col">Action Key
+ *    <th scope="col">Notes
  * </thead>
  * <tbody>
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>enabled</code></b>
- *      <td>All
- *      <td>The <code>isEnabled</code> method
- *      <td>&nbsp;
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>toolTipText</code></b>
- *      <td>All
- *      <td><code>SHORT_DESCRIPTION</code>
- *      <td>&nbsp;
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>actionCommand</code></b>
- *      <td>All
- *      <td><code>ACTION_COMMAND_KEY</code>
- *      <td>&nbsp;
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>mnemonic</code></b>
- *      <td>All buttons
- *      <td><code>MNEMONIC_KEY</code>
- *      <td>A <code>null</code> value or <code>Action</code> results in the
- *          button's <code>mnemonic</code> property being set to
- *          <code>'\0'</code>.
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>text</code></b>
- *      <td>All buttons
- *      <td><code>NAME</code>
- *      <td>If you do not want the text of the button to mirror that
- *          of the <code>Action</code>, set the property
- *          <code>hideActionText</code> to <code>true</code>.  If
- *          <code>hideActionText</code> is <code>true</code>, setting the
- *          <code>Action</code> changes the text of the button to
- *          <code>null</code> and any changes to <code>NAME</code>
- *          are ignored.  <code>hideActionText</code> is useful for
- *          tool bar buttons that typically only show an <code>Icon</code>.
- *          <code>JToolBar.add(Action)</code> sets the property to
- *          <code>true</code> if the <code>Action</code> has a
- *          non-<code>null</code> value for <code>LARGE_ICON_KEY</code> or
- *          <code>SMALL_ICON</code>.
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>displayedMnemonicIndex</code></b>
- *      <td>All buttons
- *      <td><code>DISPLAYED_MNEMONIC_INDEX_KEY</code>
- *      <td>If the value of <code>DISPLAYED_MNEMONIC_INDEX_KEY</code> is
- *          beyond the bounds of the text, it is ignored.  When
- *          <code>setAction</code> is called, if the value from the
- *          <code>Action</code> is <code>null</code>, the displayed
- *          mnemonic index is not updated.  In any subsequent changes to
- *          <code>DISPLAYED_MNEMONIC_INDEX_KEY</code>, <code>null</code>
- *          is treated as -1.
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>icon</code></b>
- *      <td>All buttons except of <code>JCheckBox</code>,
- *      <code>JToggleButton</code> and <code>JRadioButton</code>.
- *      <td>either <code>LARGE_ICON_KEY</code> or
- *          <code>SMALL_ICON</code>
- *     <td>The <code>JMenuItem</code> subclasses only use
- *         <code>SMALL_ICON</code>.  All other buttons will use
- *         <code>LARGE_ICON_KEY</code>; if the value is <code>null</code> they
- *         use <code>SMALL_ICON</code>.
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>accelerator</code></b>
- *      <td>All <code>JMenuItem</code> subclasses, with the exception of
- *          <code>JMenu</code>.
- *      <td><code>ACCELERATOR_KEY</code>
- *      <td>&nbsp;
- *  <tr valign="top" style="text-align:left">
- *      <td><b><code>selected</code></b>
- *      <td><code>JToggleButton</code>, <code>JCheckBox</code>,
- *          <code>JRadioButton</code>, <code>JCheckBoxMenuItem</code> and
- *          <code>JRadioButtonMenuItem</code>
- *      <td><code>SELECTED_KEY</code>
- *      <td>Components that honor this property only use
- *          the value if it is {@code non-null}. For example, if
- *          you set an {@code Action} that has a {@code null}
- *          value for {@code SELECTED_KEY} on a {@code JToggleButton}, the
- *          {@code JToggleButton} will not update it's selected state in
- *          any way. Similarly, any time the {@code JToggleButton}'s
- *          selected state changes it will only set the value back on
- *          the {@code Action} if the {@code Action} has a {@code non-null}
- *          value for {@code SELECTED_KEY}.
- *          <br>
- *          Components that honor this property keep their selected state
- *          in sync with this property. When the same {@code Action} is used
- *          with multiple components, all the components keep their selected
- *          state in sync with this property. Mutually exclusive
- *          buttons, such as {@code JToggleButton}s in a {@code ButtonGroup},
- *          force only one of the buttons to be selected. As such, do not
- *          use the same {@code Action} that defines a value for the
- *          {@code SELECTED_KEY} property with multiple mutually
- *          exclusive buttons.
+ *  <tr>
+ *    <th scope="row">{@code enabled}
+ *    <td>All
+ *    <td>The {@code isEnabled} method
+ *    <td>&nbsp;
+ *  <tr>
+ *    <th scope="row">{@code toolTipText}
+ *    <td>All
+ *    <td>{@code SHORT_DESCRIPTION}
+ *    <td>&nbsp;
+ *  <tr>
+ *    <th scope="row">{@code actionCommand}
+ *    <td>All
+ *    <td>{@code ACTION_COMMAND_KEY}
+ *    <td>&nbsp;
+ *  <tr>
+ *    <th scope="row">{@code mnemonic}
+ *    <td>All buttons
+ *    <td>{@code MNEMONIC_KEY}
+ *    <td>A {@code null} value or {@code Action} results in the button's
+ *    {@code mnemonic} property being set to {@code '\0'}.
+ *  <tr>
+ *    <th scope="row">{@code text}
+ *    <td>All buttons
+ *    <td>{@code NAME}
+ *    <td>If you do not want the text of the button to mirror that of the
+ *    {@code Action}, set the property {@code hideActionText} to {@code true}.
+ *    If {@code hideActionText} is {@code true}, setting the {@code Action}
+ *    changes the text of the button to {@code null} and any changes to
+ *    {@code NAME} are ignored. {@code hideActionText} is useful for tool bar
+ *    buttons that typically only show an {@code Icon}.
+ *    {@code JToolBar.add(Action)} sets the property to {@code true} if the
+ *    {@code Action} has a non-{@code null} value for {@code LARGE_ICON_KEY} or
+ *    {@code SMALL_ICON}.
+ *  <tr>
+ *    <th scope="row">{@code displayedMnemonicIndex}
+ *    <td>All buttons
+ *    <td>{@code DISPLAYED_MNEMONIC_INDEX_KEY}
+ *    <td>If the value of {@code DISPLAYED_MNEMONIC_INDEX_KEY} is beyond the
+ *    bounds of the text, it is ignored. When {@code setAction} is called, if
+ *    the value from the {@code Action} is {@code null}, the displayed mnemonic
+ *    index is not updated. In any subsequent changes to
+ *    {@code DISPLAYED_MNEMONIC_INDEX_KEY}, {@code null} is treated as -1.
+ *  <tr>
+ *    <th scope="row">{@code icon}
+ *    <td>All buttons except of {@code JCheckBox}, {@code JToggleButton} and
+ *    {@code JRadioButton}.
+ *    <td>either {@code LARGE_ICON_KEY} or {@code SMALL_ICON}
+ *    <td>The {@code JMenuItem} subclasses only use {@code SMALL_ICON}. All
+ *    other buttons will use {@code LARGE_ICON_KEY}; if the value is
+ *    {@code null} they use {@code SMALL_ICON}.
+ *  <tr>
+ *    <th scope="row">{@code accelerator}
+ *    <td>All {@code JMenuItem} subclasses, with the exception of {@code JMenu}.
+ *    <td>{@code ACCELERATOR_KEY}
+ *    <td>&nbsp;
+ *  <tr>
+ *    <th scope="row">{@code selected}
+ *    <td>{@code JToggleButton}, {@code JCheckBox}, {@code JRadioButton},
+ *    {@code JCheckBoxMenuItem} and {@code JRadioButtonMenuItem}
+ *    <td>{@code SELECTED_KEY}
+ *    <td>Components that honor this property only use the value if it is
+ *    {@code non-null}. For example, if you set an {@code Action} that has a
+ *    {@code null} value for {@code SELECTED_KEY} on a {@code JToggleButton},
+ *    the {@code JToggleButton} will not update it's selected state in any way.
+ *    Similarly, any time the {@code JToggleButton}'s selected state changes it
+ *    will only set the value back on the {@code Action} if the {@code Action}
+ *    has a {@code non-null} value for {@code SELECTED_KEY}.
+ *    <br>
+ *    Components that honor this property keep their selected state in sync with
+ *    this property. When the same {@code Action} is used with multiple
+ *    components, all the components keep their selected state in sync with this
+ *    property. Mutually exclusive buttons, such as {@code JToggleButton}s in a
+ *    {@code ButtonGroup}, force only one of the buttons to be selected. As
+ *    such, do not use the same {@code Action} that defines a value for the
+ *    {@code SELECTED_KEY} property with multiple mutually exclusive buttons.
  * </tbody>
  * </table>
  * <p>
--- a/src/java.desktop/share/classes/javax/swing/JFormattedTextField.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/JFormattedTextField.java	Fri Oct 20 15:39:50 2017 -0700
@@ -59,27 +59,32 @@
  * <caption>Possible JFormattedTextField configurations and their descriptions
  * </caption>
  * <thead>
- * <tr><th>Value</th>
- * <th>Description</th></tr>
+ *   <tr>
+ *     <th scope="col">Value
+ *     <th scope="col">Description
  * </thead>
  * <tbody>
- * <tr><td>JFormattedTextField.REVERT
- *            <td>Revert the display to match that of <code>getValue</code>,
- *                possibly losing the current edit.
- *        <tr><td>JFormattedTextField.COMMIT
- *            <td>Commits the current value. If the value being edited
- *                isn't considered a legal value by the
- *                <code>AbstractFormatter</code> that is, a
- *                <code>ParseException</code> is thrown, then the value
- *                will not change, and then edited value will persist.
- *        <tr><td>JFormattedTextField.COMMIT_OR_REVERT
- *            <td>Similar to <code>COMMIT</code>, but if the value isn't
- *                legal, behave like <code>REVERT</code>.
- *        <tr><td>JFormattedTextField.PERSIST
- *            <td>Do nothing, don't obtain a new
- *                <code>AbstractFormatter</code>, and don't update the value.
+ *   <tr>
+ *     <th scope="row">JFormattedTextField.REVERT
+ *     <td>Revert the display to match that of {@code getValue}, possibly losing
+ *     the current edit.
+ *   <tr>
+ *     <th scope="row">JFormattedTextField.COMMIT
+ *     <td>Commits the current value. If the value being edited isn't considered
+ *     a legal value by the {@code AbstractFormatter} that is, a
+ *     {@code ParseException} is thrown, then the value will not change, and
+ *     then edited value will persist.
+ *   <tr>
+ *     <th scope="row">JFormattedTextField.COMMIT_OR_REVERT
+ *     <td>Similar to {@code COMMIT}, but if the value isn't legal, behave like
+ *     {@code REVERT}.
+ *   <tr>
+ *     <th scope="row">JFormattedTextField.PERSIST
+ *     <td>Do nothing, don't obtain a new {@code AbstractFormatter}, and don't
+ *     update the value.
  * </tbody>
  * </table>
+ *
  * The default is <code>JFormattedTextField.COMMIT_OR_REVERT</code>,
  * refer to {@link #setFocusLostBehavior} for more information on this.
  * <p>
--- a/src/java.desktop/share/classes/javax/swing/JList.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/JList.java	Fri Oct 20 15:39:50 2017 -0700
@@ -968,25 +968,30 @@
      * <caption>Describes layouts VERTICAL,HORIZONTAL_WRAP, and VERTICAL_WRAP
      * </caption>
      * <thead>
-     *   <tr><th>Value</th><th>Description</th></tr>
+     *   <tr>
+     *     <th scope="col">Value
+     *     <th scope="col">Description
      * </thead>
      * <tbody>
-     *   <tr><td><code>VERTICAL</code>
-     *       <td>Cells are layed out vertically in a single column.
-     *   <tr><td><code>HORIZONTAL_WRAP</code>
-     *       <td>Cells are layed out horizontally, wrapping to a new row as
-     *           necessary. If the {@code visibleRowCount} property is less than
-     *           or equal to zero, wrapping is determined by the width of the
-     *           list; otherwise wrapping is done in such a way as to ensure
-     *           {@code visibleRowCount} rows in the list.
-     *   <tr><td><code>VERTICAL_WRAP</code>
-     *       <td>Cells are layed out vertically, wrapping to a new column as
-     *           necessary. If the {@code visibleRowCount} property is less than
-     *           or equal to zero, wrapping is determined by the height of the
-     *           list; otherwise wrapping is done at {@code visibleRowCount} rows.
+     *   <tr>
+     *     <th scope="row">{@code VERTICAL}
+     *     <td>Cells are layed out vertically in a single column.
+     *   <tr>
+     *     <th scope="row">{@code HORIZONTAL_WRAP}
+     *     <td>Cells are layed out horizontally, wrapping to a new row as
+     *     necessary. If the {@code visibleRowCount} property is less than or
+     *     equal to zero, wrapping is determined by the width of the list;
+     *     otherwise wrapping is done in such a way as to ensure
+     *     {@code visibleRowCount} rows in the list.
+     *   <tr>
+     *     <th scope="row">{@code VERTICAL_WRAP}
+     *     <td>Cells are layed out vertically, wrapping to a new column as
+     *     necessary. If the {@code visibleRowCount} property is less than or
+     *     equal to zero, wrapping is determined by the height of the list;
+     *     otherwise wrapping is done at {@code visibleRowCount} rows.
      * </tbody>
      * </table>
-     * <p>
+     *
      * The default value of this property is <code>VERTICAL</code>.
      *
      * @param layoutOrientation the new layout orientation, one of:
--- a/src/java.desktop/share/classes/javax/swing/JOptionPane.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/JOptionPane.java	Fri Oct 20 15:39:50 2017 -0700
@@ -71,37 +71,30 @@
  * class may appear complex because of the large number of methods, almost
  * all uses of this class are one-line calls to one of the static
  * <code>showXxxDialog</code> methods shown below:
- * <blockquote>
  *
  * <table class="striped">
  * <caption>Common JOptionPane method names and their descriptions</caption>
  * <thead>
- * <tr>
- *    <th>Method Name</th>
- *    <th>Description</th>
- * </tr>
+ *   <tr>
+ *     <th scope="col">Method Name
+ *     <th scope="col">Description
  * </thead>
  * <tbody>
- * <tr>
- *    <td>showConfirmDialog</td>
- *    <td>Asks a confirming question, like yes/no/cancel.</td>
- * </tr>
- * <tr>
- *    <td>showInputDialog</td>
- *    <td>Prompt for some input.</td>
- * </tr>
- * <tr>
- *   <td>showMessageDialog</td>
- *   <td>Tell the user about something that has happened.</td>
- * </tr>
- * <tr>
- *   <td>showOptionDialog</td>
- *   <td>The Grand Unification of the above three.</td>
- * </tr>
+ *   <tr>
+ *     <th scope="row">showConfirmDialog
+ *     <td>Asks a confirming question, like yes/no/cancel.</td>
+ *   <tr>
+ *     <th scope="row">showInputDialog
+ *     <td>Prompt for some input.
+ *   <tr>
+ *     <th scope="row">showMessageDialog
+ *     <td>Tell the user about something that has happened.
+ *   <tr>
+ *     <th scope="row">showOptionDialog
+ *     <td>The Grand Unification of the above three.
  * </tbody>
  * </table>
  *
- * </blockquote>
  * Each of these methods also comes in a <code>showInternalXXX</code>
  * flavor, which uses an internal frame to hold the dialog box (see
  * {@link JInternalFrame}).
--- a/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicListUI.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/plaf/basic/BasicListUI.java	Fri Oct 20 15:39:50 2017 -0700
@@ -588,52 +588,53 @@
      * <caption>Describes the preferred size for each layout orientation
      * </caption>
      * <thead>
-     * <tr><th>Layout Orientation</th><th>Preferred Size</th></tr>
+     *   <tr>
+     *     <th scope="col">Layout Orientation
+     *     <th scope="col">Preferred Size
      * </thead>
      * <tbody>
-     * <tr>
-     *   <td>JList.VERTICAL
-     *   <td>The preferredSize of the list is total height of the rows
-     *       and the maximum width of the cells.  If JList.fixedCellHeight
-     *       is specified then the total height of the rows is just
-     *       (cellVerticalMargins + fixedCellHeight) * model.getSize() where
-     *       rowVerticalMargins is the space we allocate for drawing
-     *       the yellow focus outline.  Similarly if fixedCellWidth is
-     *       specified then we just use that.
-     *   </td>
-     * <tr>
-     *   <td>JList.VERTICAL_WRAP
-     *   <td>If the visible row count is greater than zero, the preferredHeight
-     *       is the maximum cell height * visibleRowCount. If the visible row
-     *       count is &lt;= 0, the preferred height is either the current height
-     *       of the list, or the maximum cell height, whichever is
-     *       bigger. The preferred width is than the maximum cell width *
-     *       number of columns needed. Where the number of columns needs is
-     *       list.height / max cell height. Max cell height is either the fixed
-     *       cell height, or is determined by iterating through all the cells
-     *       to find the maximum height from the ListCellRenderer.
-     * <tr>
-     *   <td>JList.HORIZONTAL_WRAP
-     *   <td>If the visible row count is greater than zero, the preferredHeight
-     *       is the maximum cell height * adjustedRowCount.  Where
-     *       visibleRowCount is used to determine the number of columns.
-     *       Because this lays out horizontally the number of rows is
-     *       then determined from the column count.  For example, lets say
-     *       you have a model with 10 items and the visible row count is 8.
-     *       The number of columns needed to display this is 2, but you no
-     *       longer need 8 rows to display this, you only need 5, thus
-     *       the adjustedRowCount is 5.
-     *       <p>If the visible row
-     *       count is &lt;= 0, the preferred height is dictated by the
-     *       number of columns, which will be as many as can fit in the width
-     *       of the <code>JList</code> (width / max cell width), with at
-     *       least one column.  The preferred height then becomes the
-     *       model size / number of columns * maximum cell height.
-     *       Max cell height is either the fixed
-     *       cell height, or is determined by iterating through all the cells
-     *       to find the maximum height from the ListCellRenderer.
+     *   <tr>
+     *     <th scope="row">JList.VERTICAL
+     *     <td>The preferredSize of the list is total height of the rows
+     *     and the maximum width of the cells. If JList.fixedCellHeight
+     *     is specified then the total height of the rows is just
+     *     (cellVerticalMargins + fixedCellHeight) * model.getSize() where
+     *     rowVerticalMargins is the space we allocate for drawing
+     *     the yellow focus outline. Similarly if fixedCellWidth is
+     *     specified then we just use that.
+     *   <tr>
+     *     <th scope="row">JList.VERTICAL_WRAP
+     *     <td>If the visible row count is greater than zero, the preferredHeight
+     *     is the maximum cell height * visibleRowCount. If the visible row
+     *     count is &lt;= 0, the preferred height is either the current height
+     *     of the list, or the maximum cell height, whichever is
+     *     bigger. The preferred width is than the maximum cell width *
+     *     number of columns needed. Where the number of columns needs is
+     *     list.height / max cell height. Max cell height is either the fixed
+     *     cell height, or is determined by iterating through all the cells
+     *     to find the maximum height from the ListCellRenderer.
+     *   <tr>
+     *     <th scope="row">JList.HORIZONTAL_WRAP
+     *     <td>If the visible row count is greater than zero, the preferredHeight
+     *     is the maximum cell height * adjustedRowCount. Where
+     *     visibleRowCount is used to determine the number of columns.
+     *     Because this lays out horizontally the number of rows is
+     *     then determined from the column count. For example, lets say
+     *     you have a model with 10 items and the visible row count is 8.
+     *     The number of columns needed to display this is 2, but you no
+     *     longer need 8 rows to display this, you only need 5, thus
+     *     the adjustedRowCount is 5.
+     *     <p>
+     *     If the visible row count is &lt;= 0, the preferred height is dictated
+     *     by the number of columns, which will be as many as can fit in the
+     *     width of the {@code JList} (width / max cell width), with at least
+     *     one column. The preferred height then becomes the model size / number
+     *     of columns * maximum cell height. Max cell height is either the fixed
+     *     cell height, or is determined by iterating through all the cells to
+     *     find the maximum height from the ListCellRenderer.
      * </tbody>
      * </table>
+     *
      * The above specifies the raw preferred width and height. The resulting
      * preferred width is the above width + insets.left + insets.right and
      * the resulting preferred height is the above height + insets.top +
--- a/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java	Fri Oct 20 15:39:50 2017 -0700
@@ -295,87 +295,87 @@
      * <caption>Metal's system color mapping</caption>
      * <thead>
      *  <tr>
-     *    <th>Key
-     *    <th>Value
+     *    <th scope="col">Key
+     *    <th scope="col">Value
      * </thead>
      * <tbody>
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"desktop"
+     *  <tr>
+     *    <th scope="row">"desktop"
      *    <td>{@code theme.getDesktopColor()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"activeCaption"
+     *  <tr>
+     *    <th scope="row">"activeCaption"
      *    <td>{@code theme.getWindowTitleBackground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"activeCaptionText"
+     *  <tr>
+     *    <th scope="row">"activeCaptionText"
      *    <td>{@code theme.getWindowTitleForeground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"activeCaptionBorder"
+     *  <tr>
+     *    <th scope="row">"activeCaptionBorder"
      *    <td>{@code theme.getPrimaryControlShadow()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"inactiveCaption"
+     *  <tr>
+     *    <th scope="row">"inactiveCaption"
      *    <td>{@code theme.getWindowTitleInactiveBackground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"inactiveCaptionText"
+     *  <tr>
+     *    <th scope="row">"inactiveCaptionText"
      *    <td>{@code theme.getWindowTitleInactiveForeground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"inactiveCaptionBorder"
+     *  <tr>
+     *    <th scope="row">"inactiveCaptionBorder"
      *    <td>{@code theme.getControlShadow()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"window"
+     *  <tr>
+     *    <th scope="row">"window"
      *    <td>{@code theme.getWindowBackground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"windowBorder"
+     *  <tr>
+     *    <th scope="row">"windowBorder"
      *    <td>{@code theme.getControl()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"windowText"
+     *  <tr>
+     *    <th scope="row">"windowText"
      *    <td>{@code theme.getUserTextColor()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"menu"
+     *  <tr>
+     *    <th scope="row">"menu"
      *    <td>{@code theme.getMenuBackground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"menuText"
+     *  <tr>
+     *    <th scope="row">"menuText"
      *    <td>{@code theme.getMenuForeground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"text"
+     *  <tr>
+     *    <th scope="row">"text"
      *    <td>{@code theme.getWindowBackground()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"textText"
+     *  <tr>
+     *    <th scope="row">"textText"
      *    <td>{@code theme.getUserTextColor()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"textHighlight"
+     *  <tr>
+     *    <th scope="row">"textHighlight"
      *    <td>{@code theme.getTextHighlightColor()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"textHighlightText"
+     *  <tr>
+     *    <th scope="row">"textHighlightText"
      *    <td>{@code theme.getHighlightedTextColor()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"textInactiveText"
+     *  <tr>
+     *    <th scope="row">"textInactiveText"
      *    <td>{@code theme.getInactiveSystemTextColor()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"control"
+     *  <tr>
+     *    <th scope="row">"control"
      *    <td>{@code theme.getControl()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"controlText"
+     *  <tr>
+     *    <th scope="row">"controlText"
      *    <td>{@code theme.getControlTextColor()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"controlHighlight"
+     *  <tr>
+     *    <th scope="row">"controlHighlight"
      *    <td>{@code theme.getControlHighlight()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"controlLtHighlight"
+     *  <tr>
+     *    <th scope="row">"controlLtHighlight"
      *    <td>{@code theme.getControlHighlight()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"controlShadow"
+     *  <tr>
+     *    <th scope="row">"controlShadow"
      *    <td>{@code theme.getControlShadow()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"controlDkShadow"
+     *  <tr>
+     *    <th scope="row">"controlDkShadow"
      *    <td>{@code theme.getControlDarkShadow()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"scrollbar"
+     *  <tr>
+     *    <th scope="row">"scrollbar"
      *    <td>{@code theme.getControl()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"info"
+     *  <tr>
+     *    <th scope="row">"info"
      *    <td>{@code theme.getPrimaryControl()}
-     *  <tr valign="top" style="text-align:left">
-     *    <td>"infoText"
+     *  <tr>
+     *    <th scope="row">"infoText"
      *    <td>{@code theme.getPrimaryControlInfo()}
      * </tbody>
      * </table>
--- a/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTreeUI.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTreeUI.java	Fri Oct 20 15:39:50 2017 -0700
@@ -47,24 +47,25 @@
  * <table class="striped">
  * <caption>Descriptions of supported hints: Angled, Horizontal, and None
  * </caption>
- *  <tr>
- *    <th>Angled</th>
- *    <td>A line is drawn connecting the child to the parent. For handling
- *          of the root node refer to
- *          {@link javax.swing.JTree#setRootVisible} and
- *          {@link javax.swing.JTree#setShowsRootHandles}.
- *    </td>
- *  </tr>
- *  <tr>
- *     <th>Horizontal</th>
- *     <td>A horizontal line is drawn dividing the children of the root node.</td>
- *  </tr>
- *  <tr>
- *      <th>None</th>
- *      <td>Do not draw any visual indication between nodes.</td>
- *  </tr>
+ * <thead>
+ *   <tr>
+ *     <th scope="col">Hint
+ *     <th scope="col">Description
+ * </thead>
+ * <tbody>
+ *   <tr>
+ *     <th scope="row">Angled
+ *     <td>A line is drawn connecting the child to the parent. For handling of
+ *     the root node refer to {@link JTree#setRootVisible} and
+ *     {@link JTree#setShowsRootHandles}.
+ *   <tr>
+ *     <th scope="row">Horizontal
+ *     <td>A horizontal line is drawn dividing the children of the root node.
+ *   <tr>
+ *     <th scope="row">None
+ *     <td>Do not draw any visual indication between nodes.
+ * </tbody>
  * </table>
- *
  * <p>
  * As it is typically impractical to obtain the <code>TreeUI</code> from
  * the <code>JTree</code> and cast to an instance of <code>MetalTreeUI</code>
--- a/src/java.desktop/share/classes/javax/swing/text/JTextComponent.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/text/JTextComponent.java	Fri Oct 20 15:39:50 2017 -0700
@@ -160,34 +160,39 @@
  * <table class="striped">
  * <caption>Stages of keyboard and input method event handling</caption>
  * <thead>
- * <tr>
- * <th id="stage">Stage</th>
- * <th id="ke">KeyEvent</th>
- * <th id="ime">InputMethodEvent</th></tr>
+ *   <tr>
+ *     <th scope="col">Stage
+ *     <th scope="col">KeyEvent
+ *     <th scope="col">InputMethodEvent
  * </thead>
  * <tbody>
- * <tr><td headers="stage">1.   </td>
- *     <td headers="ke">input methods </td>
- *     <td headers="ime">(generated here)</td></tr>
- * <tr><td headers="stage">2.   </td>
- *     <td headers="ke">focus manager </td>
- *     <td headers="ime"></td>
- * </tr>
- * <tr>
- *     <td headers="stage">3.   </td>
- *     <td headers="ke">registered key listeners</td>
- *     <td headers="ime">registered input method listeners</tr>
- * <tr>
- *     <td headers="stage">4.   </td>
- *     <td headers="ke"></td>
- *     <td headers="ime">input method handling in JTextComponent</tr>
- * <tr>
- *     <td headers="stage">5.   </td><td headers="ke ime" colspan=2>keymap handling using the current keymap</td></tr>
- * <tr><td headers="stage">6.   </td><td headers="ke">keyboard handling in JComponent (e.g. accelerators, component navigation, etc.)</td>
- *     <td headers="ime"></td></tr>
+ *   <tr>
+ *     <th scope="row">1.
+ *     <td>input methods
+ *     <td>(generated here)
+ *   <tr>
+ *     <th scope="row" headers="stage">2.
+ *     <td>focus manager
+ *     <td>
+ *   </tr>
+ *   <tr>
+ *     <th scope="row">3.
+ *     <td>registered key listeners
+ *     <td>registered input method listeners
+ *   <tr>
+ *     <th scope="row">4.
+ *     <td>
+ *     <td>input method handling in JTextComponent
+ *   <tr>
+ *     <th scope="row">5.
+ *     <td colspan=2>keymap handling using the current keymap
+ *   <tr>
+ *     <th scope="row">6.
+ *     <td>keyboard handling in JComponent (e.g. accelerators, component
+ *     navigation, etc.)
+ *     <td>
  * </tbody>
  * </table>
- *
  * <p>
  * To maintain compatibility with applications that listen to key
  * events but are not aware of input method events, the input
--- a/src/java.desktop/share/classes/javax/swing/text/MaskFormatter.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/text/MaskFormatter.java	Fri Oct 20 15:39:50 2017 -0700
@@ -40,36 +40,39 @@
  * <table class="striped">
  * <caption>Valid characters and their descriptions</caption>
  * <thead>
- * <tr>
- *    <th>Character&nbsp;</th>
- *    <th>Description</th>
- * </tr>
+ *   <tr>
+ *     <th scope="col">Character
+ *     <th scope="col">Description
  * </thead>
  * <tbody>
- * <tr>
- *    <td>#</td>
- *    <td>Any valid number, uses <code>Character.isDigit</code>.</td>
- * </tr>
- * <tr>
- *    <td>'</td>
- *    <td>Escape character, used to escape any of the
- *       special formatting characters.</td>
- * </tr>
- * <tr>
- *    <td>U</td><td>Any character (<code>Character.isLetter</code>). All
- *        lowercase letters are mapped to upper case.</td>
- * </tr>
- * <tr><td>L</td><td>Any character (<code>Character.isLetter</code>). All
- *        upper case letters are mapped to lower case.</td>
- * </tr>
- * <tr><td>A</td><td>Any character or number (<code>Character.isLetter</code>
- *       or <code>Character.isDigit</code>)</td>
- * </tr>
- * <tr><td>?</td><td>Any character
- *        (<code>Character.isLetter</code>).</td>
- * </tr>
- * <tr><td>*</td><td>Anything.</td></tr>
- * <tr><td>H</td><td>Any hex character (0-9, a-f or A-F).</td></tr>
+ *   <tr>
+ *     <th scope="row">#
+ *     <td>Any valid number, uses {@code Character.isDigit}.
+ *   <tr>
+ *     <th scope="row">'
+ *     <td>Escape character, used to escape any of the special formatting
+ *     characters.
+ *   <tr>
+ *     <th scope="row">U
+ *     <td>Any character ({@code Character.isLetter}). All lowercase letters are
+ *     mapped to upper case.
+ *   <tr>
+ *     <th scope="row">L
+ *     <td>Any character ({@code Character.isLetter}). All upper case letters
+ *     are mapped to lower case.
+ *   <tr>
+ *     <th scope="row">A
+ *     <td>Any character or number ({@code Character.isLetter} or
+ *     {@code Character.isDigit}).
+ *   <tr>
+ *     <th scope="row">?
+ *     <td>Any character ({@code Character.isLetter}).
+ *   <tr>
+ *     <th scope="row">*
+ *     <td>Anything.
+ *   <tr>
+ *     <th scope="row">H
+ *     <td>Any hex character (0-9, a-f or A-F).
  * </tbody>
  * </table>
  *
--- a/src/java.desktop/share/classes/javax/swing/text/html/FormView.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/text/html/FormView.java	Fri Oct 20 15:39:50 2017 -0700
@@ -50,60 +50,47 @@
  * <table class="striped">
  * <caption>Shows what components get built by this view</caption>
  * <thead>
- * <tr>
- *   <th>Element Type</th>
- *   <th>Component built</th>
- * </tr>
+ *   <tr>
+ *     <th scope="col">Element Type
+ *     <th scope="col">Component built
  * </thead>
  * <tbody>
- * <tr>
- *   <td>input, type button</td>
- *   <td>JButton</td>
- * </tr>
- * <tr>
- *   <td>input, type checkbox</td>
- *   <td>JCheckBox</td>
- * </tr>
- * <tr>
- *   <td>input, type image</td>
- *   <td>JButton</td>
- * </tr>
- * <tr>
- *   <td>input, type password</td>
- *   <td>JPasswordField</td>
- * </tr>
- * <tr>
- *   <td>input, type radio</td>
- *   <td>JRadioButton</td>
- * </tr>
- * <tr>
- *   <td>input, type reset</td>
- *   <td>JButton</td>
- * </tr>
- * <tr>
- *   <td>input, type submit</td>
- *   <td>JButton</td>
- * </tr>
- * <tr>
- *   <td>input, type text</td>
- *   <td>JTextField</td>
- * </tr>
- * <tr>
- *   <td>select, size &gt; 1 or multiple attribute defined</td>
- *   <td>JList in a JScrollPane</td>
- * </tr>
- * <tr>
- *   <td>select, size unspecified or 1</td>
- *   <td>JComboBox</td>
- * </tr>
- * <tr>
- *   <td>textarea</td>
- *   <td>JTextArea in a JScrollPane</td>
- * </tr>
- * <tr>
- *   <td>input, type file</td>
- *   <td>JTextField</td>
- * </tr>
+ *   <tr>
+ *     <th scope="row">input, type button
+ *     <td>JButton
+ *   <tr>
+ *     <th scope="row">input, type checkbox
+ *     <td>JCheckBox
+ *   <tr>
+ *     <th scope="row">input, type image
+ *     <td>JButton
+ *   <tr>
+ *     <th scope="row">input, type password
+ *     <td>JPasswordField
+ *   <tr>
+ *     <th scope="row">input, type radio
+ *     <td>JRadioButton
+ *   <tr>
+ *     <th scope="row">input, type reset
+ *     <td>JButton
+ *   <tr>
+ *     <th scope="row">input, type submit
+ *     <td>JButton
+ *   <tr>
+ *     <th scope="row">input, type text
+ *     <td>JTextField
+ *   <tr>
+ *     <th scope="row">select, size &gt; 1 or multiple attribute defined
+ *     <td>JList in a JScrollPane
+ *   <tr>
+ *     <th scope="row">select, size unspecified or 1
+ *     <td>JComboBox
+ *   <tr>
+ *     <th scope="row">textarea
+ *     <td>JTextArea in a JScrollPane
+ *   <tr>
+ *     <th scope="row">input, type file
+ *     <td>JTextField
  * </tbody>
  * </table>
  *
--- a/src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java	Fri Oct 20 15:39:50 2017 -0700
@@ -2134,81 +2134,227 @@
      * <table class="striped">
      * <caption>HTML tags and assigned actions</caption>
      * <thead>
-     * <tr><th>Tag</th><th>Action</th></tr>
+     *   <tr>
+     *     <th scope="col">Tag
+     *     <th scope="col">Action
      * </thead>
      * <tbody>
-     * <tr><td><code>HTML.Tag.A</code>         <td>CharacterAction
-     * <tr><td><code>HTML.Tag.ADDRESS</code>   <td>CharacterAction
-     * <tr><td><code>HTML.Tag.APPLET</code>    <td>HiddenAction
-     * <tr><td><code>HTML.Tag.AREA</code>      <td>AreaAction
-     * <tr><td><code>HTML.Tag.B</code>         <td>CharacterAction
-     * <tr><td><code>HTML.Tag.BASE</code>      <td>BaseAction
-     * <tr><td><code>HTML.Tag.BASEFONT</code>  <td>CharacterAction
-     * <tr><td><code>HTML.Tag.BIG</code>       <td>CharacterAction
-     * <tr><td><code>HTML.Tag.BLOCKQUOTE</code><td>BlockAction
-     * <tr><td><code>HTML.Tag.BODY</code>      <td>BlockAction
-     * <tr><td><code>HTML.Tag.BR</code>        <td>SpecialAction
-     * <tr><td><code>HTML.Tag.CAPTION</code>   <td>BlockAction
-     * <tr><td><code>HTML.Tag.CENTER</code>    <td>BlockAction
-     * <tr><td><code>HTML.Tag.CITE</code>      <td>CharacterAction
-     * <tr><td><code>HTML.Tag.CODE</code>      <td>CharacterAction
-     * <tr><td><code>HTML.Tag.DD</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.DFN</code>       <td>CharacterAction
-     * <tr><td><code>HTML.Tag.DIR</code>       <td>BlockAction
-     * <tr><td><code>HTML.Tag.DIV</code>       <td>BlockAction
-     * <tr><td><code>HTML.Tag.DL</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.DT</code>        <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.EM</code>        <td>CharacterAction
-     * <tr><td><code>HTML.Tag.FONT</code>      <td>CharacterAction
-     * <tr><td><code>HTML.Tag.FORM</code>      <td>As of 1.4 a BlockAction
-     * <tr><td><code>HTML.Tag.FRAME</code>     <td>SpecialAction
-     * <tr><td><code>HTML.Tag.FRAMESET</code>  <td>BlockAction
-     * <tr><td><code>HTML.Tag.H1</code>        <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.H2</code>        <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.H3</code>        <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.H4</code>        <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.H5</code>        <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.H6</code>        <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.HEAD</code>      <td>HeadAction
-     * <tr><td><code>HTML.Tag.HR</code>        <td>SpecialAction
-     * <tr><td><code>HTML.Tag.HTML</code>      <td>BlockAction
-     * <tr><td><code>HTML.Tag.I</code>         <td>CharacterAction
-     * <tr><td><code>HTML.Tag.IMG</code>       <td>SpecialAction
-     * <tr><td><code>HTML.Tag.INPUT</code>     <td>FormAction
-     * <tr><td><code>HTML.Tag.ISINDEX</code>   <td>IsndexAction
-     * <tr><td><code>HTML.Tag.KBD</code>       <td>CharacterAction
-     * <tr><td><code>HTML.Tag.LI</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.LINK</code>      <td>LinkAction
-     * <tr><td><code>HTML.Tag.MAP</code>       <td>MapAction
-     * <tr><td><code>HTML.Tag.MENU</code>      <td>BlockAction
-     * <tr><td><code>HTML.Tag.META</code>      <td>MetaAction
-     * <tr><td><code>HTML.Tag.NOFRAMES</code>  <td>BlockAction
-     * <tr><td><code>HTML.Tag.OBJECT</code>    <td>SpecialAction
-     * <tr><td><code>HTML.Tag.OL</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.OPTION</code>    <td>FormAction
-     * <tr><td><code>HTML.Tag.P</code>         <td>ParagraphAction
-     * <tr><td><code>HTML.Tag.PARAM</code>     <td>HiddenAction
-     * <tr><td><code>HTML.Tag.PRE</code>       <td>PreAction
-     * <tr><td><code>HTML.Tag.SAMP</code>      <td>CharacterAction
-     * <tr><td><code>HTML.Tag.SCRIPT</code>    <td>HiddenAction
-     * <tr><td><code>HTML.Tag.SELECT</code>    <td>FormAction
-     * <tr><td><code>HTML.Tag.SMALL</code>     <td>CharacterAction
-     * <tr><td><code>HTML.Tag.STRIKE</code>    <td>CharacterAction
-     * <tr><td><code>HTML.Tag.S</code>         <td>CharacterAction
-     * <tr><td><code>HTML.Tag.STRONG</code>    <td>CharacterAction
-     * <tr><td><code>HTML.Tag.STYLE</code>     <td>StyleAction
-     * <tr><td><code>HTML.Tag.SUB</code>       <td>CharacterAction
-     * <tr><td><code>HTML.Tag.SUP</code>       <td>CharacterAction
-     * <tr><td><code>HTML.Tag.TABLE</code>     <td>BlockAction
-     * <tr><td><code>HTML.Tag.TD</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.TEXTAREA</code>  <td>FormAction
-     * <tr><td><code>HTML.Tag.TH</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.TITLE</code>     <td>TitleAction
-     * <tr><td><code>HTML.Tag.TR</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.TT</code>        <td>CharacterAction
-     * <tr><td><code>HTML.Tag.U</code>         <td>CharacterAction
-     * <tr><td><code>HTML.Tag.UL</code>        <td>BlockAction
-     * <tr><td><code>HTML.Tag.VAR</code>       <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.A}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.ADDRESS}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.APPLET}
+     *     <td>HiddenAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.AREA}
+     *     <td>AreaAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.B}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.BASE}
+     *     <td>BaseAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.BASEFONT}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.BIG}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.BLOCKQUOTE}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.BODY}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.BR}
+     *     <td>SpecialAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.CAPTION}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.CENTER}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.CITE}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.CODE}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.DD}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.DFN}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.DIR}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.DIV}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.DL}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.DT}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.EM}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.FONT}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.FORM}
+     *     <td>As of 1.4 a BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.FRAME}
+     *     <td>SpecialAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.FRAMESET}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.H1}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.H2}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.H3}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.H4}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.H5}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.H6}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.HEAD}
+     *     <td>HeadAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.HR}
+     *     <td>SpecialAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.HTML}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.I}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.IMG}
+     *     <td>SpecialAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.INPUT}
+     *     <td>FormAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.ISINDEX}
+     *     <td>IsndexAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.KBD}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.LI}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.LINK}
+     *     <td>LinkAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.MAP}
+     *     <td>MapAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.MENU}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.META}
+     *     <td>MetaAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.NOFRAMES}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.OBJECT}
+     *     <td>SpecialAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.OL}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.OPTION}
+     *     <td>FormAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.P}
+     *     <td>ParagraphAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.PARAM}
+     *     <td>HiddenAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.PRE}
+     *     <td>PreAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.SAMP}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.SCRIPT}
+     *     <td>HiddenAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.SELECT}
+     *     <td>FormAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.SMALL}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.STRIKE}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.S}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.STRONG}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.STYLE}
+     *     <td>StyleAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.SUB}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.SUP}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.TABLE}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.TD}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.TEXTAREA}
+     *     <td>FormAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.TH}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.TITLE}
+     *     <td>TitleAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.TR}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.TT}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.U}
+     *     <td>CharacterAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.UL}
+     *     <td>BlockAction
+     *   <tr>
+     *     <th scope="row">{@code HTML.Tag.VAR}
+     *     <td>CharacterAction
      * </tbody>
      * </table>
      * <p>
@@ -3397,45 +3543,44 @@
          * <caption>Model assignments for the various types of form elements
          * </caption>
          * <thead>
-         * <tr>
-         *   <th>Element Type
-         *   <th>Model Type
-         * </tr>
+         *   <tr>
+         *     <th scope="col">Element Type
+         *     <th scope="col">Model Type
          * </thead>
          * <tbody>
-         * <tr>
-         *   <td>input, type button
-         *   <td>{@link DefaultButtonModel}
-         * <tr>
-         *   <td>input, type checkbox
-         *   <td>{@link javax.swing.JToggleButton.ToggleButtonModel}
-         * <tr>
-         *   <td>input, type image
-         *   <td>{@link DefaultButtonModel}
-         * <tr>
-         *   <td>input, type password
-         *   <td>{@link PlainDocument}
-         * <tr>
-         *   <td>input, type radio
-         *   <td>{@link javax.swing.JToggleButton.ToggleButtonModel}
-         * <tr>
-         *   <td>input, type reset
-         *   <td>{@link DefaultButtonModel}
-         * <tr>
-         *   <td>input, type submit
-         *   <td>{@link DefaultButtonModel}
-         * <tr>
-         *   <td>input, type text or type is null.
-         *   <td>{@link PlainDocument}
-         * <tr>
-         *   <td>select
-         *   <td>{@link DefaultComboBoxModel} or an {@link DefaultListModel}, with an item type of Option
-         * <tr>
-         *   <td>textarea
-         *   <td>{@link PlainDocument}
+         *   <tr>
+         *     <th scope="row">input, type button
+         *     <td>{@link DefaultButtonModel}
+         *   <tr>
+         *     <th scope="row">input, type checkbox
+         *     <td>{@link JToggleButton.ToggleButtonModel}
+         *   <tr>
+         *     <th scope="row">input, type image
+         *     <td>{@link DefaultButtonModel}
+         *   <tr>
+         *     <th scope="row">input, type password
+         *     <td>{@link PlainDocument}
+         *   <tr>
+         *     <th scope="row">input, type radio
+         *     <td>{@link JToggleButton.ToggleButtonModel}
+         *   <tr>
+         *     <th scope="row">input, type reset
+         *     <td>{@link DefaultButtonModel}
+         *   <tr>
+         *     <th scope="row">input, type submit
+         *     <td>{@link DefaultButtonModel}
+         *   <tr>
+         *     <th scope="row">input, type text or type is null.
+         *     <td>{@link PlainDocument}
+         *   <tr>
+         *     <th scope="row">select
+         *     <td>{@link DefaultComboBoxModel} or an {@link DefaultListModel},
+         *     with an item type of Option
+         *   <tr>
+         *     <td>textarea
+         *     <td>{@link PlainDocument}
          * </tbody>
          * </table>
-         *
          */
         public class FormAction extends SpecialAction {
 
--- a/src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java	Fri Oct 20 15:39:50 2017 -0700
@@ -1122,83 +1122,116 @@
      * <caption>Describes the tag and view created by this factory by default
      * </caption>
      * <thead>
-     * <tr>
-     * <th>Tag
-     * <th>View created
-     * </tr>
+     *   <tr>
+     *     <th scope="col">Tag
+     *     <th scope="col">View created
      * </thead>
      * <tbody>
-     * <tr>
-     * <td>HTML.Tag.CONTENT<td>InlineView
-     * </tr><tr>
-     * <td>HTML.Tag.IMPLIED<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.P<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.H1<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.H2<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.H3<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.H4<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.H5<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.H6<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.DT<td>javax.swing.text.html.ParagraphView
-     * </tr><tr>
-     * <td>HTML.Tag.MENU<td>ListView
-     * </tr><tr>
-     * <td>HTML.Tag.DIR<td>ListView
-     * </tr><tr>
-     * <td>HTML.Tag.UL<td>ListView
-     * </tr><tr>
-     * <td>HTML.Tag.OL<td>ListView
-     * </tr><tr>
-     * <td>HTML.Tag.LI<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.DL<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.DD<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.BODY<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.HTML<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.CENTER<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.DIV<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.BLOCKQUOTE<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.PRE<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.BLOCKQUOTE<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.PRE<td>BlockView
-     * </tr><tr>
-     * <td>HTML.Tag.IMG<td>ImageView
-     * </tr><tr>
-     * <td>HTML.Tag.HR<td>HRuleView
-     * </tr><tr>
-     * <td>HTML.Tag.BR<td>BRView
-     * </tr><tr>
-     * <td>HTML.Tag.TABLE<td>javax.swing.text.html.TableView
-     * </tr><tr>
-     * <td>HTML.Tag.INPUT<td>FormView
-     * </tr><tr>
-     * <td>HTML.Tag.SELECT<td>FormView
-     * </tr><tr>
-     * <td>HTML.Tag.TEXTAREA<td>FormView
-     * </tr><tr>
-     * <td>HTML.Tag.OBJECT<td>ObjectView
-     * </tr><tr>
-     * <td>HTML.Tag.FRAMESET<td>FrameSetView
-     * </tr><tr>
-     * <td>HTML.Tag.FRAME<td>FrameView
-     * </tr>
+     *   <tr>
+     *     <th scope="row">HTML.Tag.CONTENT
+     *     <td>InlineView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.IMPLIED
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.P
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.H1
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.H2
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.H3
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.H4
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.H5
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.H6
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.DT
+     *     <td>javax.swing.text.html.ParagraphView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.MENU
+     *     <td>ListView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.DIR
+     *     <td>ListView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.UL
+     *     <td>ListView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.OL
+     *     <td>ListView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.LI
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.DL
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.DD
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.BODY
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.HTML
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.CENTER
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.DIV
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.BLOCKQUOTE
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.PRE
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.BLOCKQUOTE
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.PRE
+     *     <td>BlockView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.IMG
+     *     <td>ImageView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.HR
+     *     <td>HRuleView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.BR
+     *     <td>BRView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.TABLE
+     *     <td>javax.swing.text.html.TableView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.INPUT
+     *     <td>FormView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.SELECT
+     *     <td>FormView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.TEXTAREA
+     *     <td>FormView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.OBJECT
+     *     <td>ObjectView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.FRAMESET
+     *     <td>FrameSetView
+     *   <tr>
+     *     <th scope="row">HTML.Tag.FRAME
+     *     <td>FrameView
      * </tbody>
      * </table>
      */
--- a/src/java.desktop/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java	Fri Oct 20 15:12:45 2017 -0700
+++ b/src/java.desktop/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java	Fri Oct 20 15:39:50 2017 -0700
@@ -65,19 +65,35 @@
  * <caption>Properties</caption>
  * <thead>
  *   <tr>
- *     <th>Property:
- *     <th>Key:
+ *     <th scope="col">Property
+ *     <th scope="col">Key
  *   </tr>
  * </thead>
  * <tbody>
- *   <tr><td>"leafIcon"<td>"Tree.leafIcon"
- *   <tr><td>"closedIcon"<td>"Tree.closedIcon"
- *   <tr><td>"openIcon"<td>"Tree.openIcon"
- *   <tr><td>"textSelectionColor"<td>"Tree.selectionForeground"
- *   <tr><td>"textNonSelectionColor"<td>"Tree.textForeground"
- *   <tr><td>"backgroundSelectionColor"<td>"Tree.selectionBackground"
- *   <tr><td>"backgroundNonSelectionColor"<td>"Tree.textBackground"
- *   <tr><td>"borderSelectionColor"<td>"Tree.selectionBorderColor"
+ *   <tr>
+ *     <th scope="row">"leafIcon"
+ *     <td>"Tree.leafIcon"
+ *   <tr>
+ *     <th scope="row">"closedIcon"
+ *     <td>"Tree.closedIcon"
+ *   <tr>
+ *     <th scope="row">"openIcon"
+ *     <td>"Tree.openIcon"
+ *   <tr>
+ *     <th scope="row">"textSelectionColor"
+ *     <td>"Tree.selectionForeground"
+ *   <tr>
+ *     <th scope="row">"textNonSelectionColor"
+ *     <td>"Tree.textForeground"
+ *   <tr>
+ *     <th scope="row">"backgroundSelectionColor"
+ *     <td>"Tree.selectionBackground"
+ *   <tr>
+ *     <th scope="row">"backgroundNonSelectionColor"
+ *     <td>"Tree.textBackground"
+ *   <tr>
+ *     <th scope="row">"borderSelectionColor"
+ *     <td>"Tree.selectionBorderColor"
  * </tbody>
  * </table>
  * <p>