8220253: Fix Headings in java.sql.rowset
authorlancea
Wed, 13 Mar 2019 14:10:18 -0400
changeset 54106 9a90236ab64c
parent 54105 d58599c7cdef
child 54107 1d7aec80147a
8220253: Fix Headings in java.sql.rowset Reviewed-by: darcy
src/java.sql.rowset/share/classes/com/sun/rowset/package-info.java
src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIOptimisticProvider.java
src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIXMLProvider.java
src/java.sql.rowset/share/classes/com/sun/rowset/providers/package-info.java
src/java.sql.rowset/share/classes/javax/sql/rowset/BaseRowSet.java
src/java.sql.rowset/share/classes/javax/sql/rowset/CachedRowSet.java
src/java.sql.rowset/share/classes/javax/sql/rowset/FilteredRowSet.java
src/java.sql.rowset/share/classes/javax/sql/rowset/JdbcRowSet.java
src/java.sql.rowset/share/classes/javax/sql/rowset/JoinRowSet.java
src/java.sql.rowset/share/classes/javax/sql/rowset/Joinable.java
src/java.sql.rowset/share/classes/javax/sql/rowset/Predicate.java
src/java.sql.rowset/share/classes/javax/sql/rowset/WebRowSet.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialArray.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialBlob.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialClob.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialDatalink.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialJavaObject.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialRef.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialStruct.java
src/java.sql.rowset/share/classes/javax/sql/rowset/serial/package-info.java
src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncFactory.java
src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncProvider.java
--- a/src/java.sql.rowset/share/classes/com/sun/rowset/package-info.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/com/sun/rowset/package-info.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- *  Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
+ *  Copyright (c) 2003, 2019, 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
@@ -30,7 +30,7 @@
  * by the Test Compatibility Kit (TCK) as mandated by the Java Community Process.
  * <br>
  *
- * <h3>1.0 Available JDBC RowSet Reference Implementations </h3>
+ * <h2>1.0 Available JDBC RowSet Reference Implementations </h2>
  * The following implementations are provided:<br>
  *
  * <blockquote><code><b>JdbcRowSetImpl</b></code> - The <code>javax.sql.rowset.JdbcRowSet</code>
@@ -53,7 +53,7 @@
  * SPI and helper classes are provided in the interface definitions in the <code>javax.sql.rowset</code>
  * package specification.<br>
  *
- * <h3>2.0 Usage</h3>
+ * <h2>2.0 Usage</h2>
  * The reference implementations represent robust implementations of the standard
  * <code>RowSet</code> interfaces defined in the <code>javax.sql.rowset</code> package.
  * All disconnected <code>RowSet</code> implementations, such as the <code>CachedRowSetImpl</code>
@@ -63,7 +63,7 @@
  * to use these implementations and integrate them into their products just as they
  * can with to other components of the Java platform.<br>
  *
- * <h3>3.0 Extending the JDBC RowSet Implementations</h3>
+ * <h2>3.0 Extending the JDBC RowSet Implementations</h2>
  *
  * The JDBC <code>RowSet</code> reference implementations are provided as non-final
  * classes so that any developer can extend them to provide additional features
--- a/src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIOptimisticProvider.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIOptimisticProvider.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -37,7 +37,7 @@
  * providing optimistic synchronization with a relational datastore
  * using any JDBC technology-enabled driver.
  *
- * <h3>1.0 Backgroud</h3>
+ * <h2>1.0 Backgroud</h2>
  * This synchronization provider is registered with the
  * <code>SyncFactory</code> by default as the
  * <code>com.sun.rowset.providers.RIOptimisticProvider</code>.
@@ -56,7 +56,7 @@
  * <code>RIOptimisticProvider</code> will not write any of the changes to the data
  * source and  will throw a <code>SyncProviderException</code> object.
  *
- * <h3>2.0 Usage</h3>
+ * <h2>2.0 Usage</h2>
  * Standard disconnected <code>RowSet</code> implementations may opt to use this
  * <code>SyncProvider</code> implementation in one of two ways:
  * <OL>
--- a/src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIXMLProvider.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIXMLProvider.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -37,7 +37,7 @@
  * with the ability to read and write rowsets in well formed XML using the
  * standard WebRowSet schema.
  *
- * <h3>1.0 Background</h3>
+ * <h2>1.0 Background</h2>
  * This synchronization provider is registered with the
  * <code>SyncFactory</code> by default as the
  * <code>com.sun.rowset.providers.RIXMLProvider</code>.
