dr. philip cannata 1 doug tolbert unisys [email protected] [email protected] doug tolbert has...

10
Dr. Philip Cannata Doug Tolbert Unisys [email protected] Doug Tolbert has been involved with OMG since the early 1990s. He is a member of the Board of Directors and currently holds a Platform seat on the Architecture Board. Doug was a principal member of the team that developed CWM, and he has made contributions to many OMG platform (UML, MOF, XMI, IMM, SOA, Alf, and ADTF) and domain (Finance, Life Science, Insurance) over the years. He is currently active on the UML Simplification and IMM submission teams. On the AB, Doug works to ensure that OMG specifications are clear and understandable in both their human- and machine-readable forms.

Upload: ashlee-lee

Post on 25-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Dr. Philip Cannata 1

Doug [email protected] 

Doug Tolbert has been involved with OMG since the early 1990s. He is a member of the Board of Directors and currently holds a Platform seat on the Architecture Board. Doug was a principal member of the team that developed CWM, and he has made contributions to many OMG platform (UML, MOF, XMI, IMM, SOA, Alf, and ADTF) and domain (Finance, Life Science, Insurance) over the years. He is currently active on the UML  Simplification and IMM submission teams. On the AB, Doug works to ensure that OMG specifications are clear and understandable in both their human- and machine-readable forms.

Dr. Philip Cannata 2

emp_projectdeadline

deptdeptnodnameloc

projectpnumpname

empjobsalcomm

0..10..* 0..10..*

0..*

0..*

0..*

0..*

0..1

0..1

0..1

0..1

personnamess_num

customercontact_info

mgr

SIM - Semantic Data Management

Dr. Philip Cannata 3

emp_projectdeadline

deptdeptnodnameloc

projectpnumpname

empjobsalcomm

0..10..* 0..10..*

0..*

0..*

0..*

0..*

0..1

0..1

0..1

0..1

personnamess_num

customercontact_info

CLASS person( ss_num: INTEGER, REQUIRED; name: STRING; );

SUBCLASS emp OF person( job : STRING; mgr : emp, SV, INVERSE IS employees; sal : INTEGER; comm : INTEGER; dept : dept, SV, INVERSE IS employees;);

CLASS dept ( deptno : INTEGER, REQUIRED; dname : STRING; loc : STRING; employees : emp, MV, INVERSE IS dept;);mgr

SIM - Semantic Data Management

Dr. Philip Cannata 4

CLASS person( ss_num: INTEGER, REQUIRED;

name: STRING;);

SUBCLASS emp "Employees of a company" OF person(

job : STRING; mgr : emp, SV, INVERSE IS employees; employees : emp, MV, INVERSE IS mgr;

sal : INTEGER;comm : INTEGER;dept : department, SV, INVERSE IS employees;

);

INSERT emp ( ss_num:= 7369 , name := "SMITH" , job := "CLERK" , sal := 800 );INSERT emp ( ss_num:= 7499 , name := "ALLEN" , job := "SALESMAN" , sal := 1600 , comm := 300 );INSERT emp ( ss_num:= 7521 , name := "WARD" , job := "SALESMAN" , sal := 1250 , comm := 500 );INSERT emp ( ss_num:= 7566 , name := "JONES" , job := "MANAGER" , sal := 2975 );INSERT emp ( ss_num:= 7654 , name := "MARTIN" , job := "SALESMAN" , sal := 1250 , comm := 1400 );INSERT emp ( ss_num:= 7698 , name := "BLAKE" , job := "MANAGER" , sal := 2850 );INSERT emp ( ss_num:= 7782 , name := "CLARK" , job := "MANAGER" , sal := 2450 );INSERT emp ( ss_num:= 7788 , name := "SCOTT" , job := "ANALYST" , sal := 3000 );INSERT emp ( ss_num:= 7839 , name := "KING" , job := "PRESIDENT" , sal := 5000 );INSERT emp ( ss_num:= 7844 , name := "TURNER" , job := "SALESMAN" , sal := 1500 );INSERT emp ( ss_num:= 7876 , name := "ADAMS" , job := "CLERK" , sal := 1100 );INSERT emp ( ss_num:= 7900 , name := "JAMES" , job := "CLERK" , sal := 950 );INSERT emp ( ss_num:= 7902 , name := "FORD" , job := "ANALYST" , sal := 3000 );INSERT emp ( ss_num:= 7934 , name := "MILLER" , job := "CLERK" , sal := 1300 );

