SQL*Modeler forgets check constraint names

SQL*Modeler Version 2.0.0. Build 584
If I create named check constraints under the Relational Model/Tables/Table level Constraints then generate the model I have the constraints correctly named. Exit the model and reload, the constraints appear to be correct but when I look at the physical model under tables/table check constraints I see generated names such as TCC4, TCC5 etc.
At this point I can change the name but this is not stored it is just thown away.
If I go back to Relational Model/Tables/Table level Constraints and simply Apply no changes then the constraint names appear correctly in the generated model. However, I have many tables and this is not a practial solution each time I generate the model.

Hi Ian,
thanks for feedback. Fix will be available in next release.
Philip

Similar Messages

  • Check Constraint names aren't synced when engineering to logical

    Just learned about this tool at OOW and ran into an issue involving check constraint names being compared but not synced when engineering from the relational model to the logical model. When I set the constraint names in the logical model (and perform one last "Engineer to Logical Model") after that the compare dialog shows the table and entities match. Is this a bug?
    Steps to reproduce:
    1. importing a relational data model from data dictionary which contains a table with a column level check constraint
    2. perform "Engineer to Logical model" to produce the logical model
    Issue:
    Perform another "Engineer to Logical model" which will show the table with the column level check constraint as being out of sync with the logical model's equivalent entity, when you drill down into the diff in the compare dialog box you see the check constraint name has a value in the relational model and the name is null in the logical model
    Verify:
    Looking in logical model at the constraint (<Entity>/Attributes/Attribute Properties/Default and Constraint/Constraint Name) the value is empty
    Work Around:
    Set the constraint name in the spot from verify above and perform "Engineer to Logical model" twice. The first time it will show the same issue, the second time it will show the table and entity match

    Hi Bo,
    thanks for feedback. It's fixed now and you'll get the fix in version 3.0.
    Another( probably better workaround) - in engineering dialog - "Compare/Copy options" tab - uncheck "Don't use for new objects" option.
    Philip

  • PL/SQL Function to check user name and password

    Hi,
    I am new to PL/SQL. I have a table that stores user name and password. I want to write a PL/SQL function that checks if the entered user name and password is correct, by validation against the values in the table... Can someone help me with the code? Both user name and password is varchar2

    First of all, I believe you mean a procedure that would check the application username and password. Fot, if you mean a PL/SQL procedure, that runs in the database, and that means it has to be executed after the client application is connected to the database.
    Maybe you need a procedure like this:
    procedure check_pass(p_user varchar2, p_pass varchar2) is
    pragma autonomous_transaction;
    v_passwd varchar2(200);
    begin
    select passwd into v_passwd
    from password_table
    where user_name=p_user;
    if v_passwd!=p_pass then
    update password_table set
    last_unsucc_logon=sysdate
    ,unsucc_logon_n=nvl(unsucc_logon_n,0)+1
    where user_name=p_user;
    commit;
    raise_application_error(-20101,'Invalid username/password!');
    end if;
    exception
    when no_data_found then
    raise_application_error(-20101,'Invalid username/password!');
    end;
    Study this piece of code and see if this will do.

  • SQl*Modeler - foreign key amendment error

    SQl*Modeler 2.0.0 Build 584 (Windows)
    Oracle 10.2.0.4 Solaris
    If I change an existing foreign key to simply change the delete rule (from say CASCADE to RESTRICT) it changes in memory just fine. If I generate the DDL the change has happened and I get the expected DDL.
    However, I then save the model, exit SQL*Modeler, start SQL*Modeler and check the foreign key the change has been lost.
    I can workaround this by changing the name of the foreign key and the change is saved correctly. Feature ?
    Ian

    Hi Ian,
    I logged bug for that.
    You can use foreign key dialog to do that change without need to change the name - just double-click on FK line or presentation in the browser.
    Philip

  • Check constraint in Data Modeler

    Hi
    I have a problem with merging two logical models.
    in first I have a table with column ranking number(2),
    in second model I modify this column:
    ranking varchar2(10) default 'A'
    and create check constraint ranking_ch:
    ranking..... check ('A', 'B',.....)
    Then I compare models I have only
    alter table....
    modify ranking varchar2(10) default 'A'
    but I have not constraint ranking_ch.
    Why?

    Thanks.
    Another topic:
    I have a problem with reverse engineering with Data Modeler:
    1.I have a simple script (*.sql):
    create table jw
    (a number(2),
    b varchar2(30)
    2.I use function file/import/ddl file - on Relational diagram is OK:
    I have table with two columns.
    3. I use function Engineer to Logical Model and I see entity with:
    a numeric_0_2_0
    b varchar_0_0_30
    Modeler creates two new domains.
    Why?

  • Domain check constraint using column name

    Hello,
    in the domain administration of Data Modeler, I defined a domain "age",
    and set it to logical type "Integer". Now I want to define a check constraint
    for that domain, saying, that every attribute of domain "age" must have
    values greater than 18.
    But how should I specify the column name for that check-constraint, since
    I cannot know now, to which columns this domain will be applied to, and
    these columns could have different names!
    I tried {column} > 18 and hoped that {column} might be substituted by
    the appropriate column name when generating DDL but it was not,
    the DDL contained "check ( {column} > 18 ) which did of course not work.
    Does anybody have an idea?

    Thanks a lot, that solved the problem. I noticed additionally, that %COLUMN% is case sensitive, so %COLUMN% gets substituted by the column name in the DDL, while %column% does not.

  • Check constraint generation in physical model in 3.1.1.

    My question: Is it possible to set Use Domain Constraints ticked as default (or another way to get them in DDL) if the Domain with Check constraint is set for the column. I assume it's logical as if I bind a column to the domain then use the domain constraint as default policy. It's not a big deal if you have a few but in my case I do re-modelling just for physical model level and I have tens column in the tables based on a domain. So, I have first to set the domain as a column type and then in another screen tick Use Domain Constraints
    Thank you

    Hi,
    Is it possible to set Use Domain Constraints ticked as default (or another way to get them in DDL) if the Domain with Check constraint is set for the column.No it's not possible I logged bug for that.
    So, I have first to set the domain as a column type How do you set domain as data type? Do you have more than one columns using the same domain? In such cases you can use domain dialog (in the browser) and "Used in" page in order to assign domain to several columns/attributes at once.
    You can use the script below to set use domain constraints on columns that use domain as data type
    Philip
    var model;
    tables = model.getTableSet().toArray();
    for (var t = 0; t<tables.length;t++){
    table = tables[t];
    columns = table.getElements();
    for (var i = 0; i < columns.length; i++) {
         column = columns;
         if(column.getUse() == 0 && column.getDomain()!=null){
              if(!column.getUseDomainConstraints()){
                   column.setUseDomainConstraints(true);
                   table.setDirty(true);

  • Getting the constraint name with sql%bulk_exceptions

    Hello folks,
    Is there any way to get the constraint name that was violated using sql%bulk_exceptions.
    I've a parent table and it's two children tables. When I try to delete from parent using forall, save exceptions, I want to know what constraint violated at what iteration of a bulk operation.
    I've following script.
    set serveroutput on
    drop table chld;
    drop table chld2;
    drop table prnt;
    create table prnt(n number primary key);
    insert into prnt select level from dual connect by level<11;
    create table chld(cn number references prnt(n));
    insert into chld select level from dual connect by level<3;
    create table chld2(cn number references prnt(n));
    insert into chld2 select level*3 from dual connect by level<3;
    select * from prnt;
    select * from chld;
    select * from chld2;
    commit;
    declare
      type t_prnt_obj is table of prnt.n%type index by pls_integer;
      t_prnt_tab t_prnt_obj;
      l_exp_cnt integer;
    begin
      select n bulk collect into t_prnt_tab from prnt order by n;
      dbms_output.put_line('t_prnt_tab.count -- '||t_prnt_tab.count);
      forall i in t_prnt_tab.first .. t_prnt_tab.last save exceptions
        delete prnt where n = t_prnt_tab(i);
    exception
      when others
      then
        l_exp_cnt := sql%bulk_exceptions.count;
        dbms_output.put_line('Total exceptions:'|| l_exp_cnt);
        for k in 1 .. l_exp_cnt
        loop
          dbms_output.put_line('Error '||k|| ' - Collection Index: '||sql%bulk_exceptions(k).error_index||' - Error Code: '|| sql%bulk_exceptions(k).error_code||' - Message: '||SQLERRM(- sql%bulk_exceptions(k).error_code) );
        end loop;
    end;I get the output as below:
    t_prnt_tab.count -- 10
    Total exceptions:4
    Error 1 - Collection Index: 1 - Error Code: 2292 - Message: ORA-02292: integrity constraint (.) violated - child record found
    Error 2 - Collection Index: 2 - Error Code: 2292 - Message: ORA-02292: integrity constraint (.) violated - child record found
    Error 3 - Collection Index: 3 - Error Code: 2292 - Message: ORA-02292: integrity constraint (.) violated - child record found
    Error 4 - Collection Index: 6 - Error Code: 2292 - Message: ORA-02292: integrity constraint (.) violated - child record foundInstead, I want to get in output with the constraint_name added. Like below:
    t_prnt_tab.count -- 10
    Total exceptions:4
    Error 1 - Collection Index: 1 - Error Code: 2292 - Message: ORA-02292: integrity constraint (GK.CP_FK) violated - child record found
    Error 1 - Collection Index: 1 - Error Code: 2292 - Message: ORA-02292: integrity constraint (GK.CP_FK) violated - child record found
    Error 1 - Collection Index: 1 - Error Code: 2292 - Message: ORA-02292: integrity constraint (GK.C2P_FK) violated - child record found
    Error 1 - Collection Index: 1 - Error Code: 2292 - Message: ORA-02292: integrity constraint (GK.C2P_FK) violated - child record foundIs it possible, if so how do I get it?
    Thanks in advance for you help.
    Girish

    This is phenomenal, Manik. It surely eased the work am doing at the moment.
    Thanks to you and many more to, Tom!
    Cheers!
    Girish

  • Constraint names - Modeling Naming Options

    Can anyone advise me which group(under Model Options -> Naming Conventions) controls the max code length for the below in a physical data model.
    FK Constraints
    PK Constraints
    UK Constraints
    The context sensitive help from this window does not describe what physical objects some of these impact. For instance, I thought Reference would control FK Constraints, but it is not. I have FK Constraints being generated longer than 30 characters, which is the max that Oracle allows. Other objects is a catch all that I did not restrict to 30 as that then shortens lot of other things that I don't even know and might want to.
    I tried looking in the PD Meta model help under "Libraries -> PdPDM -> Model Options", but I don't understand much of what is described there.
    I have following in the Oracle 11g DBMS Resource file under the branch "ORA11GR1::Script\Objects\Reference\ConstName".
    I need this so that I have FK constraints generated with a sequence number suffix. Maybe the Model naming options don't apply when this is used and I need to figure out the syntax to chop the table name so that to 24 as FK_ and _1 will use up 6 characters in the constraint name.
    FK_%TABLE%_%REFRNO%

    Hi Stefan,
    It is still ending up generating Unique key constraint names longer than 30 characters.
    I do have a rule for constraint name creation as well.
    So right now in my Oracle 11 Resource file, I have this.
    ORA11GR1::Script\Objects\Key\ConstName    is set to UK_%TABLE%_%.U-18.1:AKEY%
    I am wondering if I should change it to UK_%U.25:TABLE%_%.U-18.1:AKEY%   so that it takes only 25 characters from table name and that is restricted to 30 characters max.
    I also have MaxConstLen at two levels and both are set to 30
    ORA11GR1::Script\Objects
    ORA11GR1::Script\Objects\Key
    It is getting really frustrating that I cannot get same results as I did with Erwin DDL generation. I wish SAP made it easy and had a setting for Constraint names in Model Naming options.

  • How to restrict the generated constraint name with Model Driven Development

    Hello
    I have a database that has tables INSTRUMENT and EXCHANGE. There has to be a foreign key field called primaryExchange inside INSTRUMENT table that points to the ID of EXCHANGE table. In my fml file, my tables are called Instrument and Exchange. When I create this relation between the two tables in the model and deploy it to LCDS, it tries to create a FK constraint by the name of "FK_Instrument_primaryExchange_TO_Exchage" which fails with ORA-00972 -  Identifier is too long. Obviously the generated FK name is more than 30 chars and hence the oracle erorr. The only way to resolve this is to reduce the name of the table/field in the fml file while keeping the database table/field name intact. So the FK might be called FK_Instr_primExch_TO_Exch and which will work but the problem is that in the fml model file, I am loosing the meaningful names of the tables and thus the data services that are generated have truncated names. For this particular example, the truncated name might still be okay but in a large database, it is causing much grief. I would really prefer decent descriptive names for table like MarketOrder instead of MO. Pls advise how I can customize the generated constraint name while keeping the tables names still informative.
    Now I edit my DB tables to have a field called ID which is unique to that table but while deploying I get hibernate and fiber exceptions :-
    2011-03-10 16:30:44,042 INFO  [STDOUT] (http-0.0.0.0-8180-1) [UlltraWebServer]Exception trying to build hibernate's session factory: org.hibernate.MappingException: Repeated column in mapping for entity: UlltraWebServer.package4.Client column: ID (should be mapped with insert="false" update="false")
    2011-03-10 16:30:44,116 INFO  [STDOUT] (http-0.0.0.0-8180-1) [UlltraWebServer]Error instantiating application scoped instance of type 'fiber.data.assemblers.FiberAssembler' for destination 'UlltraWebServer.Holiday'.
    org.hibernate.MappingException: Repeated column in mapping for entity: UlltraWebServer.package4.Client column: ID (should be mapped with insert="false" update="false")
    2011-03-10 16:30:44,229 INFO  [STDOUT] (http-0.0.0.0-8180-1) [UlltraWebServer]Exception trying to build hibernate's session factory: org.hibernate.MappingException: Repeated column in mapping for entity: UlltraWebServer.package4.Client column: ID (should be mapped with insert="false" update="false")
    The above suggests that it does not like the same name for the fields in multiple tables, they all have to be unique like Holiday.holidayID, Client.clientID etc which causes the above constraint length violation issue..
    thanks

    You should be able to achieve what you want with an explicit criteria filter on your entity.
    In the Modeler Design view, select your entity and add a filter. You'll see that there is a an "Order By" field in the Properties view.
    Enter the value you want there and then save and redeploy your model. When you don't enter anything in the "Criteria" field, you create a getAll fill.
    Here's an example of an entity created with this type of filter; it is sorted by price in ascending order:
    <entity name="Product" persistent="true">
      <annotation name="ServerProperties" ServerType="LCDS"/>
      <annotation name="DMS" Table="PRODUCT"/>
      <annotation name="RDS" introspectedColumns="PRODUCTID,DESCRIPTION,PRICE,PRODUCTNAME"/>
      <annotation name="VisualModeler" width="115" height="110" x="364" y="203"/>
      <id name="productid" type="integer">
      <annotation name="DMS" ColumnName="PRODUCTID"/>
      </id>
      <property name="description" type="string" length="255">
      <annotation name="DMS" ColumnName="DESCRIPTION"/>
      </property>
      <property name="price" type="float">
      <annotation name="DMS" ColumnName="PRICE"/>
      </property>
      <property name="productname" type="string" length="255">
      <annotation name="DMS" ColumnName="PRODUCTNAME"/>
      </property>
      <filter name="MyFill" order="price ASC"/>
      </entity>

  • Generating check constraint

    Hi I've got a problem and was wondering if anyone could shed some light on the problem.
    Recently we started using designer 10g. When I generate a table using "generate database from server model" all the columns which are defined by a domain and have a check constraint, due to the specified values in the domain, are no longer part of the create statement of the table. Designer seems to put them in the constraint file as part of an alter table along with a weird name.
    Is it possible, as in designer 2000, to make the check constraint part of the create statement in 10g and making it a sys constraint ? And how ?
    I've been looking around but can't seem to find the solution (or the problem causing it).
    Thnx for any help on the subject.

    Well we are planning to migrate our old designer (designer 2000) to the 10g version. One of the things that was possible in designer 2000 was defining a domain for a column and when you generated the SQL DDL it would generate a check constraint but as part of the create table statement.
    eg:
    type VARCHAR2(2) NOT NULL CHECK ( opvolging_type IN 'VC' , 'NL' , 'WW' , 'LB' ) ),
    The check constraint would then be defined as a check constraint with name SYS...
    Apparently some ppl at my company do not want to use explicit names for check constraints and they were wondering if it was at all possible to make them part of the create table script again.

  • SQL*Modeler - creation of VARRAY or Collection Type of scalar type errors

    In SQl*Modeler 2.0.0 Build 584, I can create either VARRAY or Collections. These work fine for usre defined structured types but I encounter huge problems when I use a simple scalar type of number or varchar2.
    For instance I create a new collection type, give it a name, specify its a collection (or VARRAY, same problem) then click datatype. On the select Data type box I select logical type. A new window opens, I select VARCHAR from the drop down list.
    Enter the size 15, everything appears fine. I click OK, the select data type screen now shows a logical type of VARCHAR(15).
    So far I'm happy. I generate the DDL, everthing is fine, the DDL contains my collection of VARCHAR2(15).
    Now I save the model, close it and re-open the same model. My collection is now of VARCHAR so the next time I generate it will get an error because the syntax is wrong because it has no length. Same problem happens when selecting a NUMBER, looses the precision and scale but at least that command still works, just with a maximum numeric value.
    Ok, so lets try creating distinct types. Why we can't access domains when specifying types from here remains a mystery to me.
    So I create a distinct type Varchar2_15 which is of Logical type VARCHAR and give it a size. Similarly, create another distinct type of NUMERIC_22_0 precision 22 scale 0. This seems to get around the problem of losing the data but the DDL generated shows the datatype to be either VARCHAR (not VARCHAR2) and NUMERIC(22), not number(22). Now I know that VARCHAR currently maps to VARCHAR2 but isn't guaranteed to in the future (even though its been like that since V6) and NUMERIC is just an alias for NUMBER but its going to confuse a lot of java people and its totally inconsitent and just plain wrong.
    Any suggestions or workarounds will be gratefully received.
    Ian Bainbridge

    Hi Ian,
    I see a bug in save/load of collection types and as result no size or precision and scale information. It's fixed in new release.
    However I cannot reproduce the problem with distinct types - I have them generated as varchar2 and number (this is for Oracle).
    You can check:
    - database you use in DDL generation - I got varchar and numeric for MS SQL Server;
    - mapping of logical types VARCHAR and NUMERIC to native types in "Types Administration".
    Philip
    PS - I was able to reproduce it - I looked at wrong place - DDL generation for collection types is broken - it's ok for columns. I logged bug for that.
    Edited by: Philip Stoyanov on Jun 28, 2010 8:55 PM

  • Peculiar problem in oracle 10g  on AIX 5.3.0 With Check constraints

    Hi Every One,
    I am facing peculiar problem in oracle 10.2.0.1.0,AIX 5.3.0. I created table with check constraints like this
    create table test1 (name nvarchar2(1),check (name in('Y','N')));
    SQL> create table test1 (name nvarchar2(1),check (name in('Y','N')));
    Table created.
    SQL> insert into test1 values ('Y');
    1 row created.
    SQL> COMMIT;
    SQL> select from test1 where name = 'Y';* Why this statement is n't working
    no rows selected
    SQL> select * from test1;
    N
    Y
    ANOTHER INTERSTING ONE IS
    SQL> select * from test1 where name in('Y'); Why this statement is n't working
    no rows selected
    SQL> select * from test1 where name in('Y','Y'); it's working
    N
    Y
    SQL> select * from test1 where name in('','Y'); it's working
    N
    Y
    SQL> select * from test1 where name in('7','Y'); it's working
    N
    Y
    Like
    SQL> select * from test1 where name like 'Y'; it's not working
    no rows selected
    I created a table without check constraints
    SQL> create table test2 (name nvarchar2(1));
    Table created.
    SQL> insert into test2 values ('Y');
    1 row created.
    SQL> select * from test2;
    N
    Y
    SQL> select * from test2 where name ='Y'; it's working
    N
    Y
    SQL> select * from test2 where name like 'Y'; it's working
    N
    Y
    Database Details
    NLS_LANGUAGE AMERICAN
    NLS_TERRITORY AMERICA
    NLS_CURRENCY $
    NLS_ISO_CURRENCY AMERICA
    NLS_NUMERIC_CHARACTERS .,
    NLS_CHARACTERSET WE8MSWIN1252
    NLS_CALENDAR GREGORIAN
    NLS_DATE_FORMAT DD-MON-RR
    NLS_DATE_LANGUAGE AMERICAN
    NLS_SORT BINARY
    NLS_TIME_FORMAT HH.MI.SSXFF AM
    PARAMETER VALUE
    NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
    NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
    NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
    NLS_DUAL_CURRENCY $
    NLS_COMP BINARY
    NLS_LENGTH_SEMANTICS BYTE
    NLS_NCHAR_CONV_EXCP FALSE
    NLS_NCHAR_CHARACTERSET AL16UTF16
    NLS_RDBMS_VERSION 10.2.0.1.0
    Why it's happening. Whehter check constraint is valid or not in Equallity operator and like and in .
    Whereever we using single character column with check constraint,it's working with Equality operator and like and in.
    IT'S WORKING FINE WITHOUT CHECK CONSTRAINTS.WE HAVE TWO AIX MACHINES WITH ORACLE10G.THE SAME PROBLEM OCCURING IN TWO MACHINES
    PLEASE HELP ME .
    THANK YOU,
    WITH REGARDS,
    N.VINODH

    h
    Edited by: user3266490 on Dec 3, 2008 2:30 AM

  • SQL*Modeler generation DDL sequence

    SQL*Modeler Version 2.0.0. Build 584
    In my data model I have a dozen or so External tables and corresponding PUBLIC synonyms to each of them.
    The generated script from SQL*Modleler is sequenced by types, tables,views, sequences, synonyms(both public and private), directories, external tables, triggers (and probably some other things that I am not using).
    So at the end of running my generation script I always check for rows in DBA_OBJECTS for rows with status='INVALID', hoping for none of course. But because synonyms are created before my external tables the synonyms are invalid. No big deal, as soon as I access the synonym it will recompile anyway but it's a bit disconcerting for the DBA's implementing this model to have invalid objects.
    Is there a good reason why synonyms are generated before External tables or is this just an oversight?
    I also have a similar problem with types which are used cross schema because there is no way to grant the schema a privilege on a type ( I use an end of script option against the first table to do this but of course the types were invalid up until the point of granting execute on the parent type which recompiles the type but again leaves the synonym invalid). This could only be solved by having an option against the type to grant privileges as per tables. Would be nice to have.
    Regards
    Ian

    Hello,
    Is there a way to force Data Modeler (I am using version 4.0.2.840) to put a schema name in front of a table name that a trigger is defined on?
    Unfortunately there is not.  I've logged a bug on this.
    Thanks for reporting the problem.
    David

  • URGENT-- cannot see   sql modeler contents (xml file)

    All,
    I have tried to open up a model which has been developed with earlier versions of sql modeler.
    below, I have copied the contents of the calling XML file for your comments,.
    it seems like 2.xx version and somehow it shows empty.! I searched through the sub folders and there are 100s of xml files.
    I tried 1.5.x and latest version of sql modeler no luck so far. what am I missing or any workaround please..
    thanks
    ali
    ========================
    *<?xml version="1.0" encoding="UTF-8" ?>*
    *<model version="2.0">*
    *     <version version="3.2" design_id="C6FFE67F-9E2B-07CE-8B7A-C790E645720B" />*
    *     <object>*
    *          <comment></comment>*
    *          <notes></notes>*
    *          <alter type="created">*
    *               <user>hdai</user>*
    *               <timestamp>2009-05-31 08:30:30</timestamp>*
              </alter>
              <alter type="changed">
                   <user>hdai</user>
                   <timestamp>2009-06-22 10:17:09</timestamp>
              </alter>
         </object>
         <engineering_params delete_without_origin="false" engineer_coordinates="true" engineer_generated="true" show_engineering_intree="false" apply_naming_std="false" use_pref_abbreviation="true" upload_directory="" />
         <eng_compare show_sel_prop_only="true" not_apply_for_new_objects="true" exclude_from_tree="false">
              <entity_table>
                   <property name="Name" selected="true" />
                   <property name="Short Name / Abbreviation" selected="true" />
                   <property name="Comment" selected="true" />
                   <property name="Comment in RDBMS" selected="true" />
                   <property name="Notes" selected="true" />
                   <property name="TempTable Scope" selected="true" />
                   <property name="Table Type" selected="true" />
                   <property name="Structured Type" selected="true" />
                   <property name="Type Substitution (Super-Type Object)" selected="true" />
                   <property name="Min Volumes" selected="true" />
                   <property name="Expected Volumes" selected="true" />
                   <property name="Max Volumes" selected="true" />
                   <property name="Growth Percent" selected="true" />
                   <property name="Growth Type" selected="true" />
                   <property name="Normal Form" selected="true" />
                   <property name="Adequately Normalized" selected="true" />
              </entity_table>
              <attribute_column>
                   <property name="Name" selected="true" />
                   <property name="Data Type" selected="true" />
                   <property name="Data Type Kind" selected="true" />
                   <property name="Mandatory" selected="true" />
                   <property name="Default Value" selected="true" />
                   <property name="Use Domain Constraint" selected="true" />
                   <property name="Comment" selected="true" />
                   <property name="Comment in RDBMS" selected="true" />
                   <property name="Notes" selected="true" />
                   <property name="Source Type" selected="true" />
                   <property name="Formula Description" selected="true" />
                   <property name="Type Substitution" selected="true" />
                   <property name="Scope" selected="true" />
              </attribute_column>
              <key_index>
                   <property name="Name" selected="true" />
                   <property name="Comment" selected="true" />
                   <property name="Comment in RDBMS" selected="true" />
                   <property name="Notes" selected="true" />
                   <property name="Primary Key" selected="true" />
                   <property name="Attributes/Columns" selected="true" />
              </key_index>
              <relation_fk>
                   <property name="Name" selected="true" />
                   <property name="Comment" selected="true" />
                   <property name="Comment in RDBMS" selected="true" />
                   <property name="Notes" selected="true" />
              </relation_fk>
              <entityview_view>
                   <property name="Name" selected="true" />
                   <property name="Comment" selected="true" />
                   <property name="Comment in RDBMS" selected="true" />
                   <property name="Notes" selected="true" />
                   <property name="Structured Type" selected="true" />
                   <property name="Where" selected="true" />
                   <property name="Having" selected="true" />
                   <property name="User Defined SQL" selected="true" />
              </entityview_view>
         </eng_compare>
         <changerequests id="" />
         <design type="Data Types" id="2391D8C8-FEC6-9182-ED6C-6EAE53428D29" path_id="0" main_view_id="420C75F3-BD6B-8126-6EBA-050A1FC9BE54" should_be_open="true" is_visible="false">
              <name>DataTypes</name>
              <comment></comment>
              <notes></notes>
         </design>
         <design type="LogicalDesign" id="4A0EEC77-6A89-10AC-351F-172AA6998230" path_id="0" main_view_id="83AB3B8B-90C4-D6A9-291D-A65F781E85D9" should_be_open="true" is_visible="true">
              <name>Logical</name>
              <comment></comment>
              <notes></notes>
         </design>
         <design type="RelationalModel" id="1214B08E-6B1C-9449-2769-131F7637FD5C" path_id="1" main_view_id="11A685B9-D950-8186-6160-DDAD08DAC3C0" should_be_open="true" is_visible="false">
              <name>SMARTD</name>
              <comment></comment>
              <notes></notes>
         </design>
         <design type="RelationalModel" id="A61B461D-F897-0CBF-3924-4BC3D33F3D13" path_id="2" main_view_id="2F6C7BB5-3F13-8657-DD84-BAFEF664D2D8" should_be_open="true" is_visible="false">
              <name>SMARTD(2)</name>
              <comment></comment>
              <notes></notes>
         </design>
         <design type="Process Model" id="7B21085F-9F75-F895-17AA-32592475602A">
              <name>Process Model</name>
              <comment></comment>
              <notes></notes>
         </design>
         <design type="Business Information" id="C0C1E8B7-7CDE-F345-C446-412C87D12639" path_id="0" main_view_id="null" should_be_open="true" is_visible="false">
              <name>Business Information</name>
              <comment></comment>
              <notes></notes>
         </design>
         <domains>
              <domain name="defaultdomains" role="uses" />
         </domains>
    </model>

    Philip:
    here is the Log file ( running modeler 2.0). hope it helps.
    thx
    ali
    ================LOG file==========
    2009-12-02 13:53:34,312 [main] INFO ApplicationView - Oracle SQL Developer Data Modeler Version: 2.0.0 Build: 570
    2009-12-02 13:53:36,890 [main] WARN AbstractXMLReader - There is no file with default domains (path: domains name: defaultdomains)
    2009-12-02 13:54:58,390 [Thread-3] ERROR FileManager - getDataInputStream: Can not read data
    java.io.FileNotFoundException: D:\1D_data\LADPSS\docs\reference\data_model\data_model\relational\1214B08E-6B1C-9449-2769-131F7637FD5C.xml (The system cannot find the path specified)
         at java.io.FileInputStream.open(Native Method)
         at java.io.FileInputStream.<init>(FileInputStream.java:106)
         at oracle.dbtools.crest.model.persistence.FileManager.getDataInputStream(Unknown Source)
         at oracle.dbtools.crest.model.persistence.FileManager.getDataInputStreamWithoutExtension(Unknown Source)
         at oracle.dbtools.crest.model.persistence.XMLPersistenceManager.getInputStreamFor(Unknown Source)
         at oracle.dbtools.crest.model.persistence.xml.AbstractXMLReader.getInputStreamFor(Unknown Source)
         at oracle.dbtools.crest.model.persistence.xml.AbstractXMLReader.recreateDesign(Unknown Source)
         at oracle.dbtools.crest.model.design.relational.RelationalDesign.load(Unknown Source)
         at oracle.dbtools.crest.model.design.Design.openDesign(Unknown Source)
         at oracle.dbtools.crest.swingui.ControllerApplication$OpenDesign$2.run(Unknown Source)
    2009-12-02 13:54:58,390 [Thread-3] ERROR AbstractXMLReader - Data inputstream is null (path: data_model/relational name: 1214B08E-6B1C-9449-2769-131F7637FD5C)
    2009-12-02 13:54:58,390 [Thread-3] ERROR FileManager - getDataInputStream: Can not read data
    java.io.FileNotFoundException: D:\1D_data\LADPSS\docs\reference\data_model\data_model\relational\A61B461D-F897-0CBF-3924-4BC3D33F3D13.xml (The system cannot find the path specified)
         at java.io.FileInputStream.open(Native Method)
         at java.io.FileInputStream.<init>(FileInputStream.java:106)
         at oracle.dbtools.crest.model.persistence.FileManager.getDataInputStream(Unknown Source)
         at oracle.dbtools.crest.model.persistence.FileManager.getDataInputStreamWithoutExtension(Unknown Source)
         at oracle.dbtools.crest.model.persistence.XMLPersistenceManager.getInputStreamFor(Unknown Source)
         at oracle.dbtools.crest.model.persistence.xml.AbstractXMLReader.getInputStreamFor(Unknown Source)
         at oracle.dbtools.crest.model.persistence.xml.AbstractXMLReader.recreateDesign(Unknown Source)
         at oracle.dbtools.crest.model.design.relational.RelationalDesign.load(Unknown Source)
         at oracle.dbtools.crest.model.design.Design.openDesign(Unknown Source)
         at oracle.dbtools.crest.swingui.ControllerApplication$OpenDesign$2.run(Unknown Source)
    2009-12-02 13:54:58,390 [Thread-3] ERROR AbstractXMLReader - Data inputstream is null (path: data_model/relational name: A61B461D-F897-0CBF-3924-4BC3D33F3D13)
    2009-12-02 13:54:58,390 [Thread-3] ERROR FileManager - getDataInputStream: Can not read data
    java.io.FileNotFoundException: D:\1D_data\LADPSS\docs\reference\data_model\data_model\processmodel\7B21085F-9F75-F895-17AA-32592475602A.xml (The system cannot find the path specified)
         at java.io.FileInputStream.open(Native Method)
         at java.io.FileInputStream.<init>(FileInputStream.java:106)
         at oracle.dbtools.crest.model.persistence.FileManager.getDataInputStream(Unknown Source)
         at oracle.dbtools.crest.model.persistence.FileManager.getDataInputStreamWithoutExtension(Unknown Source)
         at oracle.dbtools.crest.model.persistence.XMLPersistenceManager.getInputStreamFor(Unknown Source)
         at oracle.dbtools.crest.model.persistence.xml.AbstractXMLReader.getInputStreamFor(Unknown Source)
         at oracle.dbtools.crest.model.persistence.xml.AbstractXMLReader.recreateDesign(Unknown Source)
         at oracle.dbtools.crest.model.design.process.ProcessModel.load(Unknown Source)
         at oracle.dbtools.crest.model.design.Design.openDesign(Unknown Source)
         at oracle.dbtools.crest.swingui.ControllerApplication$OpenDesign$2.run(Unknown Source)
    2009-12-02 13:54:58,390 [Thread-3] ERROR AbstractXMLReader - Data inputstream is null (path: data_model/processmodel name: 7B21085F-9F75-F895-17AA-32592475602A)

Maybe you are looking for