@@ -51,7 +51,7 @@
  * The <code>RIXMLProvider</code> implementation has a synchronization level of
  * GRADE_NONE, which means that it does no checking at all for conflicts.  It
  * simply writes a <code>WebRowSet</code> object to a file.
- * <h3>2.0 Usage</h3>
+ * <h2>2.0 Usage</h2>
  * A <code>WebRowSet</code> implementation is created with an <code>RIXMLProvider</code>
  * by default.
  * <pre>
--- a/src/java.sql.rowset/share/classes/com/sun/rowset/providers/package-info.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/com/sun/rowset/providers/package-info.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -33,7 +33,7 @@
  * the default <code>SyncProvider</code> implementations and are accessible via the
  * <code>SyncProvider</code> SPI managed by the <code>SyncFactory</code>.
  *
- * <h3>1.0 <code>SyncProvider</code> Reference Implementations</h3>
+ * <h2>1.0 <code>SyncProvider</code> Reference Implementations</h2>
  *   The main job of a <code>SyncProvider</code> implementation is to manage
  * the reader and writer mechanisms.
  *  The <code>SyncProvider</code> SPI, as specified in the <code>javax.sql.rowset.spi</code>
@@ -106,7 +106,7 @@
  * definition.<br>
  * </UL>
  *
- * <h3>2.0 Basics in RowSet Population &amp; Synchronization</h3>
+ * <h2>2.0 Basics in RowSet Population &amp; Synchronization</h2>
  * A rowset's first task is to populate itself with rows of column values.
  * Generally,   these rows will come from a relational database, so a rowset
  * has properties   that supply what is necessary for making a connection to
@@ -147,7 +147,7 @@
  *  once again disconnects itself.<br>
  *   </p>
  *
- * <h3> 3.0 Other Possible Implementations</h3>
+ * <h2> 3.0 Other Possible Implementations</h2>
  *  There are many other possible implementations of the <code>SyncProvider</code> abstract
  *  class. One possibility is to employ a more robust synchronization model, which
  *  would give a <code>RowSet</code> object increased trust in the provider's
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/BaseRowSet.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/BaseRowSet.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -39,7 +39,7 @@
  * The basic functions include having properties and sending event notifications,
  * which all JavaBeans&trade; components must implement.
  *
- * <h3>1.0 Overview</h3>
+ * <h2>1.0 Overview</h2>
  * The <code>BaseRowSet</code> class provides the core functionality
  * for all <code>RowSet</code> implementations,
  * and all standard implementations <b>may</b> use this class in combination with
@@ -72,7 +72,7 @@
  *  </ul>
  * </UL>
  *
- * <h3>2.0 Setting Properties</h3>
+ * <h2>2.0 Setting Properties</h2>
  * All rowsets maintain a set of properties, which will usually be set using
  * a tool.  The number and kinds of properties a rowset has will vary,
  * depending on what the <code>RowSet</code> implementation does and how it gets
@@ -95,7 +95,7 @@
  * Interface&trade; (JNDI) API.  This registration
  * is usually done by a person acting in the capacity of a system administrator.
  *
- * <h3>3.0 Setting the Command and Its Parameters</h3>
+ * <h2>3.0 Setting the Command and Its Parameters</h2>
  * When a rowset gets its data from a relational database, it executes a command (a query)
  * that produces a <code>ResultSet</code> object.  This query is the command that is set
  * for the <code>RowSet</code> object's command property.  The rowset populates itself with data by reading the
@@ -143,7 +143,7 @@
  * <code>SerialArray</code>, <code>SerialClob</code>, <code>SerialBlob</code>
  * and <code>SerialRef</code> objects respectively.
  *
- * <h3>4.0 Handling of Parameters Behind the Scenes</h3>
+ * <h2>4.0 Handling of Parameters Behind the Scenes</h2>
  *
  * NOTE: The <code>BaseRowSet</code> class provides two kinds of setter methods,
  * those that set properties and those that set placeholder parameters. The setter
@@ -227,7 +227,7 @@
 * <code>RowSet</code> implementations extending this class; it is not normally called by an
 * application programmer directly.
 *
-* <h3>5.0 Event Notification</h3>
+* <h2>5.0 Event Notification</h2>
 * The <code>BaseRowSet</code> class provides the event notification
 * mechanism for rowsets.  It contains the field
 * <code>listeners</code>, methods for adding and removing listeners, and
