Listing E
<!ELEMENT ResultSet (ResultSetMetaData, ResultSetData)> <!ELEMENT ResultSetMetaData (ColumnMetaData)+> <!ATTLIST ResultSetMetaData getColumnCount CDATA #IMPLIED> <!ELEMENT ColumnMetaData EMPTY> <!ATTLIST ColumnMetaData getCatalogName CDATA #IMPLIED getColumnDisplaySize CDATA #IMPLIED getColumnLabel CDATA #IMPLIED getColumnName CDATA #IMPLIED getColumnType CDATA #REQUIRED getColumnTypeName CDATA #IMPLIED getPrecision CDATA #IMPLIED getScale CDATA #IMPLIED getSchemaName CDATA #IMPLIED getTablename CDATA #IMPLIED isAutoIncrement (true|false) #IMPLIED isCaseSensitive (true|false) #IMPLIED isCurrency (true|false) #IMPLIED isDefinitelyWritable (true|false) #IMPLIED isNullable (true|false) #IMPLIED isReadOnly (true|false) #IMPLIED isSearchable (true|false) #IMPLIED isSigned (true|false) #IMPLIED isWritable (true|false) #IMPLIED > <!ELEMENT ResultSetData (Row)*> <!ELEMENT Row (Column)+> <!ELEMENT Column (#PCDATA)> <!ATTLIST Column null (true | false) "false" name CDATA #IMPLIED