Dr. Philip Cannata 5

CLASS department "Departments of a company"

(

deptno : INTEGER, REQUIRED;

dname : STRING;

loc : STRING;

employees : emp, MV, INVERSE IS dept;

);

INSERT department ( deptno := 10 , dname := "ACCOUNTING" , loc := "NEW YORK" );

INSERT department ( deptno := 20 , dname := "RESEARCH" , loc := "DALLAS" );

INSERT department ( deptno := 30 , dname := "SALES" , loc := "CHICAGO" );

INSERT department ( deptno := 40 , dname := "OPERATIONS" , loc := "BOSTON" );

Dr. Philip Cannata 6

MODIFY emp ( dept := department WITH (deptno = 20) ) WHERE ss_num = 7369 ;

MODIFY emp ( dept := department WITH (deptno = 30) ) WHERE ss_num = 7499 ;

MODIFY emp ( dept := department WITH (deptno = 30) ) WHERE ss_num = 7521 ;

MODIFY emp ( dept := department WITH (deptno = 20) ) WHERE ss_num = 7566 ;

MODIFY emp ( dept := department WITH (deptno = 30) ) WHERE ss_num = 7654 ;

MODIFY emp ( dept := department WITH (deptno = 30) ) WHERE ss_num = 7698 ;

MODIFY emp ( dept := department WITH (deptno = 10) ) WHERE ss_num = 7782 ;

MODIFY emp ( dept := department WITH (deptno = 20) ) WHERE ss_num = 7788 ;

MODIFY emp ( dept := department WITH (deptno = 10) ) WHERE ss_num = 7839 ;

MODIFY emp ( dept := department WITH (deptno = 30) ) WHERE ss_num = 7844 ;

MODIFY emp ( dept := department WITH (deptno = 20) ) WHERE ss_num = 7876 ;

MODIFY emp ( dept := department WITH (deptno = 30) ) WHERE ss_num = 7900 ;

MODIFY emp ( dept := department WITH (deptno = 20) ) WHERE ss_num = 7902 ;

MODIFY emp ( dept := department WITH (deptno = 10) ) WHERE ss_num = 7934 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7902) ) WHERE ss_num = 7369 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7698) ) WHERE ss_num = 7499 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7698) ) WHERE ss_num = 7521 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7839) ) WHERE ss_num = 7566 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7698) ) WHERE ss_num = 7654 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7839) ) WHERE ss_num = 7698 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7839) ) WHERE ss_num = 7782 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7566) ) WHERE ss_num = 7788 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7698) ) WHERE ss_num = 7844 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7788) ) WHERE ss_num = 7876 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7698) ) WHERE ss_num = 7900 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7566) ) WHERE ss_num = 7902 ;

MODIFY emp ( mgr := emp WITH (ss_num = 7782) ) WHERE ss_num = 7934 ;

Dr. Philip Cannata 7

cd /cygdrive/c/Documents and Settings/Nicolette Cannata/My Documents/pcannata/UT/07 Fall 327e/07 Fall e327/07 Fall e327/Class Notes/20 SIM DB/WDB

$ java -cp "lib\je.jar;." wdb.WDB

WDB Simantic Database Project

Copyright 2006 University of Texas at Austin

DB Name: test DB Path: ./

WDB> source "scott-tiger-Enhanced.txt";

WDB>

Dr. Philip Cannata 8

WDB> from person retrieve * where true;

WDB> from emp retrieve * where true;

emp_projectdeadline

deptdeptnodnameloc

projectpnumpname

empjobsalcomm

0..10..* 0..10..*

0..*

0..*

0..*

0..*

0..1

0..1

0..1

0..1

personnamess_num

customercontact_info

Dr. Philip Cannata 9

WDB> from emp retrieve * where true; WDB> from department retrieve * where true;

WDB> from emp retrieve *, * of dept where true;

Dr. Philip Cannata 10

WDB> from emp retrieve ss_num, name, dname of dept, name of mgr, dname of dept of mgr where true;

emp_projectdeadline

deptdeptnodnameloc

projectpnumpname

empjobsalcomm

0..10..* 0..10..*

0..*

0..*

0..*

0..*

0..1

0..1

0..1

0..1

personnamess_num

customercontact_info