@@ -255,7 +255,7 @@
 * What the listener does with this information, which may be nothing, depends on how it was
 * implemented.
 *
-* <h3>6.0 Default Behavior</h3>
+* <h2>6.0 Default Behavior</h2>
 * A default <code>BaseRowSet</code> object is initialized with many starting values.
 *
 * The following is true of a default <code>RowSet</code> instance that extends
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/CachedRowSet.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/CachedRowSet.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -68,7 +68,7 @@
  * over the wire to a thin client such as a personal digital assistant (PDA).
  *
  *
- * <h3>1.0 Creating a <code>CachedRowSet</code> Object</h3>
+ * <h2>1.0 Creating a <code>CachedRowSet</code> Object</h2>
  * The following line of code uses the default constructor for
  * <code>CachedRowSet</code>
  * supplied in the reference implementation (RI) to create a default
@@ -140,7 +140,7 @@
  * more details.
  *
  *
- * <h3>2.0 Retrieving Data from a <code>CachedRowSet</code> Object</h3>
+ * <h2>2.0 Retrieving Data from a <code>CachedRowSet</code> Object</h2>
  * Data is retrieved from a <code>CachedRowSet</code> object by using the
  * getter methods inherited from the <code>ResultSet</code>
  * interface.  The following examples, in which <code>crs</code> is a
@@ -171,7 +171,7 @@
  *        System.out.println(name + "  " + id + "  " + comment + "  " + dept);
  *    }
  * </PRE>
- * <h4>2.1 Retrieving <code>RowSetMetaData</code></h4>
+ * <h3>2.1 Retrieving <code>RowSetMetaData</code></h3>
  * An application can get information about the columns in a <code>CachedRowSet</code>
  * object by calling <code>ResultSetMetaData</code> and <code>RowSetMetaData</code>
  * methods on a <code>RowSetMetaData</code> object. The following code fragment,
@@ -207,7 +207,7 @@
  * override the <code>getMetaData()</code> method defined in
  * <code>java.sql.ResultSet</code> and return a <code>RowSetMetaData</code> object.
  *
- * <h3>3.0 Updating a <code>CachedRowSet</code> Object</h3>
+ * <h2>3.0 Updating a <code>CachedRowSet</code> Object</h2>
  * Updating a <code>CachedRowSet</code> object is similar to updating a
  * <code>ResultSet</code> object, but because the rowset is not connected to
  * its data source while it is being updated, it must take an additional step
@@ -261,7 +261,7 @@
  * and <code>insertRow</code> have been made.  If <code>acceptChanges</code>
  * is called only once, only one connection needs to be established.
  *
- * <h3>4.0 Updating the Underlying Data Source</h3>
+ * <h2>4.0 Updating the Underlying Data Source</h2>
  * When the method <code>acceptChanges</code> is executed, the
  * <code>CachedRowSet</code> object's writer, a <code>RowSetWriterImpl</code>
  * object, is called behind the scenes to write the changes made to the
@@ -305,7 +305,7 @@
  * Whether a writer checks for conflicts, what degree of checking it does, and how
  * it handles conflicts all depend on how it is implemented.
  *
- * <h3>5.0 Registering and Notifying Listeners</h3>
+ * <h2>5.0 Registering and Notifying Listeners</h2>
  * Being JavaBeans components, all rowsets participate in the JavaBeans event
  * model, inheriting methods for registering listeners and notifying them of
  * changes from the <code>BaseRowSet</code> class.  A listener for a
@@ -328,7 +328,7 @@
  * <code>table</code> and <code>barGraph</code> will be notified when there is
  * a change in <code>crs</code>.
  *
- * <h3>6.0 Passing Data to Thin Clients</h3>
+ * <h2>6.0 Passing Data to Thin Clients</h2>
  * One of the main reasons to use a <code>CachedRowSet</code> object is to
  * pass data between different components of an application. Because it is
  * serializable, a <code>CachedRowSet</code> object can be used, for example,
@@ -344,7 +344,7 @@
  * Thus, a <code>CachedRowSet</code> object provides a means to "get rows in"
  * without the need to implement the full JDBC API.
  *
- * <h3>7.0 Scrolling and Updating</h3>
+ * <h2>7.0 Scrolling and Updating</h2>
  * A second major use for <code>CachedRowSet</code> objects is to provide
  * scrolling and updating for <code>ResultSet</code> objects that
  * do not provide these capabilities themselves.  In other words, a
