changeset 194:1296dbcc4958

Resolved javadoc many errors and warnings, such as: [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/parser/HeaderLineParser.java:17: error: malformed HTML [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/parser/HeaderLineParser.java:17: error: bad use of '>' [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java:23: error: malformed HTML [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java:23: error: bad use of '>' [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/parser/TupleLineParser.java:37: error: reference not found [javadoc] * @throws ParseException if an error occurs during parsing [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/parser/TupleLineParser.java:16: error: malformed HTML [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/parser/TupleLineParser.java:16: error: bad use of '>' [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLReader.java:40: error: malformed HTML [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLReader.java:40: error: bad use of '>' [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLReader.java:84: warning: no @throws for java.io.UnsupportedEncodingException [javadoc] public BufferedMCLReader(InputStream in, String enc) [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLWriter.java:35: error: malformed HTML [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLWriter.java:35: error: bad use of '>' [javadoc] * @author Fabian Groffen <Fabian.Groffen> [javadoc] ^ [javadoc] /export/scratch1/dinther/javadev/monetdb-java/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLWriter.java:59: warning: no @throws for java.io.UnsupportedEncodingException [javadoc] public BufferedMCLWriter(OutputStream in, String enc) [javadoc] ^
author Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
date Thu, 26 Oct 2017 17:40:05 +0200 (2017-10-26)
parents 982534c83436
children 89c285fc0a49 95b48b249f68
files src/main/java/nl/cwi/monetdb/client/JdbcClient.java src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java src/main/java/nl/cwi/monetdb/jdbc/MonetDriver.java.in src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java src/main/java/nl/cwi/monetdb/jdbc/types/INET.java src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLReader.java src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLWriter.java src/main/java/nl/cwi/monetdb/mcl/net/MapiSocket.java src/main/java/nl/cwi/monetdb/mcl/parser/HeaderLineParser.java src/main/java/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java src/main/java/nl/cwi/monetdb/mcl/parser/TupleLineParser.java src/main/java/nl/cwi/monetdb/merovingian/Control.java src/main/java/nl/cwi/monetdb/merovingian/SabaothDB.java src/main/java/nl/cwi/monetdb/util/Extract.java src/main/java/nl/cwi/monetdb/util/SQLExporter.java src/main/java/nl/cwi/monetdb/util/SQLRestore.java
diffstat 19 files changed, 314 insertions(+), 300 deletions(-) [+]
line wrap: on
line diff
--- a/src/main/java/nl/cwi/monetdb/client/JdbcClient.java
+++ b/src/main/java/nl/cwi/monetdb/client/JdbcClient.java
@@ -534,6 +534,7 @@ public final class JdbcClient {
 	 *
 	 * @param hasFile a boolean indicating whether a file is used as input
 	 * @param doEcho a boolean indicating whether to echo the given input
+	 * @param scolonterm whether a ';' makes this query part complete
 	 * @param user a String representing the username of the current user
 	 * @throws IOException if an IO exception occurs
 	 * @throws SQLException if a database related error occurs
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetConnection.java
@@ -17,6 +17,7 @@ import java.sql.Connection;
 import java.sql.DatabaseMetaData;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
+import java.sql.SQLClientInfoException;
 import java.sql.SQLException;
 import java.sql.SQLFeatureNotSupportedException;
 import java.sql.SQLNonTransientConnectionException;
@@ -521,7 +522,7 @@ public class MonetConnection
 	 * @return the holdability, one of
 	 *         ResultSet.HOLD_CURSORS_OVER_COMMIT or
 	 *         ResultSet.CLOSE_CURSORS_AT_COMMIT
-	 * @see #setHoldability()
+	 * @see #setHoldability(int)
 	 */
 	@Override
 	public int getHoldability() {
@@ -1429,7 +1430,7 @@ public class MonetConnection
 	 * @since 1.6
 	 */
 	@Override
-	public void setClientInfo(String name, String value) throws java.sql.SQLClientInfoException {
+	public void setClientInfo(String name, String value) throws SQLClientInfoException {
 		if (name == null || name.isEmpty()) {
 			addWarning("setClientInfo: missing property name", "01M07");
 			return;
@@ -1484,7 +1485,7 @@ public class MonetConnection
 	 * @since 1.6
 	 */
 	@Override
-	public void setClientInfo(Properties props) throws java.sql.SQLClientInfoException {
+	public void setClientInfo(Properties props) throws SQLClientInfoException {
 		if (props != null) {
 			for (Entry<Object, Object> entry : props.entrySet()) {
 				setClientInfo(entry.getKey().toString(),
@@ -1641,7 +1642,7 @@ public class MonetConnection
 
 
 	/**
-	 * Returns the MonetDB JDBC Connection URL (without user name and password).
+	 * @return the MonetDB JDBC Connection URL (without user name and password).
 	 * Defined as public because it is called from: MonetDatabaseMetaData.java getURL()
 	 */
 	public String getJDBCURL() {
@@ -1652,20 +1653,20 @@ public class MonetConnection
 	}
 
 	/**
-	 * Returns whether the JDBC BLOB type should be mapped to VARBINARY type.
+	 * @return whether the JDBC BLOB type should be mapped to VARBINARY type.
 	 * This allows generic JDBC programs to fetch Blob data via getBytes()
 	 * instead of getBlob() and Blob.getBinaryStream() to reduce overhead.
 	 */
-	boolean mapBlobAsVarBinary() {
+	public boolean mapBlobAsVarBinary() {
 		return treatBlobAsVarBinary;
 	}
 
 	/**
-	 * Returns whether the JDBC CLOB type should be mapped to VARCHAR type.
+	 * @return whether the JDBC CLOB type should be mapped to VARCHAR type.
 	 * This allows generic JDBC programs to fetch Clob data via getString()
 	 * instead of getClob() and Clob.getCharacterStream() to reduce overhead.
 	 */
-	boolean mapClobAsVarChar() {
+	public boolean mapClobAsVarChar() {
 		return treatClobAsVarChar;
 	}
 
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetDatabaseMetaData.java
@@ -540,12 +540,12 @@ public class MonetDatabaseMetaData exten
 	/**
 	 * Get all the "extra" characters that can be used in unquoted
 	 * identifier names (those beyond a-zA-Z0-9 and _)
-	 * MonetDB has no extra characters (verified it for chars: !@#$%^&*()~{}[]?
 	 *
 	 * @return a string containing the extra characters
 	 */
 	@Override
 	public String getExtraNameCharacters() {
+		// MonetDB has no extra characters. Verified it for chars: !@#$%^&*()~{}[]?
 		return "";
 	}
 
@@ -1633,7 +1633,7 @@ public class MonetDatabaseMetaData exten
 	 * Does a data definition statement within a transaction force
 	 * the transaction to commit?  I think this means something like:
 	 *
-	 * <p><pre>
+	 * <pre>
 	 * CREATE TABLE T (A INT);
 	 * INSERT INTO T (A) VALUES (2);
 	 * BEGIN;
@@ -1641,7 +1641,7 @@ public class MonetDatabaseMetaData exten
 	 * CREATE TABLE X (A INT);
 	 * SELECT A FROM T INTO X;
 	 * COMMIT;
-	 * </pre></p>
+	 * </pre>
 	 *
 	 * does the CREATE TABLE call cause a commit?  The answer is no.
 	 *
@@ -1671,21 +1671,21 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <p>Each procedure description has the following columns:
 	 * <ol>
-	 * <li><b>PROCEDURE_CAT</b> String => procedure catalog (may be null)
-	 * <li><b>PROCEDURE_SCHEM</b> String => procedure schema (may be null)
-	 * <li><b>PROCEDURE_NAME</b> String => procedure name
+	 * <li><b>PROCEDURE_CAT</b> String =&gt; procedure catalog (may be null)
+	 * <li><b>PROCEDURE_SCHEM</b> String =&gt; procedure schema (may be null)
+	 * <li><b>PROCEDURE_NAME</b> String =&gt; procedure name
 	 * <li><b>Field4</b> reserved (make it null)
 	 * <li><b>Field5</b> reserved (make it null)
 	 * <li><b>Field6</b> reserved (make it null)
-	 * <li><b>REMARKS</b> String => explanatory comment on the procedure
-	 * <li><b>PROCEDURE_TYPE</b> short => kind of procedure
+	 * <li><b>REMARKS</b> String =&gt; explanatory comment on the procedure
+	 * <li><b>PROCEDURE_TYPE</b> short =&gt; kind of procedure
 	 *	<ul>
 	 *	  <li> procedureResultUnknown - May return a result
 	 *	  <li> procedureNoResult - Does not return a result
 	 *	  <li> procedureReturnsResult - Returns a result
 	 *	</ul>
+	 * <li><b>SPECIFIC_NAME</b> String =&gt; The name which uniquely identifies this procedure within its schema.
 	 * </ol>
-	 * <li><b>SPECIFIC_NAME</b> String => The name which uniquely identifies this procedure within its schema.
 	 *
 	 * @param catalog - a catalog name; must match the catalog name as it is stored in the database;
 	 *	"" retrieves those without a catalog;
@@ -1750,11 +1750,11 @@ public class MonetDatabaseMetaData exten
 	 * <p>Each row in the ResultSet is a parameter description or column
 	 * description with the following fields:
 	 * <ol>
-	 * <li><b>PROCEDURE_CAT</b> String => procedure catalog (may be null)
-	 * <li><b>PROCEDURE_SCHEM</b> String => procedure schema (may be null)
-	 * <li><b>PROCEDURE_NAME</b> String => procedure name
-	 * <li><b>COLUMN_NAME</b> String => column/parameter name
-	 * <li><b>COLUMN_TYPE</b> Short => kind of column/parameter:
+	 * <li><b>PROCEDURE_CAT</b> String =&gt; procedure catalog (may be null)
+	 * <li><b>PROCEDURE_SCHEM</b> String =&gt; procedure schema (may be null)
+	 * <li><b>PROCEDURE_NAME</b> String =&gt; procedure name
+	 * <li><b>COLUMN_NAME</b> String =&gt; column/parameter name
+	 * <li><b>COLUMN_TYPE</b> Short =&gt; kind of column/parameter:
 	 * <ul><li>procedureColumnUnknown - nobody knows
 	 * <li>procedureColumnIn - IN parameter
 	 * <li>procedureColumnInOut - INOUT parameter
@@ -1762,34 +1762,34 @@ public class MonetDatabaseMetaData exten
 	 * <li>procedureColumnReturn - procedure return value
 	 * <li>procedureColumnResult - result column in ResultSet
 	 * </ul>
-	 * <li><b>DATA_TYPE</b> int => SQL type from java.sql.Types
-	 * <li><b>TYPE_NAME</b> String => SQL type name, for a UDT type the type name is fully qualified
-	 * <li><b>PRECISION</b> int => precision
-	 * <li><b>LENGTH</b> int => length in bytes of data
-	 * <li><b>SCALE</b> short => scale - null is returned for data types where SCALE is not applicable.
-	 * <li><b>RADIX</b> short => radix
-	 * <li><b>NULLABLE</b> short => can it contain NULL?
+	 * <li><b>DATA_TYPE</b> int =&gt; SQL type from java.sql.Types
+	 * <li><b>TYPE_NAME</b> String =&gt; SQL type name, for a UDT type the type name is fully qualified
+	 * <li><b>PRECISION</b> int =&gt; precision
+	 * <li><b>LENGTH</b> int =&gt; length in bytes of data
+	 * <li><b>SCALE</b> short =&gt; scale - null is returned for data types where SCALE is not applicable.
+	 * <li><b>RADIX</b> short =&gt; radix
+	 * <li><b>NULLABLE</b> short =&gt; can it contain NULL?
 	 * <ul><li>procedureNoNulls - does not allow NULL values
 	 * <li>procedureNullable - allows NULL values
 	 * <li>procedureNullableUnknown - nullability unknown
 	 * </ul>
-	 * <li><b>REMARKS</b> String => comment describing parameter/column
-	 * <li><b>COLUMN_DEF</b> String => default value for the column, which should be interpreted as a string when the value is enclosed in single quotes (may be null)
+	 * <li><b>REMARKS</b> String =&gt; comment describing parameter/column
+	 * <li><b>COLUMN_DEF</b> String =&gt; default value for the column, which should be interpreted as a string when the value is enclosed in single quotes (may be null)
 	 *         The string NULL (not enclosed in quotes) - if NULL was specified as the default value
 	 *         TRUNCATE (not enclosed in quotes) - if the specified default value cannot be represented without truncation
 	 *         NULL - if a default value was not specified
-	 * <li><b>SQL_DATA_TYPE</b> int => reserved for future use
-	 * <li><b>SQL_DATETIME_SUB</b> int => reserved for future use
-	 * <li><b>CHAR_OCTET_LENGTH</b> int => the maximum length of binary and character based columns. For any other datatype the returned value is a NULL
-	 * <li><b>ORDINAL_POSITION</b> int => the ordinal position, starting from 1, for the input and output parameters for a procedure.
+	 * <li><b>SQL_DATA_TYPE</b> int =&gt; reserved for future use
+	 * <li><b>SQL_DATETIME_SUB</b> int =&gt; reserved for future use
+	 * <li><b>CHAR_OCTET_LENGTH</b> int =&gt; the maximum length of binary and character based columns. For any other datatype the returned value is a NULL
+	 * <li><b>ORDINAL_POSITION</b> int =&gt; the ordinal position, starting from 1, for the input and output parameters for a procedure.
 	 *	A value of 0 is returned if this row describes the procedure's return value. For result set columns, it is the ordinal position of the
 	 *	column in the result set starting from 1. If there are multiple result sets, the column ordinal positions are implementation defined.
-	 * <li><b>IS_NULLABLE</b> String => ISO rules are used to determine the nullability for a column.
+	 * <li><b>IS_NULLABLE</b> String =&gt; ISO rules are used to determine the nullability for a column.
 	 * <ul><li>YES --- if the parameter can include NULLs
 	 * <li>NO --- if the parameter cannot include NULLs
 	 * <li>empty string --- if the nullability for the parameter is unknown
 	 * </ul>
-	 * <li><b>SPECIFIC_NAME</b> String => the name which uniquely identifies this procedure within its schema.
+	 * <li><b>SPECIFIC_NAME</b> String =&gt; the name which uniquely identifies this procedure within its schema.
 	 * </ol>
 	 * @param catalog - a catalog name; must match the catalog name as it is stored in the database;
 	 *	"" retrieves those without a catalog;
@@ -1909,17 +1909,17 @@ public class MonetDatabaseMetaData exten
 	 * <p>Each table description has the following columns:
 	 *
 	 * <ol>
-	 * <li><b>TABLE_CAT</b> String => table catalog (may be null)
-	 * <li><b>TABLE_SCHEM</b> String => table schema (may be null)
-	 * <li><b>TABLE_NAME</b> String => table name
-	 * <li><b>TABLE_TYPE</b> String => table type. Typical types are "TABLE",
+	 * <li><b>TABLE_CAT</b> String =&gt; table catalog (may be null)
+	 * <li><b>TABLE_SCHEM</b> String =&gt; table schema (may be null)
+	 * <li><b>TABLE_NAME</b> String =&gt; table name
+	 * <li><b>TABLE_TYPE</b> String =&gt; table type. Typical types are "TABLE",
 	 * "VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM".
-	 * <li><b>REMARKS</b> String => explanatory comment on the table
-	 * <li><b>TYPE_CAT</b> String => the types catalog (may be null)
-	 * <li><b>TYPE_SCHEM</b> String => the types schema (may be null)
-	 * <li><b>TYPE_NAME</b> String => type name (may be null)
-	 * <li><b>SELF_REFERENCING_COL_NAME</b> String => name of the designated "identifier" column of a typed table (may be null)
-	 * <li><b>REF_GENERATION</b> String => specifies how values in SELF_REFERENCING_COL_NAME are created. Values are "SYSTEM", "USER", "DERIVED". (may be null)
+	 * <li><b>REMARKS</b> String =&gt; explanatory comment on the table
+	 * <li><b>TYPE_CAT</b> String =&gt; the types catalog (may be null)
+	 * <li><b>TYPE_SCHEM</b> String =&gt; the types schema (may be null)
+	 * <li><b>TYPE_NAME</b> String =&gt; type name (may be null)
+	 * <li><b>SELF_REFERENCING_COL_NAME</b> String =&gt; name of the designated "identifier" column of a typed table (may be null)
+	 * <li><b>REF_GENERATION</b> String =&gt; specifies how values in SELF_REFERENCING_COL_NAME are created. Values are "SYSTEM", "USER", "DERIVED". (may be null)
 	 * </ol>
 	 *
 	 * @param catalog - a catalog name; must match the catalog name as it is stored in the database;
@@ -2023,8 +2023,8 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>The schema column is:
 	 *	<OL>
-	 *	<LI><B>TABLE_SCHEM</B> String => schema name
-	 *	<LI><B>TABLE_CATALOG</B> String => catalog name (may be null)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; schema name
+	 *	<LI><B>TABLE_CATALOG</B> String =&gt; catalog name (may be null)
 	 *	</OL>
 	 *
 	 * @param catalog a catalog name; must match the catalog name as it
@@ -2067,7 +2067,7 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>The catalog column is:
 	 *	<OL>
-	 *	<LI><B>TABLE_CAT</B> String => catalog name
+	 *	<LI><B>TABLE_CAT</B> String =&gt; catalog name
 	 *	</OL>
 	 *
 	 *
@@ -2088,7 +2088,7 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>The table type is:
 	 *	<OL>
-	 *	<LI><B>TABLE_TYPE</B> String => table type.  Typical types are "TABLE",
+	 *	<LI><B>TABLE_TYPE</B> String =&gt; table type.  Typical types are "TABLE",
 	 *			"VIEW", "SYSTEM TABLE", "GLOBAL TEMPORARY",
 	 *			"LOCAL TEMPORARY", "ALIAS", "SYNONYM".
 	 *	</OL>
@@ -2126,46 +2126,46 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
-	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
-	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>COLUMN_NAME</B> String => column name
-	 *	<LI><B>DATA_TYPE</B> int => SQL type from java.sql.Types
-	 *	<LI><B>TYPE_NAME</B> String => Data source dependent type name
-	 *	<LI><B>COLUMN_SIZE</B> int => column size.	For char or date
+	 *	<LI><B>TABLE_CAT</B> String =&gt; table catalog (may be null)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; table schema (may be null)
+	 *	<LI><B>TABLE_NAME</B> String =&gt; table name
+	 *	<LI><B>COLUMN_NAME</B> String =&gt; column name
+	 *	<LI><B>DATA_TYPE</B> int =&gt; SQL type from java.sql.Types
+	 *	<LI><B>TYPE_NAME</B> String =&gt; Data source dependent type name
+	 *	<LI><B>COLUMN_SIZE</B> int =&gt; column size.	For char or date
 	 *		types this is the maximum number of characters, for numeric or
 	 *		decimal types this is precision.
 	 *	<LI><B>BUFFER_LENGTH</B> is not used.
-	 *	<LI><B>DECIMAL_DIGITS</B> int => the number of fractional digits
-	 *	<LI><B>NUM_PREC_RADIX</B> int => Radix (typically either 10 or 2)
-	 *	<LI><B>NULLABLE</B> int => is NULL allowed?
+	 *	<LI><B>DECIMAL_DIGITS</B> int =&gt; the number of fractional digits
+	 *	<LI><B>NUM_PREC_RADIX</B> int =&gt; Radix (typically either 10 or 2)
+	 *	<LI><B>NULLABLE</B> int =&gt; is NULL allowed?
 	 *		<UL>
 	 *		<LI> columnNoNulls - might not allow NULL values
 	 *		<LI> columnNullable - definitely allows NULL values
 	 *		<LI> columnNullableUnknown - nullability unknown
 	 *		</UL>
-	 *	<LI><B>REMARKS</B> String => comment describing column (may be null)
-	 *	<LI><B>COLUMN_DEF</B> String => default value (may be null)
-	 *	<LI><B>SQL_DATA_TYPE</B> int => unused
-	 *	<LI><B>SQL_DATETIME_SUB</B> int => unused
-	 *	<LI><B>CHAR_OCTET_LENGTH</B> int => for char types the
+	 *	<LI><B>REMARKS</B> String =&gt; comment describing column (may be null)
+	 *	<LI><B>COLUMN_DEF</B> String =&gt; default value (may be null)
+	 *	<LI><B>SQL_DATA_TYPE</B> int =&gt; unused
+	 *	<LI><B>SQL_DATETIME_SUB</B> int =&gt; unused
+	 *	<LI><B>CHAR_OCTET_LENGTH</B> int =&gt; for char types the
 	 *		 maximum number of bytes in the column
-	 *	<LI><B>ORDINAL_POSITION</B> int => index of column in table
+	 *	<LI><B>ORDINAL_POSITION</B> int =&gt; index of column in table
 	 *		(starting at 1)
-	 *	<LI><B>IS_NULLABLE</B> String => "NO" means column definitely
+	 *	<LI><B>IS_NULLABLE</B> String =&gt; "NO" means column definitely
 	 *		does not allow NULL values; "YES" means the column might
 	 *		allow NULL values.	An empty string means nobody knows.
-	 *	<LI><B>SCOPE_CATALOG</B> String => catalog of table that is the scope of a reference attribute (null if DATA_TYPE isn't REF)
-	 *	<LI><B>SCOPE_SCHEMA</B> String => schema of table that is the scope of a reference attribute (null if the DATA_TYPE isn't REF)
-	 *	<LI><B>SCOPE_TABLE</B> String => table name that this the scope of a reference attribute (null if the DATA_TYPE isn't REF)
-	 *	<LI><B>SOURCE_DATA_TYPE</B> short => source type of a distinct type or user-generated Ref type, SQL type from java.sql.Types (null if DATA_TYPE isn't DISTINCT or user-generated REF)
-	 *	<LI><B>IS_AUTOINCREMENT</B> String => Indicates whether this column is auto incremented
+	 *	<LI><B>SCOPE_CATALOG</B> String =&gt; catalog of table that is the scope of a reference attribute (null if DATA_TYPE isn't REF)
+	 *	<LI><B>SCOPE_SCHEMA</B> String =&gt; schema of table that is the scope of a reference attribute (null if the DATA_TYPE isn't REF)
+	 *	<LI><B>SCOPE_TABLE</B> String =&gt; table name that this the scope of a reference attribute (null if the DATA_TYPE isn't REF)
+	 *	<LI><B>SOURCE_DATA_TYPE</B> short =&gt; source type of a distinct type or user-generated Ref type, SQL type from java.sql.Types (null if DATA_TYPE isn't DISTINCT or user-generated REF)
+	 *	<LI><B>IS_AUTOINCREMENT</B> String =&gt; Indicates whether this column is auto incremented
 	 *		<UL>
 	 *		<LI> YES --- if the column is auto incremented
 	 *		<LI> NO --- if the column is not auto incremented
 	 *		<LI> empty string --- if it cannot be determined whether the column is auto incremented
 	 *		</UL>
-	 *	<LI><B>IS_GENERATEDCOLUMN</B> String => Indicates whether this is a generated column
+	 *	<LI><B>IS_GENERATEDCOLUMN</B> String =&gt; Indicates whether this is a generated column
 	 *		<UL>
 	 *		<LI> YES --- if this a generated column
 	 *		<LI> NO --- if this not a generated column
@@ -2257,15 +2257,15 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each privilige description has the following columns:
 	 *	<OL>
-	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
-	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
-	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>COLUMN_NAME</B> String => column name
-	 *	<LI><B>GRANTOR</B> => grantor of access (may be null)
-	 *	<LI><B>GRANTEE</B> String => grantee of access
-	 *	<LI><B>PRIVILEGE</B> String => name of access (SELECT,
+	 *	<LI><B>TABLE_CAT</B> String =&gt; table catalog (may be null)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; table schema (may be null)
+	 *	<LI><B>TABLE_NAME</B> String =&gt; table name
+	 *	<LI><B>COLUMN_NAME</B> String =&gt; column name
+	 *	<LI><B>GRANTOR</B> =&gt; grantor of access (may be null)
+	 *	<LI><B>GRANTEE</B> String =&gt; grantee of access
+	 *	<LI><B>PRIVILEGE</B> String =&gt; name of access (SELECT,
 	 *		INSERT, UPDATE, REFRENCES, ...)
-	 *	<LI><B>IS_GRANTABLE</B> String => "YES" if grantee is permitted
+	 *	<LI><B>IS_GRANTABLE</B> String =&gt; "YES" if grantee is permitted
 	 *		to grant to others; "NO" if not; null if unknown
 	 *	</OL>
 	 *
@@ -2348,14 +2348,14 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each privilege description has the following columns:
 	 *	<OL>
-	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
-	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
-	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>GRANTOR</B> => grantor of access (may be null)
-	 *	<LI><B>GRANTEE</B> String => grantee of access
-	 *	<LI><B>PRIVILEGE</B> String => name of access (SELECT,
+	 *	<LI><B>TABLE_CAT</B> String =&gt; table catalog (may be null)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; table schema (may be null)
+	 *	<LI><B>TABLE_NAME</B> String =&gt; table name
+	 *	<LI><B>GRANTOR</B> =&gt; grantor of access (may be null)
+	 *	<LI><B>GRANTEE</B> String =&gt; grantee of access
+	 *	<LI><B>PRIVILEGE</B> String =&gt; name of access (SELECT,
 	 *		INSERT, UPDATE, REFRENCES, ...)
-	 *	<LI><B>IS_GRANTABLE</B> String => "YES" if grantee is permitted
+	 *	<LI><B>IS_GRANTABLE</B> String =&gt; "YES" if grantee is permitted
 	 *		to grant to others; "NO" if not; null if unknown
 	 *	</OL>
 	 *
@@ -2426,19 +2426,19 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>SCOPE</B> short => actual scope of result
+	 *	<LI><B>SCOPE</B> short =&gt; actual scope of result
 	 *		<UL>
 	 *		<LI> bestRowTemporary - very temporary, while using row
 	 *		<LI> bestRowTransaction - valid for remainder of current transaction
 	 *		<LI> bestRowSession - valid for remainder of current session
 	 *		</UL>
-	 *	<LI><B>COLUMN_NAME</B> String => column name
-	 *	<LI><B>DATA_TYPE</B> int => SQL data type from java.sql.Types
-	 *	<LI><B>TYPE_NAME</B> String => Data source dependent type name
-	 *	<LI><B>COLUMN_SIZE</B> int => precision
-	 *	<LI><B>BUFFER_LENGTH</B> int => not used
-	 *	<LI><B>DECIMAL_DIGITS</B> short  => scale
-	 *	<LI><B>PSEUDO_COLUMN</B> short => is this a pseudo column
+	 *	<LI><B>COLUMN_NAME</B> String =&gt; column name
+	 *	<LI><B>DATA_TYPE</B> int =&gt; SQL data type from java.sql.Types
+	 *	<LI><B>TYPE_NAME</B> String =&gt; Data source dependent type name
+	 *	<LI><B>COLUMN_SIZE</B> int =&gt; precision
+	 *	<LI><B>BUFFER_LENGTH</B> int =&gt; not used
+	 *	<LI><B>DECIMAL_DIGITS</B> short  =&gt; scale
+	 *	<LI><B>PSEUDO_COLUMN</B> short =&gt; is this a pseudo column
 	 *		like an Oracle ROWID
 	 *		<UL>
 	 *		<LI> bestRowUnknown - may or may not be pseudo column
@@ -2514,14 +2514,14 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>SCOPE</B> short => is not used
-	 *	<LI><B>COLUMN_NAME</B> String => column name
-	 *	<LI><B>DATA_TYPE</B> int => SQL data type from java.sql.Types
-	 *	<LI><B>TYPE_NAME</B> String => Data source dependent type name
-	 *	<LI><B>COLUMN_SIZE</B> int => precision
-	 *	<LI><B>BUFFER_LENGTH</B> int => length of column value in bytes
-	 *	<LI><B>DECIMAL_DIGITS</B> short => scale
-	 *	<LI><B>PSEUDO_COLUMN</B> short => is this a pseudo column like an Oracle ROWID
+	 *	<LI><B>SCOPE</B> short =&gt; is not used
+	 *	<LI><B>COLUMN_NAME</B> String =&gt; column name
+	 *	<LI><B>DATA_TYPE</B> int =&gt; SQL data type from java.sql.Types
+	 *	<LI><B>TYPE_NAME</B> String =&gt; Data source dependent type name
+	 *	<LI><B>COLUMN_SIZE</B> int =&gt; precision
+	 *	<LI><B>BUFFER_LENGTH</B> int =&gt; length of column value in bytes
+	 *	<LI><B>DECIMAL_DIGITS</B> short =&gt; scale
+	 *	<LI><B>PSEUDO_COLUMN</B> short =&gt; is this a pseudo column like an Oracle ROWID
 	 *		<UL>
 	 *		<LI> versionColumnUnknown - may or may not be pseudo column
 	 *		<LI> versionColumnNotPseudo - is NOT a pseudo column
@@ -2563,12 +2563,12 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
-	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
-	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>COLUMN_NAME</B> String => column name
-	 *	<LI><B>KEY_SEQ</B> short => sequence number within primary key
-	 *	<LI><B>PK_NAME</B> String => primary key name (may be null)
+	 *	<LI><B>TABLE_CAT</B> String =&gt; table catalog (may be null)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; table schema (may be null)
+	 *	<LI><B>TABLE_NAME</B> String =&gt; table name
+	 *	<LI><B>COLUMN_NAME</B> String =&gt; column name
+	 *	<LI><B>KEY_SEQ</B> short =&gt; sequence number within primary key
+	 *	<LI><B>PK_NAME</B> String =&gt; primary key name (may be null)
 	 *	</OL>
 	 *
 	 * @param catalog a catalog name; "" retrieves those without a catalog
@@ -2660,21 +2660,21 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each primary key column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>PKTABLE_CAT</B> String => primary key table catalog
+	 *	<LI><B>PKTABLE_CAT</B> String =&gt; primary key table catalog
 	 *		being imported (may be null)
-	 *	<LI><B>PKTABLE_SCHEM</B> String => primary key table schema
+	 *	<LI><B>PKTABLE_SCHEM</B> String =&gt; primary key table schema
 	 *		being imported (may be null)
-	 *	<LI><B>PKTABLE_NAME</B> String => primary key table name
+	 *	<LI><B>PKTABLE_NAME</B> String =&gt; primary key table name
 	 *		being imported
-	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key column name
+	 *	<LI><B>PKCOLUMN_NAME</B> String =&gt; primary key column name
 	 *		being imported
-	 *	<LI><B>FKTABLE_CAT</B> String => foreign key table catalog (may be null)
-	 *	<LI><B>FKTABLE_SCHEM</B> String => foreign key table schema (may be null)
-	 *	<LI><B>FKTABLE_NAME</B> String => foreign key table name
-	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key column name
-	 *	<LI><B>KEY_SEQ</B> short => sequence number within foreign key
+	 *	<LI><B>FKTABLE_CAT</B> String =&gt; foreign key table catalog (may be null)
+	 *	<LI><B>FKTABLE_SCHEM</B> String =&gt; foreign key table schema (may be null)
+	 *	<LI><B>FKTABLE_NAME</B> String =&gt; foreign key table name
+	 *	<LI><B>FKCOLUMN_NAME</B> String =&gt; foreign key column name
+	 *	<LI><B>KEY_SEQ</B> short =&gt; sequence number within foreign key
 	 *		(a value of 1 represents the first column of the foreign key, a value of 2 would represent the second column within the foreign key).
-	 *	<LI><B>UPDATE_RULE</B> short => What happens to
+	 *	<LI><B>UPDATE_RULE</B> short =&gt; What happens to
 	 *		 foreign key when primary is updated:
 	 *		<UL>
 	 *		<LI> importedKeyNoAction - do not allow update of primary key if it has been imported
@@ -2685,7 +2685,7 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> importedKeySetNull - change imported key to NULL if
 	 *				 its primary key has been updated
 	 *		</UL>
-	 *	<LI><B>DELETE_RULE</B> short => What happens to
+	 *	<LI><B>DELETE_RULE</B> short =&gt; What happens to
 	 *		the foreign key when primary is deleted.
 	 *		<UL>
 	 *		<LI> importedKeyNoAction - do not allow delete of primary key if it has been imported
@@ -2695,9 +2695,9 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> importedKeySetNull - change imported key to NULL if
 	 *				 its primary key has been deleted
 	 *		</UL>
-	 *	<LI><B>FK_NAME</B> String => foreign key name (may be null)
-	 *	<LI><B>PK_NAME</B> String => primary key name (may be null)
-	 *	<LI><B>DEFERRABILITY</B> short => can the evaluation of foreign key constraints be deferred until commit
+	 *	<LI><B>FK_NAME</B> String =&gt; foreign key name (may be null)
+	 *	<LI><B>PK_NAME</B> String =&gt; primary key name (may be null)
+	 *	<LI><B>DEFERRABILITY</B> short =&gt; can the evaluation of foreign key constraints be deferred until commit
 	 *		<UL>
 	 *		<LI> importedKeyInitiallyDeferred - see SQL92 for definition
 	 *		<LI> importedKeyInitiallyImmediate - see SQL92 for definition
@@ -2743,21 +2743,21 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each foreign key column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>PKTABLE_CAT</B> String => primary key table catalog (may be null)
-	 *	<LI><B>PKTABLE_SCHEM</B> String => primary key table schema (may be null)
-	 *	<LI><B>PKTABLE_NAME</B> String => primary key table name
-	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key column name
-	 *	<LI><B>FKTABLE_CAT</B> String => foreign key table catalog (may be null)
+	 *	<LI><B>PKTABLE_CAT</B> String =&gt; primary key table catalog (may be null)
+	 *	<LI><B>PKTABLE_SCHEM</B> String =&gt; primary key table schema (may be null)
+	 *	<LI><B>PKTABLE_NAME</B> String =&gt; primary key table name
+	 *	<LI><B>PKCOLUMN_NAME</B> String =&gt; primary key column name
+	 *	<LI><B>FKTABLE_CAT</B> String =&gt; foreign key table catalog (may be null)
 	 *		being exported (may be null)
-	 *	<LI><B>FKTABLE_SCHEM</B> String => foreign key table schema (may be null)
+	 *	<LI><B>FKTABLE_SCHEM</B> String =&gt; foreign key table schema (may be null)
 	 *		being exported (may be null)
-	 *	<LI><B>FKTABLE_NAME</B> String => foreign key table name
+	 *	<LI><B>FKTABLE_NAME</B> String =&gt; foreign key table name
 	 *		being exported
-	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key column name
+	 *	<LI><B>FKCOLUMN_NAME</B> String =&gt; foreign key column name
 	 *		being exported
-	 *	<LI><B>KEY_SEQ</B> short => sequence number within foreign key
+	 *	<LI><B>KEY_SEQ</B> short =&gt; sequence number within foreign key
 	 *		(a value of 1 represents the first column of the foreign key, a value of 2 would represent the second column within the foreign key).
-	 *	<LI><B>UPDATE_RULE</B> short => What happens to
+	 *	<LI><B>UPDATE_RULE</B> short =&gt; What happens to
 	 *		 foreign key when primary is updated:
 	 *		<UL>
 	 *		<LI> importedKeyNoAction - do not allow update of primary key if it has been imported
@@ -2768,7 +2768,7 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> importedKeySetNull - change imported key to NULL if
 	 *				 its primary key has been updated
 	 *		</UL>
-	 *	<LI><B>DELETE_RULE</B> short => What happens to
+	 *	<LI><B>DELETE_RULE</B> short =&gt; What happens to
 	 *		the foreign key when primary is deleted.
 	 *		<UL>
 	 *		<LI> importedKeyNoAction - do not allow delete of primary key if it has been imported
@@ -2778,9 +2778,9 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> importedKeySetNull - change imported key to NULL if
 	 *				 its primary key has been deleted
 	 *		</UL>
-	 *	<LI><B>FK_NAME</B> String => foreign key identifier (may be null)
-	 *	<LI><B>PK_NAME</B> String => primary key identifier (may be null)
-	 *	<LI><B>DEFERRABILITY</B> short => can the evaluation of foreign key constraints be deferred until commit
+	 *	<LI><B>FK_NAME</B> String =&gt; foreign key identifier (may be null)
+	 *	<LI><B>PK_NAME</B> String =&gt; primary key identifier (may be null)
+	 *	<LI><B>DEFERRABILITY</B> short =&gt; can the evaluation of foreign key constraints be deferred until commit
 	 *		<UL>
 	 *		<LI> importedKeyInitiallyDeferred - see SQL92 for definition
 	 *		<LI> importedKeyInitiallyImmediate - see SQL92 for definition
@@ -2829,21 +2829,21 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each foreign key column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>PKTABLE_CAT</B> String => primary key table catalog (may be null)
-	 *	<LI><B>PKTABLE_SCHEM</B> String => primary key table schema (may be null)
-	 *	<LI><B>PKTABLE_NAME</B> String => primary key table name
-	 *	<LI><B>PKCOLUMN_NAME</B> String => primary key column name
-	 *	<LI><B>FKTABLE_CAT</B> String => foreign key table catalog (may be null)
+	 *	<LI><B>PKTABLE_CAT</B> String =&gt; primary key table catalog (may be null)
+	 *	<LI><B>PKTABLE_SCHEM</B> String =&gt; primary key table schema (may be null)
+	 *	<LI><B>PKTABLE_NAME</B> String =&gt; primary key table name
+	 *	<LI><B>PKCOLUMN_NAME</B> String =&gt; primary key column name
+	 *	<LI><B>FKTABLE_CAT</B> String =&gt; foreign key table catalog (may be null)
 	 *		being exported (may be null)
-	 *	<LI><B>FKTABLE_SCHEM</B> String => foreign key table schema (may be null)
+	 *	<LI><B>FKTABLE_SCHEM</B> String =&gt; foreign key table schema (may be null)
 	 *		being exported (may be null)
-	 *	<LI><B>FKTABLE_NAME</B> String => foreign key table name
+	 *	<LI><B>FKTABLE_NAME</B> String =&gt; foreign key table name
 	 *		being exported
-	 *	<LI><B>FKCOLUMN_NAME</B> String => foreign key column name
+	 *	<LI><B>FKCOLUMN_NAME</B> String =&gt; foreign key column name
 	 *		being exported
-	 *	<LI><B>KEY_SEQ</B> short => sequence number within foreign key
+	 *	<LI><B>KEY_SEQ</B> short =&gt; sequence number within foreign key
 	 *		(a value of 1 represents the first column of the foreign key, a value of 2 would represent the second column within the foreign key).
-	 *	<LI><B>UPDATE_RULE</B> short => What happens to
+	 *	<LI><B>UPDATE_RULE</B> short =&gt; What happens to
 	 *		 foreign key when primary is updated:
 	 *		<UL>
 	 *		<LI> importedKeyNoAction - do not allow update of primary key if it has been imported
@@ -2854,7 +2854,7 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> importedKeySetNull - change imported key to NULL if
 	 *				 its primary key has been updated
 	 *		</UL>
-	 *	<LI><B>DELETE_RULE</B> short => What happens to
+	 *	<LI><B>DELETE_RULE</B> short =&gt; What happens to
 	 *		the foreign key when primary is deleted.
 	 *		<UL>
 	 *		<LI> importedKeyNoAction - do not allow delete of primary key if it has been imported
@@ -2864,9 +2864,9 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> importedKeySetNull - change imported key to NULL if
 	 *				 its primary key has been deleted
 	 *		</UL>
-	 *	<LI><B>FK_NAME</B> String => foreign key identifier (may be null)
-	 *	<LI><B>PK_NAME</B> String => primary key identifier (may be null)
-	 *	<LI><B>DEFERRABILITY</B> short => can the evaluation of foreign key constraints be deferred until commit
+	 *	<LI><B>FK_NAME</B> String =&gt; foreign key identifier (may be null)
+	 *	<LI><B>PK_NAME</B> String =&gt; primary key identifier (may be null)
+	 *	<LI><B>DEFERRABILITY</B> short =&gt; can the evaluation of foreign key constraints be deferred until commit
 	 *		<UL>
 	 *		<LI> importedKeyInitiallyDeferred - see SQL92 for definition
 	 *		<LI> importedKeyInitiallyImmediate - see SQL92 for definition
@@ -2940,42 +2940,42 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each type description has the following columns:
 	 *	<OL>
-	 *	<LI><B>TYPE_NAME</B> String => Type name
-	 *	<LI><B>DATA_TYPE</B> int => SQL data type from java.sql.Types
-	 *	<LI><B>PRECISION</B> int => maximum precision
-	 *	<LI><B>LITERAL_PREFIX</B> String => prefix used to quote a literal (may be null)
-	 *	<LI><B>LITERAL_SUFFIX</B> String => suffix used to quote a literal (may be null)
-	 *	<LI><B>CREATE_PARAMS</B> String => parameters used in creating
+	 *	<LI><B>TYPE_NAME</B> String =&gt; Type name
+	 *	<LI><B>DATA_TYPE</B> int =&gt; SQL data type from java.sql.Types
+	 *	<LI><B>PRECISION</B> int =&gt; maximum precision
+	 *	<LI><B>LITERAL_PREFIX</B> String =&gt; prefix used to quote a literal (may be null)
+	 *	<LI><B>LITERAL_SUFFIX</B> String =&gt; suffix used to quote a literal (may be null)
+	 *	<LI><B>CREATE_PARAMS</B> String =&gt; parameters used in creating
 	 *		the type (may be null)
-	 *	<LI><B>NULLABLE</B> short => can you use NULL for this type?
+	 *	<LI><B>NULLABLE</B> short =&gt; can you use NULL for this type?
 	 *		<UL>
 	 *		<LI> typeNoNulls - does not allow NULL values
 	 *		<LI> typeNullable - allows NULL values
 	 *		<LI> typeNullableUnknown - nullability unknown
 	 *		</UL>
-	 *	<LI><B>CASE_SENSITIVE</B> boolean=> is it case sensitive?
-	 *	<LI><B>SEARCHABLE</B> short => can you use "WHERE" based on this type:
+	 *	<LI><B>CASE_SENSITIVE</B> boolean=&gt; is it case sensitive?
+	 *	<LI><B>SEARCHABLE</B> short =&gt; can you use "WHERE" based on this type:
 	 *		<UL>
 	 *		<LI> typePredNone - No support
 	 *		<LI> typePredChar - Only supported with WHERE .. LIKE
 	 *		<LI> typePredBasic - Supported except for WHERE .. LIKE
 	 *		<LI> typeSearchable - Supported for all WHERE ..
 	 *		</UL>
-	 *	<LI><B>UNSIGNED_ATTRIBUTE</B> boolean => is it unsigned?
-	 *	<LI><B>FIXED_PREC_SCALE</B> boolean => can it be a money value?
-	 *	<LI><B>AUTO_INCREMENT</B> boolean => can it be used for an
+	 *	<LI><B>UNSIGNED_ATTRIBUTE</B> boolean =&gt; is it unsigned?
+	 *	<LI><B>FIXED_PREC_SCALE</B> boolean =&gt; can it be a money value?
+	 *	<LI><B>AUTO_INCREMENT</B> boolean =&gt; can it be used for an
 	 *		auto-increment value?
-	 *	<LI><B>LOCAL_TYPE_NAME</B> String => localized version of type name
+	 *	<LI><B>LOCAL_TYPE_NAME</B> String =&gt; localized version of type name
 	 *		(may be null)
-	 *	<LI><B>MINIMUM_SCALE</B> short => minimum scale supported
-	 *	<LI><B>MAXIMUM_SCALE</B> short => maximum scale supported
-	 *	<LI><B>SQL_DATA_TYPE</B> int => unused
-	 *	<LI><B>SQL_DATETIME_SUB</B> int => unused
-	 *	<LI><B>NUM_PREC_RADIX</B> int => usually 2 or 10
+	 *	<LI><B>MINIMUM_SCALE</B> short =&gt; minimum scale supported
+	 *	<LI><B>MAXIMUM_SCALE</B> short =&gt; maximum scale supported
+	 *	<LI><B>SQL_DATA_TYPE</B> int =&gt; unused
+	 *	<LI><B>SQL_DATETIME_SUB</B> int =&gt; unused
+	 *	<LI><B>NUM_PREC_RADIX</B> int =&gt; usually 2 or 10
 	 *	</OL>
 	 *
 	 * @return ResultSet each row is a SQL type description
-	 * @throws Exception if the developer made a Boo-Boo
+	 * @throws SQLException if a database error occurs
 	 */
 	@Override
 	public ResultSet getTypeInfo() throws SQLException {
@@ -3020,16 +3020,16 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each index column description has the following columns:
 	 *	<OL>
-	 *	<LI><B>TABLE_CAT</B> String => table catalog (may be null)
-	 *	<LI><B>TABLE_SCHEM</B> String => table schema (may be null)
-	 *	<LI><B>TABLE_NAME</B> String => table name
-	 *	<LI><B>NON_UNIQUE</B> boolean => Can index values be non-unique?
+	 *	<LI><B>TABLE_CAT</B> String =&gt; table catalog (may be null)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; table schema (may be null)
+	 *	<LI><B>TABLE_NAME</B> String =&gt; table name
+	 *	<LI><B>NON_UNIQUE</B> boolean =&gt; Can index values be non-unique?
 	 *		false when TYPE is tableIndexStatistic
-	 *	<LI><B>INDEX_QUALIFIER</B> String => index catalog (may be null);
+	 *	<LI><B>INDEX_QUALIFIER</B> String =&gt; index catalog (may be null);
 	 *		null when TYPE is tableIndexStatistic
-	 *	<LI><B>INDEX_NAME</B> String => index name; null when TYPE is
+	 *	<LI><B>INDEX_NAME</B> String =&gt; index name; null when TYPE is
 	 *		tableIndexStatistic
-	 *	<LI><B>TYPE</B> short => index type:
+	 *	<LI><B>TYPE</B> short =&gt; index type:
 	 *		<UL>
 	 *		<LI> tableIndexStatistic - this identifies table statistics that are
 	 *			 returned in conjuction with a table's index descriptions
@@ -3037,20 +3037,20 @@ public class MonetDatabaseMetaData exten
 	 *		<LI> tableIndexHashed - this is a hashed index
 	 *		<LI> tableIndexOther - this is some other style of index
 	 *		</UL>
-	 *	<LI><B>ORDINAL_POSITION</B> short => column sequence number
+	 *	<LI><B>ORDINAL_POSITION</B> short =&gt; column sequence number
 	 *		within index; zero when TYPE is tableIndexStatistic
-	 *	<LI><B>COLUMN_NAME</B> String => column name; null when TYPE is
+	 *	<LI><B>COLUMN_NAME</B> String =&gt; column name; null when TYPE is
 	 *		tableIndexStatistic
-	 *	<LI><B>ASC_OR_DESC</B> String => column sort sequence, "A" => ascending
-	 *		"D" => descending, may be null if sort sequence is not supported;
+	 *	<LI><B>ASC_OR_DESC</B> String =&gt; column sort sequence, "A" =&gt; ascending
+	 *		"D" =&gt; descending, may be null if sort sequence is not supported;
 	 *		null when TYPE is tableIndexStatistic
-	 *	<LI><B>CARDINALITY</B> int => When TYPE is tableIndexStatisic then
+	 *	<LI><B>CARDINALITY</B> int =&gt; When TYPE is tableIndexStatisic then
 	 *		this is the number of rows in the table; otherwise it is the
 	 *		number of unique values in the index.
-	 *	<LI><B>PAGES</B> int => When TYPE is  tableIndexStatisic then
+	 *	<LI><B>PAGES</B> int =&gt; When TYPE is  tableIndexStatisic then
 	 *		this is the number of pages used for the table, otherwise it
 	 *		is the number of pages used for the current index.
-	 *	<LI><B>FILTER_CONDITION</B> String => Filter condition, if any.
+	 *	<LI><B>FILTER_CONDITION</B> String =&gt; Filter condition, if any.
 	 *		(may be null)
 	 *	</OL>
 	 *
@@ -3248,17 +3248,17 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * Each type description has the following columns:
 	 *
-	 * 1 TYPE_CAT String => the type's catalog (may be null)
-	 * 2 TYPE_SCHEM String => type's schema (may be null)
-	 * 3 TYPE_NAME String => type name
-	 * 4 CLASS_NAME String => Java class name
-	 * 5 DATA_TYPE int => type value defined in java.sql.Types. One of JAVA_OBJECT, STRUCT, or DISTINCT
-	 * 6 REMARKS String => explanatory comment on the type
-	 * 7 BASE_TYPE short => type code of the source type of a DISTINCT type or the type that implements the
+	 * 1 TYPE_CAT String =&gt; the type's catalog (may be null)
+	 * 2 TYPE_SCHEM String =&gt; type's schema (may be null)
+	 * 3 TYPE_NAME String =&gt; type name
+	 * 4 CLASS_NAME String =&gt; Java class name
+	 * 5 DATA_TYPE int =&gt; type value defined in java.sql.Types. One of JAVA_OBJECT, STRUCT, or DISTINCT
+	 * 6 REMARKS String =&gt; explanatory comment on the type
+	 * 7 BASE_TYPE short =&gt; type code of the source type of a DISTINCT type or the type that implements the
 	 *   user-generated reference type of the SELF_REFERENCING_COLUMN of a structured type as defined
 	 *   in java.sql.Types (null if DATA_TYPE is not DISTINCT or not STRUCT with REFERENCE_GENERATION = USER_DEFINED)
 	 *
-	 * @throws SQLException
+	 * @throws SQLException - if a database access error occurs
 	 */
 	@Override
 	public ResultSet getUDTs(
@@ -3403,14 +3403,14 @@ public class MonetDatabaseMetaData exten
 	 * describes the designated UDT and a direct supertype. A row has the following
 	 * columns:
 	 *	<OL>
-	 *	<LI><B>TYPE_CAT</B> String => the UDT's catalog (may be <code>null</code>)
-	 *	<LI><B>TYPE_SCHEM</B> String => UDT's schema (may be <code>null</code>)
-	 *	<LI><B>TYPE_NAME</B> String => type name of the UDT
-	 *	<LI><B>SUPERTYPE_CAT</B> String => the direct super type's catalog
+	 *	<LI><B>TYPE_CAT</B> String =&gt; the UDT's catalog (may be <code>null</code>)
+	 *	<LI><B>TYPE_SCHEM</B> String =&gt; UDT's schema (may be <code>null</code>)
+	 *	<LI><B>TYPE_NAME</B> String =&gt; type name of the UDT
+	 *	<LI><B>SUPERTYPE_CAT</B> String =&gt; the direct super type's catalog
 	 *							 (may be <code>null</code>)
-	 *	<LI><B>SUPERTYPE_SCHEM</B> String => the direct super type's schema
+	 *	<LI><B>SUPERTYPE_SCHEM</B> String =&gt; the direct super type's schema
 	 *							   (may be <code>null</code>)
-	 *	<LI><B>SUPERTYPE_NAME</B> String => the direct super type's name
+	 *	<LI><B>SUPERTYPE_NAME</B> String =&gt; the direct super type's name
 	 *	</OL>
 	 *
 	 * <P><B>Note:</B> If the driver does not support type hierarchies, an
@@ -3455,10 +3455,10 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>Each type description has the following columns:
 	 *	<OL>
-	 *	<LI><B>TABLE_CAT</B> String => the type's catalog (may be <code>null</code>)
-	 *	<LI><B>TABLE_SCHEM</B> String => type's schema (may be <code>null</code>)
-	 *	<LI><B>TABLE_NAME</B> String => type name
-	 *	<LI><B>SUPERTABLE_NAME</B> String => the direct super type's name
+	 *	<LI><B>TABLE_CAT</B> String =&gt; the type's catalog (may be <code>null</code>)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; type's schema (may be <code>null</code>)
+	 *	<LI><B>TABLE_NAME</B> String =&gt; type name
+	 *	<LI><B>SUPERTABLE_NAME</B> String =&gt; the direct super type's name
 	 *	</OL>
 	 *
 	 * <P><B>Note:</B> If the driver does not support type hierarchies, an
@@ -3501,43 +3501,43 @@ public class MonetDatabaseMetaData exten
 	 * The <code>ResultSet</code> object that is returned has the following
 	 * columns:
 	 * <OL>
-	 *	<LI><B>TYPE_CAT</B> String => type catalog (may be <code>null</code>)
-	 *	<LI><B>TYPE_SCHEM</B> String => type schema (may be <code>null</code>)
-	 *	<LI><B>TYPE_NAME</B> String => type name
-	 *	<LI><B>ATTR_NAME</B> String => attribute name
-	 *	<LI><B>DATA_TYPE</B> int => attribute type SQL type from java.sql.Types
-	 *	<LI><B>ATTR_TYPE_NAME</B> String => Data source dependent type name.
+	 *	<LI><B>TYPE_CAT</B> String =&gt; type catalog (may be <code>null</code>)
+	 *	<LI><B>TYPE_SCHEM</B> String =&gt; type schema (may be <code>null</code>)
+	 *	<LI><B>TYPE_NAME</B> String =&gt; type name
+	 *	<LI><B>ATTR_NAME</B> String =&gt; attribute name
+	 *	<LI><B>DATA_TYPE</B> int =&gt; attribute type SQL type from java.sql.Types
+	 *	<LI><B>ATTR_TYPE_NAME</B> String =&gt; Data source dependent type name.
 	 *	For a UDT, the type name is fully qualified. For a REF, the type name is
 	 *	fully qualified and represents the target type of the reference type.
-	 *	<LI><B>ATTR_SIZE</B> int => column size.  For char or date
+	 *	<LI><B>ATTR_SIZE</B> int =&gt; column size.  For char or date
 	 *		types this is the maximum number of characters; for numeric or
 	 *		decimal types this is precision.
-	 *	<LI><B>DECIMAL_DIGITS</B> int => the number of fractional digits
-	 *	<LI><B>NUM_PREC_RADIX</B> int => Radix (typically either 10 or 2)
-	 *	<LI><B>NULLABLE</B> int => whether NULL is allowed
+	 *	<LI><B>DECIMAL_DIGITS</B> int =&gt; the number of fractional digits
+	 *	<LI><B>NUM_PREC_RADIX</B> int =&gt; Radix (typically either 10 or 2)
+	 *	<LI><B>NULLABLE</B> int =&gt; whether NULL is allowed
 	 *		<UL>
 	 *		<LI> attributeNoNulls - might not allow NULL values
 	 *		<LI> attributeNullable - definitely allows NULL values
 	 *		<LI> attributeNullableUnknown - nullability unknown
 	 *		</UL>
-	 *	<LI><B>REMARKS</B> String => comment describing column (may be <code>null</code>)
-	 *	<LI><B>ATTR_DEF</B> String => default value (may be <code>null</code>)
-	 *	<LI><B>SQL_DATA_TYPE</B> int => unused
-	 *	<LI><B>SQL_DATETIME_SUB</B> int => unused
-	 *	<LI><B>CHAR_OCTET_LENGTH</B> int => for char types the
+	 *	<LI><B>REMARKS</B> String =&gt; comment describing column (may be <code>null</code>)
+	 *	<LI><B>ATTR_DEF</B> String =&gt; default value (may be <code>null</code>)
+	 *	<LI><B>SQL_DATA_TYPE</B> int =&gt; unused
+	 *	<LI><B>SQL_DATETIME_SUB</B> int =&gt; unused
+	 *	<LI><B>CHAR_OCTET_LENGTH</B> int =&gt; for char types the
 	 *		 maximum number of bytes in the column
-	 *	<LI><B>ORDINAL_POSITION</B> int => index of column in table
+	 *	<LI><B>ORDINAL_POSITION</B> int =&gt; index of column in table
 	 *		(starting at 1)
-	 *	<LI><B>IS_NULLABLE</B> String => "NO" means column definitely
+	 *	<LI><B>IS_NULLABLE</B> String =&gt; "NO" means column definitely
 	 *		does not allow NULL values; "YES" means the column might
 	 *		allow NULL values.	An empty string means unknown.
-	 *	<LI><B>SCOPE_CATALOG</B> String => catalog of table that is the
+	 *	<LI><B>SCOPE_CATALOG</B> String =&gt; catalog of table that is the
 	 *		scope of a reference attribute (<code>null</code> if DATA_TYPE isn't REF)
-	 *	<LI><B>SCOPE_SCHEMA</B> String => schema of table that is the
+	 *	<LI><B>SCOPE_SCHEMA</B> String =&gt; schema of table that is the
 	 *		scope of a reference attribute (<code>null</code> if DATA_TYPE isn't REF)
-	 *	<LI><B>SCOPE_TABLE</B> String => table name that is the scope of a
+	 *	<LI><B>SCOPE_TABLE</B> String =&gt; table name that is the scope of a
 	 *		reference attribute (<code>null</code> if the DATA_TYPE isn't REF)
-	 *	<LI><B>SOURCE_DATA_TYPE</B> short => source type of a distinct type or user-generated
+	 *	<LI><B>SOURCE_DATA_TYPE</B> short =&gt; source type of a distinct type or user-generated
 	 *		Ref type,SQL type from java.sql.Types (<code>null</code> if DATA_TYPE
 	 *		isn't DISTINCT or user-generated REF)
 	 *	</OL>
@@ -3734,8 +3734,8 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * <P>The schema column is:
 	 *	<OL>
-	 *	<LI><B>TABLE_SCHEM</B> String => schema name
-	 *	<LI><B>TABLE_CATALOG</B> String => catalog name (may be null)
+	 *	<LI><B>TABLE_SCHEM</B> String =&gt; schema name
+	 *	<LI><B>TABLE_CATALOG</B> String =&gt; catalog name (may be null)
 	 *	</OL>
 	 *
 	 * @return ResultSet each row has a single String column that is a
@@ -3781,12 +3781,12 @@ public class MonetDatabaseMetaData exten
 	 * Retrieves a list of the client info properties that the driver
 	 * supports. The result set contains the following columns
 	 *
-	 *    1. NAME String=> The name of the client info property
-	 *    2. MAX_LEN int=> The maximum length of the value for the
+	 *    1. NAME String =&gt; The name of the client info property
+	 *    2. MAX_LEN int =&gt; The maximum length of the value for the
 	 *       property
-	 *    3. DEFAULT_VALUE String=> The default value of the
+	 *    3. DEFAULT_VALUE String =&gt; The default value of the
 	 *       property
-	 *    4. DESCRIPTION String=> A description of the
+	 *    4. DESCRIPTION String =&gt; A description of the
 	 *       property. This will typically contain information as
 	 *       to where this property is stored in the database.
 	 *
@@ -3827,17 +3827,17 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * Each function description has the the following columns:
 	 *
-	 *    1. FUNCTION_CAT String => function catalog (may be null)
-	 *    2. FUNCTION_SCHEM String => function schema (may be null)
-	 *    3. FUNCTION_NAME String => function name. This is the
+	 *    1. FUNCTION_CAT String =&gt; function catalog (may be null)
+	 *    2. FUNCTION_SCHEM String =&gt; function schema (may be null)
+	 *    3. FUNCTION_NAME String =&gt; function name. This is the
 	 *       name used to invoke the function
-	 *    4. REMARKS String => explanatory comment on the function
-	 *    5. FUNCTION_TYPE short => kind of function:
+	 *    4. REMARKS String =&gt; explanatory comment on the function
+	 *    5. FUNCTION_TYPE short =&gt; kind of function:
 	 *        * functionResultUnknown - Cannot determine if a return
 	 *          value or table will be returned
 	 *        * functionNoTable- Does not return a table
 	 *        * functionReturnsTable - Returns a table
-	 *    6. SPECIFIC_NAME String => the name which uniquely identifies
+	 *    6. SPECIFIC_NAME String =&gt; the name which uniquely identifies
 	 *       this function within its schema. This is a user specified,
 	 *       or DBMS generated, name that may be different then the
 	 *       FUNCTION_NAME for example with overload functions
@@ -3910,36 +3910,36 @@ public class MonetDatabaseMetaData exten
 	 * Within this, the return value, if any, is first. Next are the parameter descriptions in call order.
 	 * The column descriptions follow in column number order.
 	 *
-	 * 1.  FUNCTION_CAT String => function catalog (may be null)
-	 * 2.  FUNCTION_SCHEM String => function schema (may be null)
-	 * 3.  FUNCTION_NAME String => function name. This is the name used to invoke the function
-	 * 4.   COLUMN_NAME String => column/parameter name
-	 * 5.   COLUMN_TYPE Short => kind of column/parameter:
+	 * 1.  FUNCTION_CAT String =&gt; function catalog (may be null)
+	 * 2.  FUNCTION_SCHEM String =&gt; function schema (may be null)
+	 * 3.  FUNCTION_NAME String =&gt; function name. This is the name used to invoke the function
+	 * 4.   COLUMN_NAME String =&gt; column/parameter name
+	 * 5.   COLUMN_TYPE Short =&gt; kind of column/parameter:
 	 *         functionColumnUnknown - nobody knows
 	 *         functionColumnIn - IN parameter
 	 *         functionColumnInOut - INOUT parameter
 	 *         functionColumnOut - OUT parameter
 	 *         functionColumnReturn - function return value
 	 *         functionColumnResult - Indicates that the parameter or column is a column in the ResultSet
-	 * 6.   DATA_TYPE int => SQL type from java.sql.Types
-	 * 7.   TYPE_NAME String => SQL type name, for a UDT type the type name is fully qualified
-	 * 8.   PRECISION int => precision
-	 * 9.   LENGTH int => length in bytes of data
-	 * 10.  SCALE short => scale - null is returned for data types where SCALE is not applicable.
-	 * 11.  RADIX short => radix
-	 * 12.  NULLABLE short => can it contain NULL.
+	 * 6.   DATA_TYPE int =&gt; SQL type from java.sql.Types
+	 * 7.   TYPE_NAME String =&gt; SQL type name, for a UDT type the type name is fully qualified
+	 * 8.   PRECISION int =&gt; precision
+	 * 9.   LENGTH int =&gt; length in bytes of data
+	 * 10.  SCALE short =&gt; scale - null is returned for data types where SCALE is not applicable.
+	 * 11.  RADIX short =&gt; radix
+	 * 12.  NULLABLE short =&gt; can it contain NULL.
 	 *         functionNoNulls - does not allow NULL values
 	 *         functionNullable - allows NULL values
 	 *         functionNullableUnknown - nullability unknown
-	 * 13.  REMARKS String => comment describing column/parameter
-	 * 14.  CHAR_OCTET_LENGTH int => the maximum length of binary and character based parameters or columns. For any other datatype the returned value is a NULL
-	 * 15.  ORDINAL_POSITION int => the ordinal position, starting from 1, for the input and output parameters.
+	 * 13.  REMARKS String =&gt; comment describing column/parameter
+	 * 14.  CHAR_OCTET_LENGTH int =&gt; the maximum length of binary and character based parameters or columns. For any other datatype the returned value is a NULL
+	 * 15.  ORDINAL_POSITION int =&gt; the ordinal position, starting from 1, for the input and output parameters.
 	 *	   A value of 0 is returned if this row describes the function's return value. For result set columns, it is the ordinal position of the column in the result set starting from 1.
-	 * 16.  IS_NULLABLE String => ISO rules are used to determine the nullability for a parameter or column.
+	 * 16.  IS_NULLABLE String =&gt; ISO rules are used to determine the nullability for a parameter or column.
 	 *         YES --- if the parameter or column can include NULLs
 	 *         NO --- if the parameter or column cannot include NULLs
 	 *         empty string --- if the nullability for the parameter or column is unknown
-	 * 17.  SPECIFIC_NAME String => the name which uniquely identifies this function within its schema.
+	 * 17.  SPECIFIC_NAME String =&gt; the name which uniquely identifies this function within its schema.
 	 *	  This is a user specified, or DBMS generated, name that may be different then the FUNCTION_NAME for example with overload functions
 	 *
 	 * @param catalog a catalog name; must match the catalog name as
@@ -4034,18 +4034,18 @@ public class MonetDatabaseMetaData exten
 	 *
 	 * Each column description has the following columns:
 	 *
-	 *  1. TABLE_CAT String => table catalog (may be null)
-	 *  2. TABLE_SCHEM String => table schema (may be null)
-	 *  3. TABLE_NAME String => table name
-	 *  4. COLUMN_NAME String => column name
-	 *  5. DATA_TYPE int => SQL type from java.sql.Types
-	 *  6. COLUMN_SIZE int => column size.
-	 *  7. DECIMAL_DIGITS int => the number of fractional digits. Null is returned for data types where DECIMAL_DIGITS is not applicable.
-	 *  8. NUM_PREC_RADIX int => Radix (typically either 10 or 2)
-	 *  9. COLUMN_USAGE String => The allowed usage for the column. The value returned will correspond to the enum name returned by PseudoColumnUsage.name()
-	 * 10. REMARKS String => comment describing column (may be null)
-	 * 11. CHAR_OCTET_LENGTH int => for char types the maximum number of bytes in the column
-	 * 12. IS_NULLABLE String => ISO rules are used to determine the nullability for a column.
+	 *  1. TABLE_CAT String =&gt; table catalog (may be null)
+	 *  2. TABLE_SCHEM String =&gt; table schema (may be null)
+	 *  3. TABLE_NAME String =&gt; table name
+	 *  4. COLUMN_NAME String =&gt; column name
+	 *  5. DATA_TYPE int =&gt; SQL type from java.sql.Types
+	 *  6. COLUMN_SIZE int =&gt; column size.
+	 *  7. DECIMAL_DIGITS int =&gt; the number of fractional digits. Null is returned for data types where DECIMAL_DIGITS is not applicable.
+	 *  8. NUM_PREC_RADIX int =&gt; Radix (typically either 10 or 2)
+	 *  9. COLUMN_USAGE String =&gt; The allowed usage for the column. The value returned will correspond to the enum name returned by PseudoColumnUsage.name()
+	 * 10. REMARKS String =&gt; comment describing column (may be null)
+	 * 11. CHAR_OCTET_LENGTH int =&gt; for char types the maximum number of bytes in the column
+	 * 12. IS_NULLABLE String =&gt; ISO rules are used to determine the nullability for a column.
 	 *         YES --- if the column can include NULLs
 	 *         NO --- if the column cannot include NULLs
 	 *         empty string --- if the nullability for the column is unknown
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetDriver.java.in
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetDriver.java.in
@@ -268,7 +268,7 @@ final public class MonetDriver implement
 	}
 
 	/**
-	 * Reports whether this driver is a genuine JDBC Compliant&tm; driver. A
+	 * Reports whether this driver is a genuine JDBC Compliant&trade; driver. A
 	 * driver may only report true here if it passes the JDBC compliance tests;
 	 * otherwise it is required to return false.
 	 *
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetPreparedStatement.java
@@ -386,7 +386,7 @@ public class MonetPreparedStatement
 	 * @throws SQLException if a database access error occurs
 	 */
 	@Override
-	public ResultSetMetaData getMetaData() {
+	public ResultSetMetaData getMetaData() throws SQLException {
 		if (rscolcnt == 3)
 			return null; // not sufficient data with pre-Dec2011 PREPARE
 
@@ -2173,7 +2173,7 @@ public class MonetPreparedStatement
 	}
 
 	/**
-	 * Sets the designated parameter to the given REF(<structured-type>) value.
+	 * Sets the designated parameter to the given REF(&lt;structured-type&gt;) value.
 	 * The driver converts this to an SQL REF value when it sends it to the
 	 * database.
 	 *
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetResultSet.java
@@ -403,7 +403,7 @@ public class MonetResultSet
 	 * of this ResultSet object as a stream of uninterpreted bytes. The
 	 * value can then be read in chunks from the stream. This method is
 	 * particularly suitable for retrieving large LONGVARBINARY values.
-	 * <br/><br/>
+	 *
 	 * Note: All the data in the returned stream must be read prior to
 	 * getting the value of any other column. The next call to a getter
 	 * method implicitly closes the stream. Also, a stream may return 0
@@ -446,7 +446,7 @@ public class MonetResultSet
 	 * of this ResultSet object as a stream of uninterpreted bytes. The
 	 * value can then be read in chunks from the stream. This method is
 	 * particularly suitable for retrieving large LONGVARBINARY  values.
-	 * <br/><br/>
+	 *
 	 * Note: All the data in the returned stream must be read prior to
 	 * getting the value of any other column. The next call to a getter
 	 * method implicitly closes the stream. Also, a stream may return 0
--- a/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/MonetStatement.java
@@ -25,7 +25,7 @@ import java.util.concurrent.locks.Reentr
  * A Statement suitable for the MonetDB database.
  *
  * The object used for executing a static SQL statement and returning
- * the results it produces.<br />
+ * the results it produces.
  *
  * By default, only one {@link ResultSet} object per Statement object can be
  * open at the same time. Therefore, if the reading of one ResultSet
@@ -38,7 +38,7 @@ import java.util.concurrent.locks.Reentr
  * executeQuery() which returns a ResultSet where from results can be
  * read and executeUpdate() which doesn't return the affected rows.
  * Commit and rollback are implemented, as is the autoCommit mechanism
- * which relies on server side auto commit.<br />
+ * which relies on server side auto commit.
  * Multi-result queries are supported using the getMoreResults() method.
  *
  * @author Fabian Groffen
@@ -161,7 +161,6 @@ public class MonetStatement
 	 * ordered according to the order in which they were added to the
 	 * batch.  The elements in the array returned by the method
 	 * executeBatch may be one of the following:
-	 * <br />
 	 * <ol>
 	 * <li>A number greater than or equal to zero -- indicates that the
 	 * command was processed successfully and is an update count giving
@@ -182,7 +181,7 @@ public class MonetStatement
 	 * If one of the commands attempts to return a result set, an
 	 * SQLException is added to the SQLException list and thrown
 	 * afterwards execution.  Failing queries result in SQLExceptions
-	 * too and may cause subparts of the batch to fail as well.<br />
+	 * too and may cause subparts of the batch to fail as well.
 	 *
 	 * @return an array of update counts containing one element for each
 	 *         command in the batch.  The elements of the array are ordered
@@ -547,7 +546,7 @@ public class MonetStatement
 	 * @param sql an SQL INSERT, UPDATE or DELETE statement or an SQL statement
 	 *        that returns nothing
 	 * @return either the row count for INSERT, UPDATE  or DELETE statements, or
-	 *         0 for SQL statements that return nothing<br />
+	 *         0 for SQL statements that return nothing
 	 * @throws SQLException if a database access error occurs or the given SQL
 	 *         statement produces a ResultSet object
 	 */
@@ -748,10 +747,11 @@ public class MonetStatement
 	 * @return the current column size limit for columns storing
 	 *         character and binary values; zero means there is no limit
 	 * @throws SQLException if a database access error occurs
+	 * @see #setMaxFieldSize(int max)
 	 */
 	@Override
-	public int getMaxFieldSize() {
-		return 0;
+	public int getMaxFieldSize() throws SQLException {
+		return 2*1024*1024*1024 - 2;	// MonetDB supports null terminated strings of max 2GB, see function: int UTF8_strlen()
 	}
 
 	/**
@@ -761,9 +761,11 @@ public class MonetStatement
 	 *
 	 * @return the current maximum number of rows for a ResultSet object
 	 *         produced by this Statement object; zero means there is no limit
+	 * @throws SQLException if a database access error occurs
+	 * @see #setMaxRows(int max)
 	 */
 	@Override
-	public int getMaxRows() {
+	public int getMaxRows() throws SQLException {
 		return maxRows;
 	}
 
@@ -772,7 +774,7 @@ public class MonetStatement
 	 * ResultSet object, and implicitly closes any current ResultSet object(s)
 	 * obtained with the method getResultSet.
 	 *
-	 * There are no more results when the following is true:<br />
+	 * There are no more results when the following is true:
 	 * (!getMoreResults() &amp;&amp; (getUpdateCount() == -1)
 	 *
 	 * @return true if the next result is a ResultSet object; false if it is
@@ -790,7 +792,7 @@ public class MonetStatement
 	 * ResultSet object(s) according to the instructions specified by the given
 	 * flag, and returns true if the next result is a ResultSet object.
 	 *
-	 * There are no more results when the following is true:<br />
+	 * There are no more results when the following is true:
 	 * (!getMoreResults() &amp;&amp; (getUpdateCount() == -1)
 	 *
 	 * @param current one of the following Statement constants indicating what
@@ -1066,6 +1068,7 @@ public class MonetStatement
 	 *        is no limit
 	 * @throws SQLException if a database access error occurs or the
 	 *         condition max &gt;= 0 is not satisfied
+	 * @see #getMaxFieldSize()
 	 */
 	@Override
 	public void setMaxFieldSize(int max) throws SQLException {
@@ -1081,7 +1084,8 @@ public class MonetStatement
 	 * rows are silently dropped.
 	 *
 	 * @param max the new max rows limit; zero means there is no limit
-	 * @throws SQLException if the condition max >= 0 is not satisfied
+	 * @throws SQLException if the condition max &gt;= 0 is not satisfied
+	 * @see #getMaxRows()
 	 */
 	@Override
 	public void setMaxRows(int max) throws SQLException {
--- a/src/main/java/nl/cwi/monetdb/jdbc/types/INET.java
+++ b/src/main/java/nl/cwi/monetdb/jdbc/types/INET.java
@@ -21,12 +21,12 @@ import java.sql.SQLOutput;
  * The INET class represents the INET datatype in MonetDB.
  * It represents a IPv4 address with a certain mask applied.
  * Currently, IPv6 is not supported.
- * <br />
+ *
  * The input format for INET is x.x.x.x/y where x.x.x.x is an IP address
  * and y is the number of bits in the netmask. If the /y part is left
  * off, then the netmask is 32, and the value represents just a single
  * host. On display, the /y portion is suppressed if the netmask is 32.
- * <br />
+ *
  * This class allows to retrieve the value of this INET as InetAddress.
  * This is probably meaningful only and only if the netmask is 32.
  * The getNetmaskBits() method can be used to retrieve the subnet bits.
--- a/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLReader.java
+++ b/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLReader.java
@@ -37,7 +37,7 @@ import java.io.UnsupportedEncodingExcept
  * This class is client-oriented, as it doesn't take into account the
  * messages as the server receives them.
  *
- * @author Fabian Groffen <Fabian.Groffen>
+ * @author Fabian Groffen
  * @see nl.cwi.monetdb.mcl.net.MapiSocket
  * @see nl.cwi.monetdb.mcl.io.BufferedMCLWriter
  */
@@ -80,6 +80,7 @@ public class BufferedMCLReader extends B
 	 *
 	 * @param in An InputStream
 	 * @param enc Encoding
+	 * @throws UnsupportedEncodingException If encoding is not supported
 	 */
 	public BufferedMCLReader(InputStream in, String enc)
 		throws UnsupportedEncodingException
--- a/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLWriter.java
+++ b/src/main/java/nl/cwi/monetdb/mcl/io/BufferedMCLWriter.java
@@ -32,7 +32,7 @@ import java.io.Writer;
  * each write must be answered by the server.  That also makes this
  * class client-oriented when a reader is registered.
  *
- * @author Fabian Groffen <Fabian.Groffen>
+ * @author Fabian Groffen
  * @see nl.cwi.monetdb.mcl.net.MapiSocket
  * @see nl.cwi.monetdb.mcl.io.BufferedMCLReader
  */
@@ -55,6 +55,7 @@ public class BufferedMCLWriter extends B
 	 *
 	 * @param in An OutputStream
 	 * @param enc Encoding
+	 * @throws UnsupportedEncodingException If encoding is not supported
 	 */
 	public BufferedMCLWriter(OutputStream in, String enc)
 		throws UnsupportedEncodingException
--- a/src/main/java/nl/cwi/monetdb/mcl/net/MapiSocket.java
+++ b/src/main/java/nl/cwi/monetdb/mcl/net/MapiSocket.java
@@ -50,7 +50,7 @@ import nl.cwi.monetdb.mcl.parser.MCLPars
  * calling the connect() method to influence the login process.  Only
  * after a successful call to connect() the BufferedReader and
  * BufferedWriter can be retrieved.
- * <br />
+ *
  * For each line read, it is determined what type of line it is
  * according to the MonetDB MAPI protocol.  This results in a line to be
  * PROMPT, HEADER, RESULT, ERROR or UNKNOWN.  Use the getLineType()
@@ -59,7 +59,7 @@ import nl.cwi.monetdb.mcl.parser.MCLPars
  *
  * For debugging purposes a socket level debugging is implemented where
  * each and every interaction to and from the MonetDB server is logged
- * to a file on disk.<br />
+ * to a file on disk.
  * Incoming messages are prefixed by "RX" (received by the driver),
  * outgoing messages by "TX" (transmitted by the driver).  Special
  * decoded non-human readable messages are prefixed with "RD" and "TD"
--- a/src/main/java/nl/cwi/monetdb/mcl/parser/HeaderLineParser.java
+++ b/src/main/java/nl/cwi/monetdb/mcl/parser/HeaderLineParser.java
@@ -14,7 +14,7 @@ package nl.cwi.monetdb.mcl.parser;
  * a metadata header in the MCL protocol either as string or integer
  * values.
  *
- * @author Fabian Groffen <Fabian.Groffen>
+ * @author Fabian Groffen
  */
 public class HeaderLineParser extends MCLParser {
 	private int type;
--- a/src/main/java/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java
+++ b/src/main/java/nl/cwi/monetdb/mcl/parser/StartOfHeaderParser.java
@@ -20,7 +20,7 @@ import java.nio.CharBuffer;
  * bonus is that it can return if another field should be present in the
  * soheader.
  *
- * @author Fabian Groffen <Fabian.Groffen>
+ * @author Fabian Groffen
  */
 public class StartOfHeaderParser {
 	private CharBuffer soh = null;
--- a/src/main/java/nl/cwi/monetdb/mcl/parser/TupleLineParser.java
+++ b/src/main/java/nl/cwi/monetdb/mcl/parser/TupleLineParser.java
@@ -13,7 +13,7 @@ package nl.cwi.monetdb.mcl.parser;
  * number of values that are expected are known upfront to speed up
  * allocation and validation.
  *
- * @author Fabian Groffen <Fabian.Groffen>
+ * @author Fabian Groffen
  */
 public class TupleLineParser extends MCLParser {
 	/**
@@ -34,7 +34,7 @@ public class TupleLineParser extends MCL
 	 *
 	 * @param source a String which should be parsed
 	 * @return 0, as there is no 'type' of TupleLine
-	 * @throws ParseException if an error occurs during parsing
+	 * @throws MCLParseException if an error occurs during parsing
 	 */
 	@Override
 	public int parse(String source) throws MCLParseException {
--- a/src/main/java/nl/cwi/monetdb/merovingian/Control.java
+++ b/src/main/java/nl/cwi/monetdb/merovingian/Control.java
@@ -31,7 +31,7 @@ import java.util.Properties;
  * This class implements the protocol specific bits to perform all
  * possible actions against a merovingian server that has remote control
  * facilities enabled.
- * <br />
+ *
  * In the merovingian world, other merovingians in the vicinity are
  * known to each merovingian, allowing to perform cluster wide actions.
  * The implementation taken in this class is to require one known
@@ -56,6 +56,9 @@ public class Control {
 	/**
 	 * Constructs a new Control object.
 	 *
+	 * @param host - IP address or DNS
+	 * @param port - port number
+	 * @param passphrase - phrase used to pass authorisation
 	 * @throws IllegalArgumentException if host, port or passphrase are
 	 * null or &lt;= 0
 	 */
@@ -343,10 +346,12 @@ public class Control {
 	/**
 	 * Test whether a specific database exists. 
 	 * 
-	 * @param database
+	 * @param database name of database
 	 * @return true, iff database already exists.
-	 * @throws MerovingianException
-	 * @throws IOException
+	 * @throws MerovingianException if performing the command failed at
+	 *         the merovingian side
+	 * @throws IOException if connecting to or communicating with
+	 *         merovingian failed
 	 */
 	public boolean exists(String database)
 		throws MerovingianException, IOException
--- a/src/main/java/nl/cwi/monetdb/merovingian/SabaothDB.java
+++ b/src/main/java/nl/cwi/monetdb/merovingian/SabaothDB.java
@@ -15,7 +15,7 @@ import java.util.Date;
  *
  * This Class implements a parser for the string representation of a
  * sabaoth information struct as returned by monetdbd.
- * <br />
+ *
  * Currently this class implements version 1 and 2 of the sabdb
  * serialisation.
  *
--- a/src/main/java/nl/cwi/monetdb/util/Extract.java
+++ b/src/main/java/nl/cwi/monetdb/util/Extract.java
@@ -20,7 +20,7 @@ import java.io.InputStreamReader;
  * This file contains a function to extract files from its including Jar
  * package.
  *
- * @author Ying Zhang <Y.Zhang@cwi.nl>
+ * @author Ying Zhang "Y.Zhang@cwi.nl"
  * @version 0.1
  */
 
--- a/src/main/java/nl/cwi/monetdb/util/SQLExporter.java
+++ b/src/main/java/nl/cwi/monetdb/util/SQLExporter.java
@@ -439,6 +439,7 @@ public class SQLExporter extends Exporte
 	 * to the output writer.
 	 *
 	 * @param rs the ResultSet to write out
+	 * @throws SQLException if a database related error occurs
 	 */
 	public void resultSetToTable(ResultSet rs) throws SQLException {
 		ResultSetMetaData md = rs.getMetaData();
--- a/src/main/java/nl/cwi/monetdb/util/SQLRestore.java
+++ b/src/main/java/nl/cwi/monetdb/util/SQLRestore.java
@@ -98,8 +98,8 @@ public class SQLRestore {
 	/**
 	 * Restores a given SQL dump to the database.
 	 *
-	 * @param source
-	 * @throws IOException
+	 * @param source file object
+	 * @throws IOException when IO exception occurred
 	 */
 	public void restore(File source) throws IOException {
 		MapiSocket ms = new MapiSocket();