diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Column.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Column.java index c17bc66b05883a16fe6112a821d63c1dd2bba4f3..ef7113bb25e61fc973405dc8cf05714af926430c 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Column.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Column.java @@ -71,7 +71,7 @@ public class Column extends ChildEntity<Table> { String type = null; if (tapSchema.getName().equals(parentSchema.getName())) { - TableModel tableModel = tapSchema.getTapSchemaModel().get(parentTable.getName()); + TableModel tableModel = tapSchema.getTapSchemaModel().getTable(parentTable.getName()); type = tableModel.get(getName()).getType(); } diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Table.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Table.java index 64dc3fafe62c3e5306683a2beb49a54ee1577890..0827988457fbfed0b5478b6202978e79c16b9753 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Table.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/Table.java @@ -59,11 +59,11 @@ public class Table extends ChildEntity<Schema> implements EntitiesContainer<Colu private TableModel getModel() { if (tapSchema.getName().equals(parentSchema.getName())) { - return tapSchema.getTapSchemaModel().get(simpleName); + return tapSchema.getTapSchemaModel().getTable(simpleName); } if (tapSchema.isHasObscore() && parentSchema.getName().equals("ivoa") && simpleName.equals("obscore")) { - return tapSchema.getIvoaSchemaModel().get(simpleName); + return tapSchema.getIvoaSchemaModel().getTable(simpleName); } return null; } diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/TapSchema.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/TapSchema.java index 8de787d24d37bf274192d25986237f0703407fb0..234b5a82c023d4f725d6fa61af445740f78f618e 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/TapSchema.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/TapSchema.java @@ -660,7 +660,7 @@ public class TapSchema implements EntitiesContainer<Schema>, Serializable { } public final TableModel getTableModel(String tableName) { - return getTapSchemaModel().getTables().get(tableName); + return getTapSchemaModel().getTable(tableName); } public Map<String, Object> getSchemaMetadata(String schemaName) { @@ -697,11 +697,11 @@ public class TapSchema implements EntitiesContainer<Schema>, Serializable { private void fillColumnProperties(SchemaModel schemaModel, String schemaName) { // check only on std, but valid also for principal (it depends on TS version) - boolean useIntegerAsBool = getTapSchemaModel().get(COLUMNS_TABLE).get(Column.STD_KEY).getJavaType() == Integer.class; + boolean useIntegerAsBool = getTapSchemaModel().getTable(COLUMNS_TABLE).get(Column.STD_KEY).getJavaType() == Integer.class; Schema schema = getChild(schemaName); schema.setValue(DESCRIPTION_KEY, schemaModel.getDescription()); - for (TableModel tableModel : schemaModel.getTables().values()) { + for (TableModel tableModel : schemaModel.getTables()) { Table table = schema.getChild(tableModel.getName()); table.setValue(DESCRIPTION_KEY, tableModel.getDescription()); for (ColumnModel propertyModel : tableModel.getColumns()) { diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/DBBrokerTemplate.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/DBBrokerTemplate.java index 2218db2db6c0139b4b5848b002f22de1eca88d0c..6bee192078eab627ea9b17db501226787e54a431 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/DBBrokerTemplate.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/DBBrokerTemplate.java @@ -142,7 +142,7 @@ public abstract class DBBrokerTemplate implements DBBroker { execute(getCreateDatabaseQuery(tapSchemaName), conn); - for (TableModel tableModel : tapSchemaModel.getTables().values()) { + for (TableModel tableModel : tapSchemaModel.getTables()) { createTable(tapSchemaName, tableModel, conn); } @@ -174,7 +174,7 @@ public abstract class DBBrokerTemplate implements DBBroker { public void createIvoaSchemaStructure(SchemaModel ivoaSchemaModel) throws SQLException { try (Connection conn = dataSource.getConnection()) { execute(getCreateDatabaseQuery(ivoaSchemaModel.getName()), conn); - for (TableModel tableModel : ivoaSchemaModel.getTables().values()) { + for (TableModel tableModel : ivoaSchemaModel.getTables()) { createTable(ivoaSchemaModel.getName(), tableModel, conn); } } @@ -681,11 +681,11 @@ public abstract class DBBrokerTemplate implements DBBroker { } for (SchemaModel tapSchemaModel : SchemaModels.getTapSchemaModels()) { - if (match(tapSchemaModel.get(TapSchema.SCHEMAS_TABLE), schemasColumns) - && match(tapSchemaModel.get(TapSchema.TABLES_TABLE), tablesColumns) - && match(tapSchemaModel.get(TapSchema.COLUMNS_TABLE), columnsColumns) - && match(tapSchemaModel.get(TapSchema.KEYS_TABLE), keyColumns) - && match(tapSchemaModel.get(TapSchema.KEY_COLUMNS_TABLE), keyColumnsColumns)) { + if (match(tapSchemaModel.getTable(TapSchema.SCHEMAS_TABLE), schemasColumns) + && match(tapSchemaModel.getTable(TapSchema.TABLES_TABLE), tablesColumns) + && match(tapSchemaModel.getTable(TapSchema.COLUMNS_TABLE), columnsColumns) + && match(tapSchemaModel.getTable(TapSchema.KEYS_TABLE), keyColumns) + && match(tapSchemaModel.getTable(TapSchema.KEY_COLUMNS_TABLE), keyColumnsColumns)) { return tapSchemaModel.getVersion(); } } diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/mysql/MySQLDBBroker.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/mysql/MySQLDBBroker.java index d4d3123063dace2e910cc4d3e62b27f592f1aa2e..a7728c25a07c4575420f122b32ff1e180fc2ef8a 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/mysql/MySQLDBBroker.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/mysql/MySQLDBBroker.java @@ -156,24 +156,26 @@ public class MySQLDBBroker extends DBBrokerTemplate { boolean first = true; for (ColumnModel cm : tableModel.getColumns()) { - if (!first) { - querySb.append(",\n"); - } - first = false; + if (cm.isMandatory()) { + if (!first) { + querySb.append(",\n"); + } + first = false; - querySb.append(cm.getName()); - querySb.append(" "); + querySb.append(cm.getName()); + querySb.append(" "); - String mySQLType = TypesMapping.getMySQLTypeFromADQLType(cm.getType()).toUpperCase(); - querySb.append(mySQLType); - if (mySQLType.equals("VARCHAR") || mySQLType.equals("CHAR")) { - appendSize(querySb, cm.getSize()); - } + String mySQLType = TypesMapping.getMySQLTypeFromADQLType(cm.getType()).toUpperCase(); + querySb.append(mySQLType); + if (mySQLType.equals("VARCHAR") || mySQLType.equals("CHAR")) { + appendSize(querySb, cm.getSize()); + } - if (cm.isNullable()) { - querySb.append(" NULL"); - } else { - querySb.append(" NOT NULL"); + if (cm.isNullable()) { + querySb.append(" NULL"); + } else { + querySb.append(" NOT NULL"); + } } } diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/pgsql/PostgresDBBroker.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/pgsql/PostgresDBBroker.java index cf7b01798f8da24d6ad01be01a88a4abf256aa29..96b24042bad209b689284d6a5edd7afbafc8f2f0 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/pgsql/PostgresDBBroker.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/datalayer/pgsql/PostgresDBBroker.java @@ -48,65 +48,67 @@ import org.slf4j.LoggerFactory; * @author Sonia Zorba {@literal <zorba at oats.inaf.it>} */ public class PostgresDBBroker extends DBBrokerTemplate { - + private final static Logger LOG = LoggerFactory.getLogger(PostgresDBBroker.class); - + private final String pgDatabaseName; - + public PostgresDBBroker(DataSource dataSource, String pgDatabaseName, String tapSchemaVersion) { super(dataSource, '"', tapSchemaVersion); this.pgDatabaseName = pgDatabaseName; } - + @Override protected void createTable(String schemaName, TableModel tableModel, Connection conn) throws SQLException { StringBuilder querySb = new StringBuilder(); - + querySb.append("CREATE TABLE IF NOT EXISTS "); querySb.append(escape(schemaName)); querySb.append("."); querySb.append(escape(tableModel.getName())); querySb.append(" (\n"); - + boolean first = true; for (ColumnModel cm : tableModel.getColumns()) { - if (!first) { - querySb.append(",\n"); - } - first = false; - - querySb.append(cm.getName()); - querySb.append(" "); - - String pgsqlType = TypesMapping.getPostgresSQLTypeFromADQLType(cm.getType()).toLowerCase(); - querySb.append(pgsqlType); - if (pgsqlType.equals("character varying") || pgsqlType.equals("character")) { - appendSize(querySb, cm.getSize()); - } - - if (cm.isNullable()) { - querySb.append(" NULL"); - } else { - querySb.append(" NOT NULL"); + if (cm.isMandatory()) { + if (!first) { + querySb.append(",\n"); + } + first = false; + + querySb.append(cm.getName()); + querySb.append(" "); + + String pgsqlType = TypesMapping.getPostgresSQLTypeFromADQLType(cm.getType()).toLowerCase(); + querySb.append(pgsqlType); + if (pgsqlType.equals("character varying") || pgsqlType.equals("character")) { + appendSize(querySb, cm.getSize()); + } + + if (cm.isNullable()) { + querySb.append(" NULL"); + } else { + querySb.append(" NOT NULL"); + } } } - + querySb.append(")"); - + String query = querySb.toString(); - + try (Statement stat = conn.createStatement()) { LOG.debug("Executing query: {}", query); stat.executeUpdate(query); } } - + @Override protected String getAddPrimaryKeyQuery(String tapSchemaName, String tableName, String[] keyColumns) { return String.format("ALTER TABLE ONLY %s.%s ADD CONSTRAINT %s_pkey PRIMARY KEY (%s)", escape(tapSchemaName), escape(tableName), tableName, buildColumnsList(keyColumns)); } - + @Override protected String getAddForeignKeyQuery(String tapSchemaName, String tableName, String[] fromKeyColumns, String targetTableName, String[] toKeyColumns) { // Building univocal constraint name @@ -119,12 +121,12 @@ public class PostgresDBBroker extends DBBrokerTemplate { escape(tapSchemaName), escape(tableName), constraintNameSb.toString(), buildColumnsList(fromKeyColumns), escape(tapSchemaName), escape(targetTableName), buildColumnsList(toKeyColumns)); } - + @Override protected String getCreateDatabaseQuery(String databaseName) { return "CREATE SCHEMA IF NOT EXISTS " + escape(databaseName); } - + @Override protected String getSchemaTablesQuery(String schemaName) { return String.format("SELECT tablename FROM pg_catalog.pg_tables where schemaname = '%s'", schemaName); @@ -144,14 +146,14 @@ public class PostgresDBBroker extends DBBrokerTemplate { } return sb.toString(); } - + @Override public Map<String, Map<String, Object>> getAllColumnsOriginalMetadata(String schemaName, String tableSimpleName) throws SQLException { - + Map<String, Map<String, Object>> allColumnsMetadata = new HashMap<>(); - + StringBuilder querySb = new StringBuilder(); - + querySb.append("SELECT c.column_name, c.data_type, pg_catalog.format_type(a.atttypid, a.atttypmod), r.contype AS column_type, c.character_maximum_length, c.numeric_precision, a.attndims AS arraydim\n"); querySb.append("FROM information_schema.columns c\n"); querySb.append("JOIN pg_catalog.pg_tables t ON c.table_schema = t.schemaname AND c.table_name = t.tablename\n"); @@ -162,16 +164,16 @@ public class PostgresDBBroker extends DBBrokerTemplate { querySb.append("' AND t.tablename = '"); querySb.append(tableSimpleName); querySb.append("'"); - + String query = querySb.toString(); LOG.debug("Executing query {}", query); - + try (Connection conn = dataSource.getConnection(); Statement statement = conn.createStatement(); ResultSet resultSet = statement.executeQuery(query)) { - + while (resultSet.next()) { - + Map<String, Object> cm = new HashMap<>(); // Column name @@ -192,11 +194,11 @@ public class PostgresDBBroker extends DBBrokerTemplate { } cm.put(Column.PRIMARY_KEY, primaryKey); cm.put(Column.INDEXED_KEY, indexed); - + Integer size = null; int arraydimension = 0; String datatype; - + String type = resultSet.getString("data_type").toUpperCase(); boolean isArray = false; if ("ARRAY".equals(type)) { @@ -208,7 +210,7 @@ public class PostgresDBBroker extends DBBrokerTemplate { // numbers inside brakets, so this case will be approximated to *x* arraydimension = resultSet.getInt("arraydim"); } - + datatype = TypesMapping.getADQLTypeFromPostgresType(type, getTapSchemaVersion()); if (!isArray && (datatype.equals(ADQL.VARCHAR.name()) || datatype.equals(ADQL.CHAR.name()))) { size = resultSet.getInt("character_maximum_length"); @@ -217,10 +219,10 @@ public class PostgresDBBroker extends DBBrokerTemplate { // Adding size at the end of datatype datatype += String.format("(%s)", size); } - + cm.put(Column.DATATYPE_KEY, datatype); cm.put(Column.SIZE_KEY, size); - + String arraySize = null; if (isArray) { arraySize = formatArraySize(arraydimension); @@ -231,21 +233,21 @@ public class PostgresDBBroker extends DBBrokerTemplate { arraySize += "*"; } } - + cm.put(Column.ARRAYSIZE_KEY, arraySize); - + allColumnsMetadata.put(columnName, cm); } } - + return allColumnsMetadata; } - + @Override public List<Key> getKeys(TapSchema tapSchema, String schemaName) throws SQLException { - + StringBuilder queryKeysSb = new StringBuilder(); - + queryKeysSb.append("SELECT\n"); queryKeysSb.append("conname AS constraint_name,\n"); queryKeysSb.append("conrelid::regclass AS from_table, \n"); @@ -258,33 +260,33 @@ public class PostgresDBBroker extends DBBrokerTemplate { queryKeysSb.append("OR (confrelid::regclass || '' LIKE '"); queryKeysSb.append(schemaName); queryKeysSb.append(".%'))"); - + String queryKeys = queryKeysSb.toString(); - + try (Connection connection = dataSource.getConnection(); Statement statement = connection.createStatement(); ResultSet resultSet = statement.executeQuery(queryKeys)) { - + LOG.debug("Executing query {}", queryKeys); - + List<Key> keys = new ArrayList<>(); while (resultSet.next()) { - + String constraintName = resultSet.getString("constraint_name"); - + String fromTableCompleteName = resultSet.getString("from_table"); String targetTableCompleteName = resultSet.getString("target_table"); - + String fromSchema = fromTableCompleteName.split(Pattern.quote("."))[0]; String targetSchema = targetTableCompleteName.split(Pattern.quote("."))[0]; - + Map<String, Object> keyMetadata = new HashMap<>(); keyMetadata.put(Key.FROM_TABLE_KEY, fromTableCompleteName); keyMetadata.put(Key.TARGET_TABLE_KEY, targetTableCompleteName); - + Key key = new Key(tapSchema, keyMetadata); keys.add(key); - + StringBuilder queryFromKCSb = new StringBuilder(); queryFromKCSb.append("SELECT\n"); queryFromKCSb.append("c.column_name AS key_column\n"); @@ -302,7 +304,7 @@ public class PostgresDBBroker extends DBBrokerTemplate { // conkey conrelid String queryFromKC = queryFromKCSb.toString(); - + StringBuilder queryTargetKCSb = new StringBuilder(); queryTargetKCSb.append("SELECT\n"); queryTargetKCSb.append("c.column_name AS key_column\n"); @@ -320,16 +322,16 @@ public class PostgresDBBroker extends DBBrokerTemplate { // as above, but with confkey and confrelid and different c.table_schema where condition String queryTargetKC = queryTargetKCSb.toString(); - + try (Statement statFromKC = connection.createStatement(); Statement statTargetKC = connection.createStatement()) { - + try (ResultSet rsFromKC = statFromKC.executeQuery(queryFromKC); ResultSet rsTargetKC = statTargetKC.executeQuery(queryTargetKC)) { - + LOG.debug("Executing query {}", queryFromKC); LOG.debug("Executing query {}", queryTargetKC); - + while (rsFromKC.next()) { if (rsTargetKC.next()) { key.addKeyColumn( @@ -341,11 +343,11 @@ public class PostgresDBBroker extends DBBrokerTemplate { } } } - + return keys; } } - + @Override protected String getTableTypesQuery(String schemaName) { StringBuilder sb = new StringBuilder(); @@ -361,18 +363,18 @@ public class PostgresDBBroker extends DBBrokerTemplate { sb.append("'"); return sb.toString(); } - + @Override protected String getColumnNamesQuery(String tapSchemaName, String tableName) { return String.format("SELECT column_name FROM information_schema.columns WHERE table_schema = '%s' AND table_name = '%s'", tapSchemaName, tableName); } - + @Override protected String getAllSchemaNamesQuery() { return "SELECT schema_name FROM information_schema.schemata"; } - + @Override protected String getAllTablesNamesQuery(String schemaName) { return String.format("SELECT tablename FROM pg_catalog.pg_tables where schemaname = '%s'", schemaName); diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/ColumnModel.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/ColumnModel.java index 3a7346b1822fa4661a4c24dbc1ad4c4421bf058d..904f9cd5bf7e08f44782a48a1443d7d7d6ffe410 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/ColumnModel.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/ColumnModel.java @@ -23,6 +23,7 @@ package it.inaf.ia2.tsm.model; import java.io.Serializable; +import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlTransient; @@ -57,7 +58,7 @@ public class ColumnModel implements Serializable { mandatory = true; } - @XmlElement(name = "name") + @XmlAttribute(name = "name") public String getName() { return name; } diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModel.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModel.java index b5162f32104b9ea49edec63e8904a57ac0479e5f..7926339bff5c3d935cabdff58e80f5263663014f 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModel.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModel.java @@ -23,8 +23,8 @@ package it.inaf.ia2.tsm.model; import java.io.Serializable; -import java.util.HashMap; -import java.util.Map; +import java.util.ArrayList; +import java.util.List; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElements; @@ -39,15 +39,16 @@ public class SchemaModel implements Serializable { private static final long serialVersionUID = 1087876778125446000L; - private final Map<String, TableModel> tables; + private final List<TableModel> tables; private String name; private String version; private String extendsFrom; private String description; + private String datatypeType; public SchemaModel() { - tables = new HashMap<>(); + tables = new ArrayList<>(); } @XmlAttribute(name = "name") @@ -89,11 +90,25 @@ public class SchemaModel implements Serializable { @XmlElements({ @XmlElement(name = "table") }) - public Map<String, TableModel> getTables() { + public List<TableModel> getTables() { return tables; } - public TableModel get(String tableName) { - return tables.get(tableName); + public TableModel getTable(String tableName) { + for (TableModel table : tables) { + if (tableName.equals(table.getName())) { + return table; + } + } + return null; + } + + @XmlAttribute(name = "datatype") + public String getDatatypeType() { + return datatypeType; + } + + public void setDatatypeType(String datatypeType) { + this.datatypeType = datatypeType; } } diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModels.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModels.java index be1ea870e8fbe8dd48a4c78ce7976ba562366db3..29bdcb40781ab4bab9dbfbc686cc6045f0ef9f5c 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModels.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/SchemaModels.java @@ -89,7 +89,7 @@ public class SchemaModels { } public static TableModel getTapSchemaTableModel(String tableName, String version) { - return getTapSchemaModel(version).getTables().get(tableName); + return getTapSchemaModel(version).getTable(tableName); } private static List<String> getAvailableVersions(Map<String, SchemaModel> schemaModels) { diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/TableModel.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/TableModel.java index 41ee999e874e4dad43c9ac79227dd96278b21e6b..b63fab6595608544d00c48cd6f3026c8f7f6e065 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/TableModel.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/TableModel.java @@ -28,7 +28,6 @@ import java.util.List; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElements; -import javax.xml.bind.annotation.XmlTransient; /** * diff --git a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/XMLMerger.java b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/XMLMerger.java index a90212e8e9047bfb72f7c1b019bd3eea74e319ed..d0ca8bd64667769928dc14f270edda3f568ba98d 100644 --- a/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/XMLMerger.java +++ b/TASMAN-core/src/main/java/it/inaf/ia2/tsm/model/XMLMerger.java @@ -99,8 +99,12 @@ public class XMLMerger { private Element checkElement(Element inheritedParent, Element child) { + Element inheritedElement = null; + String name = child.getAttribute("name"); - Element inheritedElement = findElementByNameAttribute(inheritedParent, name); + if (name != null && !name.isEmpty()) { + inheritedElement = findElementByNameAttribute(inheritedParent, name); + } if (child.getNodeName().equals("remove")) { if (inheritedElement != null) { diff --git a/TASMAN-core/src/main/resources/schema_definition/ivoa-1_1.xml b/TASMAN-core/src/main/resources/schema_definition/ivoa-1_1.xml index 0e740183f14180d7b9790d05701d64b5a8ca0e7f..295aa94d204664b7727e0c1f6886ad95a2972e54 100644 --- a/TASMAN-core/src/main/resources/schema_definition/ivoa-1_1.xml +++ b/TASMAN-core/src/main/resources/schema_definition/ivoa-1_1.xml @@ -23,8 +23,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. --> <schema name="ivoa" version="1.1"> <table name="obscore"> - <column> - <name>dataproduct_type</name> + <column name="dataproduct_type"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -35,8 +34,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id</ucd> <principal>true</principal> </column> - <column> - <name>dataproduct_subtype</name> + <column name="dataproduct_subtype"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -47,8 +45,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id</ucd> <principal>true</principal> </column> - <column> - <name>calib_level</name> + <column name="calib_level"> <type>INTEGER</type> <updatable>true</updatable> <nullable>false</nullable> @@ -59,8 +56,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code;obs.calib</ucd> <principal>true</principal> </column> - <column> - <name>obs_collection</name> + <column name="obs_collection"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -72,8 +68,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id</ucd> <principal>true</principal> </column> - <column> - <name>obs_id</name> + <column name="obs_id"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -85,8 +80,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id</ucd> <principal>true</principal> </column> - <column> - <name>obs_title</name> + <column name="obs_title"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -97,8 +91,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.title;obs</ucd> <principal>true</principal> </column> - <column> - <name>obs_creation_date</name> + <column name="obs_creation_date"> <type>TIMESTAMP</type> <updatable>true</updatable> <description>Date when the dataset was created</description> @@ -108,8 +101,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>time;meta.dataset</ucd> <principal>true</principal> </column> - <column> - <name>obs_creator_name</name> + <column name="obs_creator_name"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -120,8 +112,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id</ucd> <principal>true</principal> </column> - <column> - <name>obs_creator_did</name> + <column name="obs_creator_did"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -132,8 +123,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id</ucd> <principal>false</principal> </column> - <column> - <name>obs_release_date</name> + <column name="obs_release_date"> <type>TIMESTAMP</type> <updatable>true</updatable> <description>Observation release date (ISO 8601)</description> @@ -143,8 +133,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>time.release</ucd> <principal>true</principal> </column> - <column> - <name>publisher_id</name> + <column name="publisher_id"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -155,8 +144,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.ref.uri;meta.curation</ucd> <principal>true</principal> </column> - <column> - <name>bib_reference</name> + <column name="bib_reference"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -167,8 +155,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.bib</ucd> <principal>false</principal> </column> - <column> - <name>data_rights</name> + <column name="data_rights"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -179,8 +166,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code</ucd> <principal>false</principal> </column> - <column> - <name>obs_publisher_did</name> + <column name="obs_publisher_did"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -192,8 +178,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.ref.uri;meta.curation</ucd> <principal>true</principal> </column> - <column> - <name>access_url</name> + <column name="access_url"> <type>CLOB</type> <size>255</size> <updatable>true</updatable> @@ -204,8 +189,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.ref.url</ucd> <principal>true</principal> </column> - <column> - <name>access_format</name> + <column name="access_format"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -216,8 +200,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code.mime</ucd> <principal>true</principal> </column> - <column> - <name>access_estsize</name> + <column name="access_estsize"> <type>BIGINT</type> <updatable>true</updatable> <description>Estimated size of dataset in kilo bytes</description> @@ -229,8 +212,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>phys.size;meta.file</ucd> <principal>true</principal> </column> - <column> - <name>target_name</name> + <column name="target_name"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -241,8 +223,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id;src</ucd> <principal>true</principal> </column> - <column> - <name>target_class</name> + <column name="target_class"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -253,8 +234,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>src.class</ucd> <principal>true</principal> </column> - <column> - <name>s_ra</name> + <column name="s_ra"> <type>DOUBLE</type> <updatable>true</updatable> <description>Central Spatial Position in ICRS Right ascension</description> @@ -266,8 +246,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>pos.eq.ra</ucd> <principal>true</principal> </column> - <column> - <name>s_dec</name> + <column name="s_dec"> <type>DOUBLE</type> <updatable>true</updatable> <description>Central Spatial Position in ICRS Declination</description> @@ -279,8 +258,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>pos.eq.dec</ucd> <principal>true</principal> </column> - <column> - <name>s_fov</name> + <column name="s_fov"> <type>DOUBLE</type> <updatable>true</updatable> <description>Estimated size of the covered region as the diameter of a containing circle</description> @@ -292,8 +270,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>phys.angSize;instr.fov</ucd> <principal>true</principal> </column> - <column> - <name>s_region</name> + <column name="s_region"> <type>REGION</type> <size>255</size> <updatable>true</updatable> @@ -304,8 +281,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>pos.outline;obs.field</ucd> <principal>true</principal> </column> - <column> - <name>s_xel1</name> + <column name="s_xel1"> <type>BIGINT</type> <updatable>true</updatable> <description>Number of elements along the first coordinate of the spatial axis</description> @@ -315,8 +291,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.number</ucd> <principal>true</principal> </column> - <column> - <name>s_xel2</name> + <column name="s_xel2"> <type>BIGINT</type> <updatable>true</updatable> <description>Number of elements along the second coordinate of the spatial axis</description> @@ -326,8 +301,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.number</ucd> <principal>true</principal> </column> - <column> - <name>s_ucd</name> + <column name="s_ucd"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -338,8 +312,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.ucd</ucd> <principal>true</principal> </column> - <column> - <name>s_unit</name> + <column name="s_unit"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -350,8 +323,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.unit</ucd> <principal>true</principal> </column> - <column> - <name>s_resolution</name> + <column name="s_resolution"> <type>DOUBLE</type> <updatable>true</updatable> <description>Spatial resolution of data as FWHM of PSF</description> @@ -362,8 +334,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>pos.angResolution</ucd> <principal>true</principal> </column> - <column> - <name>s_resolution_min</name> + <column name="s_resolution_min"> <type>DOUBLE</type> <updatable>true</updatable> <description>Resolution min value on spatial axis (FHWM of PSF)</description> @@ -374,8 +345,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>pos.angResolution;stat.min</ucd> <principal>true</principal> </column> - <column> - <name>s_resolution_max</name> + <column name="s_resolution_max"> <type>DOUBLE</type> <updatable>true</updatable> <description>Resolution max value on spatial axis</description> @@ -386,8 +356,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>pos.angResolution;stat.max</ucd> <principal>true</principal> </column> - <column> - <name>s_calib_status</name> + <column name="s_calib_status"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -398,8 +367,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code.qual</ucd> <principal>true</principal> </column> - <column> - <name>s_stat_error</name> + <column name="s_stat_error"> <type>DOUBLE</type> <updatable>true</updatable> <description>Astrometric precision along the spatial axis</description> @@ -411,8 +379,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>stat.error;pos.eq</ucd> <principal>false</principal> </column> - <column> - <name>s_pixel_scale</name> + <column name="s_pixel_scale"> <type>DOUBLE</type> <updatable>true</updatable> <description>Sampling period in world coordinate units along the spatial axis</description> @@ -423,8 +390,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>phys.angSize;instr.pixel</ucd> <principal>true</principal> </column> - <column> - <name>t_min</name> + <column name="t_min"> <type>DOUBLE</type> <updatable>true</updatable> <description>Start time in MJD</description> @@ -435,8 +401,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>time.start;obs.exposure</ucd> <principal>true</principal> </column> - <column> - <name>t_max</name> + <column name="t_max"> <type>DOUBLE</type> <updatable>true</updatable> <description>Stop time in MJD</description> @@ -447,8 +412,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>time.end;obs.exposure</ucd> <principal>true</principal> </column> - <column> - <name>t_exptime</name> + <column name="t_exptime"> <type>DOUBLE</type> <updatable>true</updatable> <description>Total exposure time</description> @@ -459,8 +423,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>time.duration;obs.exposure</ucd> <principal>true</principal> </column> - <column> - <name>t_resolution</name> + <column name="t_resolution"> <type>DOUBLE</type> <updatable>true</updatable> <description>Temporal resolution FWHM</description> @@ -471,8 +434,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>time.resolution</ucd> <principal>true</principal> </column> - <column> - <name>t_calib_status</name> + <column name="t_calib_status"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -483,8 +445,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code.qual</ucd> <principal>false</principal> </column> - <column> - <name>t_stat_error</name> + <column name="t_stat_error"> <type>DOUBLE</type> <updatable>true</updatable> <description>Time coord statistical error</description> @@ -495,8 +456,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>stat.error;time</ucd> <principal>false</principal> </column> - <column> - <name>t_xel</name> + <column name="t_xel"> <type>BIGINT</type> <updatable>true</updatable> <description>Number of elements along the time axis</description> @@ -506,8 +466,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.number</ucd> <principal>true</principal> </column> - <column> - <name>t_refpos</name> + <column name="t_refpos"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -516,8 +475,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <mandatory>false</mandatory> <utype>Char.TimeAxis.ReferencePosition</utype> </column> - <column> - <name>em_min</name> + <column name="em_min"> <type>DOUBLE</type> <updatable>true</updatable> <description>Start in spectral coordinates</description> @@ -528,8 +486,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>em.wl;stat.min</ucd> <principal>true</principal> </column> - <column> - <name>em_max</name> + <column name="em_max"> <type>DOUBLE</type> <updatable>true</updatable> <description>Stop in spectral coordinates</description> @@ -540,8 +497,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>em.wl;stat.max</ucd> <principal>true</principal> </column> - <column> - <name>em_res_power</name> + <column name="em_res_power"> <type>DOUBLE</type> <updatable>true</updatable> <description>Value of the resolving power along the spectral axis. (R)</description> @@ -551,8 +507,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>spect.resolution</ucd> <principal>true</principal> </column> - <column> - <name>em_res_power_min</name> + <column name="em_res_power_min"> <type>DOUBLE</type> <updatable>true</updatable> <description>Resolving power min value on spectral axis</description> @@ -562,8 +517,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>spect.resolution;stat.min</ucd> <principal>true</principal> </column> - <column> - <name>em_res_power_max</name> + <column name="em_res_power_max"> <type>DOUBLE</type> <updatable>true</updatable> <description>Resolving power max value on spectral axis</description> @@ -573,8 +527,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>spect.resolution;stat.max</ucd> <principal>true</principal> </column> - <column> - <name>em_resolution</name> + <column name="em_resolution"> <type>DOUBLE</type> <updatable>true</updatable> <description>Value of Resolution along the spectral axis</description> @@ -585,8 +538,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>spect.resolution;stat.mean</ucd> <principal>true</principal> </column> - <column> - <name>em_stat_error</name> + <column name="em_stat_error"> <type>DOUBLE</type> <updatable>true</updatable> <description>Spectral coord statistical error</description> @@ -597,8 +549,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>stat.error;em</ucd> <principal>false</principal> </column> - <column> - <name>em_xel</name> + <column name="em_xel"> <type>BIGINT</type> <updatable>true</updatable> <description>Number of elements along the spectral axis</description> @@ -607,8 +558,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <utype>Char.SpectralAxis.numBins</utype> <ucd>meta.number</ucd> </column> - <column> - <name>em_ucd</name> + <column name="em_ucd"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -619,8 +569,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.ucd</ucd> <principal>true</principal> </column> - <column> - <name>em_unit</name> + <column name="em_unit"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -631,8 +580,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.unit</ucd> <principal>true</principal> </column> - <column> - <name>em_calib_status</name> + <column name="em_calib_status"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -643,8 +591,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code.qual</ucd> <principal>false</principal> </column> - <column> - <name>o_ucd</name> + <column name="o_ucd"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -655,8 +602,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.ucd</ucd> <principal>true</principal> </column> - <column> - <name>o_unit</name> + <column name="o_unit"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -667,8 +613,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.unit</ucd> <principal>true</principal> </column> - <column> - <name>o_calib_status</name> + <column name="o_calib_status"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -679,8 +624,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code.qual</ucd> <principal>true</principal> </column> - <column> - <name>o_stat_error</name> + <column name="o_stat_error"> <type>DOUBLE</type> <updatable>true</updatable> <description>Statistical error on the Observable axis</description> @@ -691,8 +635,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>stat.error;phot.flux</ucd> <principal>false</principal> </column> - <column> - <name>pol_states</name> + <column name="pol_states"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -703,8 +646,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.code;phys.polarization</ucd> <principal>true</principal> </column> - <column> - <name>pol_xel</name> + <column name="pol_xel"> <type>BIGINT</type> <updatable>true</updatable> <description>Number of elements along the polarization axis</description> @@ -714,8 +656,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.number</ucd> <principal>true</principal> </column> - <column> - <name>facility_name</name> + <column name="facility_name"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -726,8 +667,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id;instr.tel</ucd> <principal>true</principal> </column> - <column> - <name>instrument_name</name> + <column name="instrument_name"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -738,8 +678,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <ucd>meta.id;instr</ucd> <principal>true</principal> </column> - <column> - <name>proposal_id</name> + <column name="proposal_id"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> diff --git a/TASMAN-core/src/main/resources/schema_definition/tap_schema-1-IA2.xml b/TASMAN-core/src/main/resources/schema_definition/tap_schema-1-IA2.xml index a78aa207a00897c2859f4c72544ee7159230accc..1d53e01bf88ec6d096ecbecea8402238dc0709ca 100644 --- a/TASMAN-core/src/main/resources/schema_definition/tap_schema-1-IA2.xml +++ b/TASMAN-core/src/main/resources/schema_definition/tap_schema-1-IA2.xml @@ -23,46 +23,40 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. --> <schema name="tap_schema" version="1.0-IA2" extends="1.0"> <table name="schemas"> - <column> - <name>schemaID</name> + <column name="schemaID"> <type>BIGINT</type> <updatable>true</updatable> <standard>false</standard> </column> </table> <table name="tables"> - <column> - <name>tableID</name> + <column name="tableID"> <type>BIGINT</type> <updatable>true</updatable> <standard>false</standard> </column> </table> <table name="columns"> - <column> - <name>columnID</name> + <column name="columnID"> <type>BIGINT</type> <updatable>true</updatable> <standard>false</standard> </column> - <column> - <name>id</name> + <column name="id"> <type>INTEGER</type> <updatable>true</updatable> <standard>false</standard> </column> </table> <table name="keys"> - <column> - <name>keyID</name> + <column name="keyID"> <type>BIGINT</type> <updatable>true</updatable> <standard>false</standard> </column> </table> <table name="key_columns"> - <column> - <name>key_columnID</name> + <column name="key_columnID"> <type>BIGINT</type> <updatable>true</updatable> <standard>false</standard> diff --git a/TASMAN-core/src/main/resources/schema_definition/tap_schema-1.xml b/TASMAN-core/src/main/resources/schema_definition/tap_schema-1.xml index fe4786f370c301c4868e2856a0558c9b03eae028..e27dd723aac27681e26e0231dcfb327e370aa352 100644 --- a/TASMAN-core/src/main/resources/schema_definition/tap_schema-1.xml +++ b/TASMAN-core/src/main/resources/schema_definition/tap_schema-1.xml @@ -21,10 +21,9 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. --> -<schema name="tap_schema" version="1.0" description="a special schema to describe a TAP tableset"> +<schema name="tap_schema" version="1.0" description="a special schema to describe a TAP tableset" datatype="ADQL"> <table name="schemas" description="description of schemas in this tableset"> - <column> - <name>schema_name</name> + <column name="schema_name"> <type>VARCHAR</type> <size>64</size> <updatable>false</updatable> @@ -33,16 +32,14 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>schema name for reference to TAP_SCHEMA.schemas</description> <standard>true</standard> </column> - <column> - <name>utype</name> + <column name="utype"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> <description>lists the utypes of schemas in the tableset</description> <standard>true</standard> </column> - <column> - <name>description</name> + <column name="description"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -51,8 +48,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. </column> </table> <table name="tables" description="description of tables in this tableset"> - <column> - <name>schema_name</name> + <column name="schema_name"> <type>VARCHAR</type> <size>64</size> <updatable>false</updatable> @@ -61,8 +57,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>the schema this table belongs to</description> <standard>true</standard> </column> - <column> - <name>table_name</name> + <column name="table_name"> <type>VARCHAR</type> <size>128</size> <updatable>false</updatable> @@ -71,8 +66,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>the fully qualified table name</description> <standard>true</standard> </column> - <column> - <name>table_type</name> + <column name="table_type"> <size>8</size> <type>VARCHAR</type> <updatable>false</updatable> @@ -80,16 +74,14 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>one of: table view</description> <standard>true</standard> </column> - <column> - <name>utype</name> + <column name="utype"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> <description>lists the utype of tables in the tableset</description> <standard>true</standard> </column> - <column> - <name>description</name> + <column name="description"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -98,8 +90,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. </column> </table> <table name="columns" description="description of columns in this tableset"> - <column> - <name>table_name</name> + <column name="table_name"> <required>true</required> <type>VARCHAR</type> <size>128</size> @@ -109,8 +100,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>the table this column belongs to</description> <standard>true</standard> </column> - <column> - <name>column_name</name> + <column name="column_name"> <required>true</required> <type>VARCHAR</type> <size>64</size> @@ -120,8 +110,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>the column name</description> <standard>true</standard> </column> - <column> - <name>datatype</name> + <column name="datatype"> <type>VARCHAR</type> <size>64</size> <updatable>true</updatable> @@ -129,48 +118,42 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>lists the ADQL datatype of columns in the tableset</description> <standard>true</standard> </column> - <column> - <name>size</name> + <column name="size"> <type>INTEGER</type> <updatable>false</updatable> <key>size</key> <description>lists the size of variable-length columns in the tableset</description> <standard>true</standard> </column> - <column> - <name>description</name> + <column name="description"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> <description>describes the columns in the tableset</description> <standard>true</standard> </column> - <column> - <name>utype</name> + <column name="utype"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> <description>lists the utypes of columns in the tableset</description> <standard>true</standard> </column> - <column> - <name>unit</name> + <column name="unit"> <type>VARCHAR</type> <size>64</size> <updatable>true</updatable> <description>lists the unit used for column values in the tableset</description> <standard>true</standard> </column> - <column> - <name>ucd</name> + <column name="ucd"> <type>VARCHAR</type> <size>64</size> <updatable>true</updatable> <description>lists the UCDs of columns in the tableset</description> <standard>true</standard> </column> - <column> - <name>indexed</name> + <column name="indexed"> <type>INTEGER</type> <updatable>false</updatable> <nullable>false</nullable> @@ -179,8 +162,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>an indexed column; 1 means true, 0 means false</description> <standard>true</standard> </column> - <column> - <name>principal</name> + <column name="principal"> <type>INTEGER</type> <updatable>true</updatable> <nullable>false</nullable> @@ -188,8 +170,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>a principal column; 1 means true, 0 means false</description> <standard>true</standard> </column> - <column> - <name>std</name> + <column name="std"> <type>INTEGER</type> <updatable>true</updatable> <nullable>false</nullable> @@ -199,16 +180,14 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. </column> </table> <table name="keys" description="description of foreign keys in this tableset"> - <column> - <name>key_id</name> + <column name="key_id"> <type>VARCHAR</type> <size>64</size> <updatable>true</updatable> <description>unique key to join to TAP_SCHEMA.key_columns</description> <standard>true</standard> </column> - <column> - <name>from_table</name> + <column name="from_table"> <type>VARCHAR</type> <size>128</size> <updatable>false</updatable> @@ -216,8 +195,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>the table with the foreign key</description> <standard>true</standard> </column> - <column> - <name>target_table</name> + <column name="target_table"> <type>VARCHAR</type> <size>128</size> <updatable>false</updatable> @@ -225,16 +203,14 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>the table with the primary key</description> <standard>true</standard> </column> - <column> - <name>description</name> + <column name="description"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> <description>describes keys in the tableset</description> <standard>true</standard> </column> - <column> - <name>utype</name> + <column name="utype"> <type>VARCHAR</type> <size>255</size> <updatable>true</updatable> @@ -243,16 +219,14 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. </column> </table> <table name="key_columns" description="description of foreign key columns in this tableset"> - <column> - <name>key_id</name> + <column name="key_id"> <type>VARCHAR</type> <size>64</size> <updatable>true</updatable> <description>key to join to TAP_SCHEMA.keys</description> <standard>true</standard> </column> - <column> - <name>from_column</name> + <column name="from_column"> <type>VARCHAR</type> <size>64</size> <updatable>false</updatable> @@ -260,8 +234,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>column in the from_table</description> <standard>true</standard> </column> - <column> - <name>target_column</name> + <column name="target_column"> <type>VARCHAR</type> <size>64</size> <updatable>false</updatable> diff --git a/TASMAN-core/src/main/resources/schema_definition/tap_schema-1_1.xml b/TASMAN-core/src/main/resources/schema_definition/tap_schema-1_1.xml index 6b36a0ff4769f5f3cfbeecbd9188bbc82f26eaf6..f5b8a73674b87353845c912d75a364c10b3905ae 100644 --- a/TASMAN-core/src/main/resources/schema_definition/tap_schema-1_1.xml +++ b/TASMAN-core/src/main/resources/schema_definition/tap_schema-1_1.xml @@ -21,39 +21,34 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. --> -<schema name="tap_schema" version="1.1" extends="1.0"> +<schema name="tap_schema" version="1.1" extends="1.0" datatype="VOTable"> <table name="tables"> - <column> - <name>table_index</name> + <column name="table_index"> <type>INTEGER</type> <updatable>true</updatable> <standard>true</standard> </column> </table> <table name="columns"> - <column> - <name>arraysize</name> + <column name="arraysize"> <type>VARCHAR</type> <updatable>false</updatable> <key>arraysize</key> <size>255</size> <standard>true</standard> </column> - <column> - <name>xtype</name> + <column name="xtype"> <type>VARCHAR</type> <updatable>true</updatable> <size>255</size> <standard>true</standard> </column> - <column> - <name>column_index</name> + <column name="column_index"> <type>INTEGER</type> <updatable>true</updatable> <standard>true</standard> </column> - <column> - <name>indexed</name> + <column name="indexed"> <type>BOOLEAN</type> <updatable>false</updatable> <nullable>false</nullable> @@ -62,8 +57,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>an indexed column</description> <standard>true</standard> </column> - <column> - <name>principal</name> + <column name="principal"> <type>BOOLEAN</type> <updatable>true</updatable> <nullable>false</nullable> @@ -71,8 +65,7 @@ Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. <description>a principal column</description> <standard>true</standard> </column> - <column> - <name>std</name> + <column name="std"> <type>BOOLEAN</type> <updatable>true</updatable> <nullable>false</nullable>