@@ -378,7 +378,7 @@
  * <code>CachedRowSet</code> object does have a limitation: It is limited in
  * size by the amount of data it can store in memory at one time.
  *
- * <h3>8.0 Getting Universal Data Access</h3>
+ * <h2>8.0 Getting Universal Data Access</h2>
  * Another advantage of the <code>CachedRowSet</code> class is that it makes it
  * possible to retrieve and store data from sources other than a relational
  * database. The reader for a rowset can be implemented to read and populate
@@ -391,7 +391,7 @@
  * <code>CachedRowSet</code> objects will contain data that was fetched
  * from an SQL database using the JDBC API.
  *
- * <h3>9.0 Setting Properties</h3>
+ * <h2>9.0 Setting Properties</h2>
  * All rowsets maintain a set of properties, which will usually be set using
  * a tool.  The number and kinds of properties a rowset has will vary,
  * depending on what the rowset does and how it gets its data.  For example,
@@ -492,7 +492,7 @@
  *    crs.execute();
  * }</PRE>
  *
- * <h3>10.0 Paging Data</h3>
+ * <h2>10.0 Paging Data</h2>
  * Because a <code>CachedRowSet</code> object stores data in memory,
  * the amount of data that it can contain at any one
  * time is determined by the amount of memory available. To get around this limitation,
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/FilteredRowSet.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/FilteredRowSet.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -38,7 +38,7 @@
  * Alternatively, a vendor is free to implement its own version
  * by implementing this interface.
  *
- * <h3>1.0 Background</h3>
+ * <h2>1.0 Background</h2>
  *
  * There are occasions when a <code>RowSet</code> object has a need to provide a degree
  * of filtering to its contents. One possible solution is to provide
@@ -56,14 +56,14 @@
  * methods, which a <code>FilteredRowSet</code> implementation can override
  * to supply filtering support.
  *
- * <h3>2.0 Predicate Sharing</h3>
+ * <h2>2.0 Predicate Sharing</h2>
  *
  * If a <code>FilteredRowSet</code> implementation is shared using the
  * inherited <code>createShared</code> method in parent interfaces, the
  * <code>Predicate</code> should be shared without modification by all
  * <code>FilteredRowSet</code> instance clones.
  *
- * <h3>3.0 Usage</h3>
+ * <h2>3.0 Usage</h2>
  * <p>
  * By implementing a <code>Predicate</code> (see example in <a href="Predicate.html">Predicate</a>
  * class JavaDoc), a <code>FilteredRowSet</code> could then be used as described
@@ -92,7 +92,7 @@
  * used in combination to achieved the required filtering result with
  * out the need for query language processing.
  *
- * <h3>4.0 Updating a <code>FilteredRowSet</code> Object</h3>
+ * <h2>4.0 Updating a <code>FilteredRowSet</code> Object</h2>
  * The predicate set on a <code>FilteredRowSet</code> object
  * applies a criterion on all rows in a
  * <code>RowSet</code> object to manage a subset of rows in a <code>RowSet</code>
@@ -113,7 +113,7 @@
  * <code>FilteredRowSet</code> object, and all subsequent views and updates will be
  * subject to similar enforcement.
  *
- * <h3>5.0 Behavior of Rows Outside the Filter</h3>
+ * <h2>5.0 Behavior of Rows Outside the Filter</h2>
  * Rows that fall outside of the filter set on a <code>FilteredRowSet</code>
  * object cannot be modified until the filter is removed or a
  * new filter is applied.
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/JdbcRowSet.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/JdbcRowSet.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -36,7 +36,7 @@
  * The standard interface that all standard implementations of
  * <code>JdbcRowSet</code> must implement.
  *
- * <h3>1.0 Overview</h3>
+ * <h2>1.0 Overview</h2>
  * A wrapper around a <code>ResultSet</code> object that makes it possible
  * to use the result set as a JavaBeans&trade;
  * component.  Thus, a <code>JdbcRowSet</code> object can be one of the Beans that
@@ -60,7 +60,7 @@
  * <code>JdbcRowSet</code> object as if it were the <code>ResultSet</code>
  * object.
  *
