DTP Model Base Project Wiki
What is the process to propose a change to SQLModel model?
1. DTP model base committer accept proposals
a. The proposal can be accepted as UML model or b. Direct editing using Eclipse Ecore model editor. c. Code or patches on top of existing SQLModel. - Optional
2. Public proposal review - Offer DTP-DEV a best/commonly accepted proposal.
3. Model base committer will change UML model and generate new EMF code for documentation purpose.
4. Making necessary code change in various DTP projects which is impacted by the change.
5. Build and testing.
6. Enhancing WTP to DTP migration guide to help WTP adopter to migrate to DTP.
SQLModel Migration guide from WTP to DTP
1. SQLModel Namespace changes from:
org.eclipse.wst.rdb.models.sql - > org.eclipse.datatools.modelbase.sql
2. New SQL Model elements being considered (7/15/06) – SQL Catalog object
Our goal is to evaluate both proposals by considering migration impact to existing models and SQL spec vs implementation. Proposal 1:
(WTP existing adopter has to incorporate following changes in their code): old: database.getSchema() schema.setDatabase(database) new: ((NonCatalogDatabase)database).getSchema() schema.setCatalog((NonCatalogDatabase)database) or ((NonCatalogSchema)schema).setDatabase(database)
a. eliminates the need for migration, both at code and persisted resource level, for existing consumers of WTP as well as DTP by maintaining model compatibility.
b. introduces a Catalog element to address the need of vendors who support multiple catalogs (Sybase, SQLServer).
c. does not compel vendors who do not support multiple catalogs (DB2, Oracle, Informix, Derb, etc) to model the Catalog.
3. OMG is also propose enhancement and changes on SQLModel as part of their plan to adopt SQLModel from DTP.
4. Other changes which is already in WTP, will be in DTP when item #2 is finalized
a. Remove SQL 99 spec content from the UML model, replaced with just a reference.
OMG SQLModel discussion 8/04/06
Following is a list of questions related to SQLModel which was discussed during our meeting today.
1. Table can have 0 column
2. Constraint is modeled as a enumerated value in CWM, unlike 3 attributes defined for Constraint object in DTP SQLModel. Attributes for Constraint
SQL Spec. 10.8 .......
3) If <constraint check time> is not specified, then INITIALLY IMMEDIATE is implicit. 4) Case: a) If INITIALLY DEFERRED is specified, then: i) NOT DEFERRABLE shall not be specified. ii) If DEFERRABLE is not specified, then DEFERRABLE is implicit.
3. Question regarding why Trigger object in SQLModel need a timestamp attribute? And why a Trigger object can have 1..n SQLStatement? - Hemant's action item.
Note: Some WTP adopted commercial product maps the entire group of statements to one SQLModel SQL statement.
User Defined Type - No issue after the short discussion.
5. Table - What is the purpose for ReferenceType enum?
'Attributes for ReferenceType'
ModelBase Plan for DTP V1.0
|Proposal to add Catalog SQL element||Alex/Hemant||3|
|Enhancement proposal from OMG||Alex/Hemant||5|
|Regen SQLModel using Eclipse V3.2.x||Hemant||2|
|Single jarring SQLModel and Database Definition model.||Larry||2|
|Public API||Larry/Der Ping||4|