- * <h3>2.0 Creating a <code>JdbcRowSet</code> Object</h3>
+ * <h2>2.0 Creating a <code>JdbcRowSet</code> Object</h2>
  * The reference implementation of the <code>JdbcRowSet</code> interface,
  * <code>JdbcRowSetImpl</code>, provides an implementation of
  * the default constructor.  A new instance is initialized with
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/JoinRowSet.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/JoinRowSet.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -48,7 +48,7 @@
  * alternatively be set by supplying it to the appropriate version of the
  * <code>JointRowSet</code> method <code>addRowSet</code>.
  *
- * <h3>1.0 Overview</h3>
+ * <h2>1.0 Overview</h2>
  * Disconnected <code>RowSet</code> objects (<code>CachedRowSet</code> objects
  * and implementations extending the <code>CachedRowSet</code> interface)
  * do not have a standard way to establish an SQL <code>JOIN</code> between
@@ -98,7 +98,7 @@
  * <code>JoinRowSet</code> interface explain these <code>JOIN</code> types, which are
  * standard SQL <code>JOIN</code> types.
  *
- * <h3>2.0 Using a <code>JoinRowSet</code> Object for Creating a <code>JOIN</code></h3>
+ * <h2>2.0 Using a <code>JoinRowSet</code> Object for Creating a <code>JOIN</code></h2>
  * When a <code>JoinRowSet</code> object is created, it is empty.
  * The first <code>RowSet</code> object to be added becomes the basis for the
  * <code>JOIN</code> relationship.
@@ -126,7 +126,7 @@
  *  These four methods set or reset the match column at the time a <code>RowSet</code>
  *  object is being added to a <code>JoinRowSet</code> object.
  * </ul>
- * <h3>3.0 Sample Usage</h3>
+ * <h2>3.0 Sample Usage</h2>
  * <p>
  * The following code fragment adds two <code>CachedRowSet</code>
  * objects to a <code>JoinRowSet</code> object. Note that in this example,
@@ -193,7 +193,7 @@
  * <code>EMP_ID</code> column matches a value for the <code>EMP_ID</code> column
  * in <i>jrs</i> has been added to <i>jrs</i>.
  *
- * <h3>4.0 <code>JoinRowSet</code> Methods</h3>
+ * <h2>4.0 <code>JoinRowSet</code> Methods</h2>
  * The <code>JoinRowSet</code> interface supplies several methods for adding
  * <code>RowSet</code> objects and for getting information about the
  * <code>JoinRowSet</code> object.
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/Joinable.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/Joinable.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -28,7 +28,7 @@
 import java.sql.SQLException;
 
 /**
- * <h3>1.0 Background</h3>
+ * <h2>1.0 Background</h2>
  * The <code>Joinable</code> interface provides the methods for getting and
  * setting a match column, which is the basis for forming the SQL <code>JOIN</code>
  * formed by adding <code>RowSet</code> objects to a <code>JoinRowSet</code>
@@ -58,7 +58,7 @@
  *     }
  * </pre>
  *
- * <h3>2.0 Usage Guidelines</h3>
+ * <h2>2.0 Usage Guidelines</h2>
  * <P>
  * The methods in the <code>Joinable</code> interface allow a <code>RowSet</code> object
  * to set a match column, retrieve a match column, or unset a match column, which is
@@ -98,7 +98,7 @@
  * become part of an SQL <code>JOIN</code> directly without having to become part
  * of a <code>JoinRowSet</code> object.
  *
- * <h3>3.0 Managing Multiple Match Columns</h3>
+ * <h2>3.0 Managing Multiple Match Columns</h2>
  * The index array passed into the <code>setMatchColumn</code> methods indicates
  * how many match columns are being set (the length of the array) in addition to
  * which columns will be used for the match. For example:
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/Predicate.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/Predicate.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -32,7 +32,7 @@
  * The standard interface that provides the framework for all
  * <code>FilteredRowSet</code> objects to describe their filters.
  *
- * <h3>1.0 Background</h3>
+ * <h2>1.0 Background</h2>
  * The <code>Predicate</code> interface is a standard interface that
  * applications can implement to define the filter they wish to apply to a
  * a <code>FilteredRowSet</code> object. A <code>FilteredRowSet</code>
@@ -43,7 +43,7 @@
  * the constraints of the filter; and conversely, it inserts, modifies, or updates
  * only rows that are within the constraints of the filter.
  *
- * <h3>2.0 Implementation Guidelines</h3>
+ * <h2>2.0 Implementation Guidelines</h2>
  * In order to supply a predicate for the <code>FilteredRowSet</code>.
  * this interface must be implemented.  At this time, the JDBC RowSet
  * Implementations (JSR-114) does not specify any standard filters definitions.
@@ -101,7 +101,7 @@
  *
  */
 
- // <h3>3.0 FilteredRowSet Internals</h3>
+ // <h2>3.0 FilteredRowSet Internals</h2>
  // internalNext, First, Last. Discuss guidelines on how to approach this
  // and cite examples in reference implementations.
 public interface Predicate {
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/WebRowSet.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/WebRowSet.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -36,7 +36,7 @@
  * The standard interface that all implementations of a {@code WebRowSet}
  * must implement.
  *
- * <h3>1.0 Overview</h3>
+ * <h2>1.0 Overview</h2>
  * The {@code WebRowSetImpl} provides the standard
  * reference implementation, which may be extended if required.
  * <P>
@@ -78,12 +78,12 @@
  * </li>
  * </ul>
  *
- * <h3>2.0 WebRowSet States</h3>
+ * <h2>2.0 WebRowSet States</h2>
  * The following sections demonstrates how a {@code WebRowSet} implementation
  * should use the XML Schema to describe update, insert, and delete operations
  * and to describe the state of a {@code WebRowSet} object in XML.
  *
- * <h4>2.1 State 1 - Outputting a {@code WebRowSet} Object to XML</h4>
+ * <h2>2.1 State 1 - Outputting a {@code WebRowSet} Object to XML</h2>
  * In this example, a {@code WebRowSet} object is created and populated with a simple 2 column,
  * 5 row table from a data source. Having the 5 rows in a {@code WebRowSet} object
  * makes it possible to describe them in XML. The
@@ -216,7 +216,7 @@
  *      </currentRow>
  * </data>
  * }</PRE>
- * <h4>2.2 State 2 - Deleting a Row</h4>
+ * <h2>2.2 State 2 - Deleting a Row</h2>
  * Deleting a row in a {@code WebRowSet} object involves simply moving to the row
  * to be deleted and then calling the method {@code deleteRow}, as in any other
  * {@code RowSet} object.  The following
@@ -265,7 +265,7 @@
  *      </currentRow>
  * </data>
  *} </PRE>
- * <h4>2.3 State 3 - Inserting a Row</h4>
+ * <h2>2.3 State 3 - Inserting a Row</h2>
  * A {@code WebRowSet} object can insert a new row by moving to the insert row,
  * calling the appropriate updater methods for each column in the row, and then
  * calling the method {@code insertRow}.
@@ -337,7 +337,7 @@
  *      </currentRow>
  * </date>
  *} </PRE>
- * <h4>2.4 State 4 - Modifying a Row</h4>
+ * <h2>2.4 State 4 - Modifying a Row</h2>
  * Modifying a row produces specific XML that records both the new value and the
  * value that was replaced.  The value that was replaced becomes the original value,
  * and the new value becomes the current value. The following
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialArray.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialArray.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -50,7 +50,7 @@
  * if necessary. At this time, logical pointers to the data in the data source,
  * such as locators, are not currently supported.
  *
- * <h3> Thread safety </h3>
+ * <h2> Thread safety </h2>
  *
  * A SerialArray is not safe for use by multiple concurrent threads.  If a
  * SerialArray is to be used by more than one thread then access to the
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialBlob.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialBlob.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -51,7 +51,7 @@
  * <code>Blob</code> object within a <code>SerialBlob</code> object
  * and to update or truncate a <code>Blob</code> object.
  *
- * <h3> Thread safety </h3>
+ * <h2> Thread safety </h2>
  *
  * <p> A SerialBlob is not safe for use by multiple concurrent threads.  If a
  * SerialBlob is to be used by more than one thread then access to the SerialBlob
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialClob.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialClob.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -44,7 +44,7 @@
  * from a <code>SerialClob</code> object or to locate the start of
  * a pattern of characters.
  *
- * <h3> Thread safety </h3>
+ * <h2> Thread safety </h2>
  *
  * <p> A SerialClob is not safe for use by multiple concurrent threads.  If a
  * SerialClob is to be used by more than one thread then access to the SerialClob
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialDatalink.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialDatalink.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -43,7 +43,7 @@
  *      java.net.URL url = rowset.getURL(1);
  * </pre>
  *
- * <h3> Thread safety </h3>
+ * <h2> Thread safety </h2>
  *
  * A SerialDatalink is not safe for use by multiple concurrent threads.  If a
  * SerialDatalink is to be used by more than one thread then access to the
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialJavaObject.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialJavaObject.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -47,7 +47,7 @@
  * Static or transient fields cannot be serialized; an attempt to serialize
  * them will result in a <code>SerialException</code> object being thrown.
  *
- * <h3> Thread safety </h3>
+ * <h2> Thread safety </h2>
  *
  * A SerialJavaObject is not safe for use by multiple concurrent threads.  If a
  * SerialJavaObject is to be used by more than one thread then access to the
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialRef.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialRef.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -37,7 +37,7 @@
  * creating a <code>SerialRef</code> instance from a <code>Ref</code>
  * object and provides methods for getting and setting the <code>Ref</code> object.
  *
- * <h3> Thread safety </h3>
+ * <h2> Thread safety </h2>
  *
  * A SerialRef is not safe for use by multiple concurrent threads.  If a
  * SerialRef is to be used by more than one thread then access to the SerialRef
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialStruct.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/SerialStruct.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -51,7 +51,7 @@
  * the SQL type name of the SQL structured type in the database, and methods
  * for retrieving its attribute values.
  *
- * <h3> Thread safety </h3>
+ * <h2> Thread safety </h2>
  *
  * A SerialStruct is not safe for use by multiple concurrent threads.  If a
  * SerialStruct is to be used by more than one thread then access to the
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/package-info.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/serial/package-info.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -34,7 +34,7 @@
  * a different VM or across layers within an application.<br>
  * </p>
  *
- * <h3>1.0 SerialArray</h3>
+ * <h2>1.0 SerialArray</h2>
  * A serializable mapping in the Java programming language of an SQL ARRAY
  * value. <br>
  * <br>
@@ -43,7 +43,7 @@
  * the SQL name for the base type, and methods for copying all or part of a
  * <code>SerialArray</code> object. <br>
  *
- * <h3>2.0 SerialBlob</h3>
+ * <h2>2.0 SerialBlob</h2>
  * A serializable mapping in the Java programming language of an SQL BLOB
  * value.  <br>
  * <br>
@@ -60,7 +60,7 @@
  * to locate a given pattern of bytes or a <code>Blob</code> object within a <code>SerialBlob</code>
  * object. <br>
  *
- * <h3>3.0 SerialClob</h3>
+ * <h2>3.0 SerialClob</h2>
  * A serializable mapping in the Java programming language of an SQL CLOB
  * value.  <br>
  * <br>
@@ -74,7 +74,7 @@
  * <code>SerialClob</code> object or to locate the start of a pattern of characters.
  * <br>
  *
- * <h3>5.0 SerialDatalink</h3>
+ * <h2>5.0 SerialDatalink</h2>
  * A serializable mapping in the Java programming language of an SQL DATALINK
  * value. A DATALINK value references a file outside of the underlying data source
  * that the originating data source manages. <br>
@@ -85,7 +85,7 @@
  * <br>
  * &nbsp;&nbsp;<code>&nbsp;&nbsp;&nbsp; java.net.URL url = rowset.getURL(1);</code><br>
  *
- * <h3>6.0 SerialJavaObject</h3>
+ * <h2>6.0 SerialJavaObject</h2>
  * A serializable mapping in the Java programming language of an SQL JAVA_OBJECT
  * value. Assuming the Java object instance implements the Serializable interface,
  * this simply wraps the serialization process. <br>
@@ -96,7 +96,7 @@
  * Static or transient fields cannot be serialized and attempting to do so
  * will result in a <code>SerialException</code> being thrown. <br>
  *
- * <h3>7.0 SerialRef</h3>
+ * <h2>7.0 SerialRef</h2>
  * A serializable mapping between the SQL REF type and the Java programming
  * language. <br>
  * <br>
@@ -104,7 +104,7 @@
  * instance from a <code>Ref</code> type and provides methods for getting
  * and setting the <code>Ref</code> object type. <br>
  *
- * <h3>8.0 SerialStruct</h3>
+ * <h2>8.0 SerialStruct</h2>
  * A serializable mapping in the Java programming language of an SQL structured
  * type. Each attribute that is not already serializable is mapped to a serializable
  * form, and if an attribute is itself a structured type, each of its attributes
@@ -119,7 +119,7 @@
  * type name of the SQL structured type in the database, and methods for retrieving
  * its attribute values. <br>
  *
- * <h3>9.0 SQLInputImpl</h3>
+ * <h2>9.0 SQLInputImpl</h2>
  *   An input stream used for custom mapping user-defined types (UDTs). An
  *   <code>SQLInputImpl</code> object is an input stream that contains a stream of
  *   values that are
@@ -142,7 +142,7 @@
  * method <code>SQLData.readSQL</code>,  which in turn calls the <code>SQLInputImpl</code>
  * methods to read the  attributes from the input stream. <br>
  *
- * <h3>10.0 SQLOutputImpl</h3>
+ * <h2>10.0 SQLOutputImpl</h2>
  *   The output stream for writing the attributes of a custom mapped user-defined
  *  type (UDT) back to the database. The driver uses this interface internally,
  *  and its methods are never directly invoked by an application programmer.
@@ -160,7 +160,7 @@
  * <code>SQLOutputImpl</code>
  * output  stream as the representation of an SQL user-defined type.
  *
- * <h3>Custom Mapping</h3>
+ * <h2>Custom Mapping</h2>
  * The JDBC API provides mechanisms for mapping an SQL structured type or DISTINCT
  * type to the Java programming language.  Typically, a structured type is mapped
  * to a class, and its attributes are mapped to fields in the class.
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncFactory.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncFactory.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -59,7 +59,7 @@
  * <code>RowSet</code> implementation can obtain its <code>SyncProvider</code>
  * implementation.
  *
- * <h3>1.0 Overview</h3>
+ * <h2>1.0 Overview</h2>
  * The <code>SyncFactory</code> class provides an internal registry of available
  * synchronization provider implementations (<code>SyncProvider</code> objects).
  * This registry may be queried to determine which
@@ -108,7 +108,7 @@
  * <code>SyncProvider</code> implementations are available, the reference
  * implementation providers are supplied.
  * </ol>
- * <h3>2.0 Registering <code>SyncProvider</code> Implementations</h3>
+ * <h2>2.0 Registering <code>SyncProvider</code> Implementations</h2>
  * <p>
  * Both vendors and developers can register <code>SyncProvider</code>
  * implementations using one of the following mechanisms.
--- a/src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncProvider.java	Wed Mar 13 10:37:30 2019 -0700
+++ b/src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncProvider.java	Wed Mar 13 14:10:18 2019 -0400
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2019, 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
@@ -101,7 +101,7 @@
  * providers for additional guidance on how to implement a new
  * <code>SyncProvider</code> implementation.
  *
- * <h3>2.0 How a <code>RowSet</code> Object Gets Its Provider</h3>
+ * <h2>2.0 How a <code>RowSet</code> Object Gets Its Provider</h2>
  *
  * A disconnected <code>Rowset</code> object may get access to a
  * <code>SyncProvider</code> object in one of the following two ways:
@@ -130,7 +130,7 @@
  * assigned the default provider in the reference implementation, which is
  * <code>com.sun.rowset.providers.RIOptimisticProvider</code>.
  *
- * <h3>3.0 Violations and Synchronization Issues</h3>
+ * <h2>3.0 Violations and Synchronization Issues</h2>
  * If an update between a disconnected <code>RowSet</code> object
  * and a data source violates
  * the original query or the underlying data source constraints, this will
@@ -148,7 +148,7 @@
  * all <code>SyncProvider</code>
  * objects must throw a <code>SyncProviderException</code>.
  *
- * <h3>4.0 Updatable SQL VIEWs</h3>
+ * <h2>4.0 Updatable SQL VIEWs</h2>
  * It is possible for any disconnected or connected <code>RowSet</code> object to be populated
  * from an SQL query that is formulated originally from an SQL <code>VIEW</code>.
  * While in many cases it is possible for an update to be performed to an
@@ -168,7 +168,7 @@
  * The default is for a <code>RowSet</code> object not to be updatable if it was
  * populated with data from an SQL <code>VIEW</code>.
  *
- * <h3>5.0 <code>SyncProvider</code> Constants</h3>
+ * <h2>5.0 <code>SyncProvider</code> Constants</h2>
  * The <code>SyncProvider</code> class provides three sets of constants that
  * are used as return values or parameters for <code>SyncProvider</code> methods.
  * <code>SyncProvider</code> objects may be implemented to perform synchronization