Chapter 15 (Web): Object-Oriented Database Development

Slides:



Advertisements
Similar presentations
Chapter 7 © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition Jeffrey A. Hoffer, V. Ramesh, Heikki Topi.
Advertisements

Object Databases Baochuan Lu. outline Concepts for Object Databases Object Database Standards, Languages, and Design Object-Relational and Extended-Relational.
Object-Oriented Analysis and Design: Object Modeling – Class Diagrams
1 © Prentice Hall, 2002 Chapter 4: The Enhanced E-R Model and Business Rules Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
ODMG Standard: Object Model1 OBJECT-ORIENTED DATABASE SYSTEMS ODMG Standard: Object Model Susan D. Urban and Suzanne W. Dietrich Department of Computer.
1 © Prentice Hall, 2002 Chapter 3: Modeling Data in the Organization Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred.
SLIDE 1IS 257 – Fall 2004 Future of Database Systems University of California, Berkeley School of Information Management and Systems SIMS 257:
© 2005 by Prentice Hall 1 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 7 th Edition Jeffrey A. Hoffer, Mary B.
Object-Orientation in Query Languages By: Toan Nguyen Class: CS 157A.
SLIDE 1IS 257 – Spring 2004 Object-Oriented Database Development (Hoffer Chap 15) University of California, Berkeley School of Information.
Chapter 14 (Web): Object-Oriented Data Modeling
Object-Oriented Standards OMG OMDG. Overview Object Management Group (OMG) International non profit-making consortium founded in 1989 to address object.
1 © Prentice Hall, 2002 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B.
© 2007 by Prentice Hall 1 Chapter 15 (Web): Object-Oriented Database Development Modern Database Management 8 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
1 Pertemuan 6 The structure part of object data model (Lanjutan) Matakuliah: M0174/OBJECT ORIENTED DATABASE Tahun: 2005 Versi: 1/0.
Other Data Models. Text New edition (DBS the complete book): Chapter 4 Old edition (First course in DBS): –Section 2.1 –Section –Section 2.4.1,
CHAPTER 2: MODELING DATA IN THE ORGANIZATION © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition Jeffrey.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 11 Object and Object- Relational Databases.
1 Announcements Research Paper due Monday November 22.
Databases Illuminated Chapter 7 The Object-Oriented Model.
Chapter 4 Object and Object-Relational Databases (Part ½: Object-Oriented Concepts) Lecturer: H.Ben Othmen Department of Computer Science, Umm Al-Qura.
Chapter 14: Object-Oriented Data Modeling
Object-Oriented Database Design using UML and ODMG
© 2007 by Prentice Hall (Hoffer, Prescott & McFadden) 1 The Relational Model (Advanced)
Object and object-relational databases 1. Object databases vs. Object-relational databases Object databases Stores complex objects – Data + functions.
Advanced Database CS-426 Week 2 – Logic Query Languages, Object Model.
© 2007 by Prentice Hall (Hoffer, Prescott & McFadden) 1 Entity Relationship Diagrams (ERDs)
1 © Prentice Hall, 2002 CMIS564: E/R Modeling Dr. Bordoloi Based on Chapter 3; Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
1 © Prentice Hall, 2002 Chapter 3: Modeling Data in the Organization Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred.
Chapter 13 (Online): Object-Oriented Databases
Agenda  TMA03  M877 Block 3 Databases with Objects.
Chapter 21 A Object Data Model - Intro Copyright © 2004 Pearson Education, Inc.
Seminar #: 9 (Object Oriented Database Schema in ODL) Advanced Databases (CM036) 1 Seminar 9 : OODB Schema in ODL Purpose To understand how an OODB is.
Database Management COP4540, SCS, FIU Database Modeling A Introduction to object definition language (ODL)
Chapter 12: Designing Databases
1 Relational Databases and SQL. Learning Objectives Understand techniques to model complex accounting phenomena in an E-R diagram Develop E-R diagrams.
CHAPTER 13 (ONLINE): OBJECT-ORIENTED DATA MODELING © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
Object-Oriented Database Processing
1 © Prentice Hall, 2002 Chapter 14: Object-Oriented Data Modeling Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R.
7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
7-1 © Prentice Hall, 2007 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 15: Object-Oriented Data Modeling Modern Database Management 9 h Edition Jeffrey A.
7-1 © Prentice Hall, 2007 Week 5: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
Object Definition Language
1 © Prentice Hall, 2002 Chapter 5: Logical Database Design and the Relational Model Modern Database Management 6 th Edition Jeffrey A. Hoffer, Mary B.
Carnegie Mellon University © Robert T. Monroe Management Information Systems Data Modeling Management Information Systems Robert.
Databases Illuminated
Copyright © 2004 Pearson Education, Inc.. Chapter 21 Object Database Standards, Languages, and Design.
Seminar 10: OODB Design (Self-Study)
Seminar #: 10 (Object Oriented Database Design) Advanced DB Technologies (CG096) 1 Seminar 10 : OODB Design Purpose To understand how an OODB is structured.
Chapter 4 Extended Entity-Relationship (EER)Model Incorporates Set-subset Relationships Incorporates Generalization Hierarchies Constraints: Coverage Constraints:
The ODMG Standard for Object Databases
1 © Prentice Hall, 2002 ITD1312 Database Principles Chapter 4B: Logical Design for Relational Systems -- Transforming ER Diagrams into Relations Modern.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 5 (Part a): Logical Database Design and the Relational Model Modern Database Management.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) Modern Database Management 11 th Edition Jeffrey A. Hoffer, V. Ramesh, Heikki Topi © 2013 Pearson.
Object oriented DataBase Prof. Sin-Min Lee Department of Computer Science.
1 ODB Design Handling Inheritance in ODL M. Akhtar Ali School of Informatics.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 3: Modeling Data in the Organization Modern Database Management 9 th Edition Jeffrey.
Copyright © 2016 Ramez Elmasri and Shamkant B. Navathe Chapter 12 Outline Overview of Object Database Concepts Object-Relational Features Object Database.
1 ODMG: ODL and OQL This lecture is a short version of: Lecture 11 (on ODL) & Lecture 12 (on OQL) M. Akhtar Ali School of Informatics.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Lecture 3: Modeling Data in the Organization Modern Database Management 9 th Edition Jeffrey.
Chapter 4: Logical Database Design and the Relational Model
Chapter 5: Logical Database Design and the Relational Model
Chapter 12 Outline Overview of Object Database Concepts
Lec 3: Object-Oriented Data Modeling
Chapter 3: Modeling Data in the Organization
Chapter 15: Object-Oriented Database Development
Presentation transcript:

Chapter 15 (Web): Object-Oriented Database Development Modern Database Management 8th Edition Jeffrey A. Hoffer, Mary B. Prescott, Fred R. McFadden © 2007 by Prentice Hall

Objectives Definition of terms Create object-oriented database schemas in ODL Transform UML class diagrams to ODL schemas Identify type specifications for attributes, arguments, and operation return values Create objects and specify their attribute values Understand object-oriented database implementation steps Understand OQL syntax and semantics Use OQL to formulate queries Understand object-oriented database applications

Object Definition Language (ODL) Corresponds to SQL’s DDL (Data Definition Language) Specify the logical schema for an object-oriented database Based on the specifications of Object Database Management Group (ODMG)

Defining a Class class–keyword for defining classes attribute– keyword for attributes operations– return type, name, parameters in parentheses relationship– keyword for establishing relationship See page 558

Defining an Attribute Value can be either: Types of literals Object identifier OR Literal Types of literals Atomic–a constant that cannot be decomposed into components Collection–multiple literals or object types Structured–a fixed number of named elements, each of which could be a literal or object type Attribute ranges Allowable values for an attribute enum–for enumerating the allowable values

Kinds of Collections Set–unordered collection without duplicates Bag–unordered collection that may contain duplicates List–ordered collection, all the same type Array–dynamically sized ordered collection, locatable by position Dictionary– unordered sequence of key-value pairs without duplicates

Defining Structures Structure = user-defined type with components struct keyword Example: struct Address { String street_address; String city; String state; String zip; };

Defining Operations Return type Name Parentheses following the name Arguments within the parentheses

Defining Relationships Only unary and binary relationships allowed Relationships are bidirectional implemented through use of inverse keyword ODL relationships are specified: relationship indicates that class is on many-side relationship set indicates that class is on one-side and other class (many) instances unordered relationship list indicates that class is on one-side and other class (many) instances ordered

Figure 15-1 UML class diagram for a university database The following slides illustrate the ODL implementation of this UML diagram

Figure 15-2 ODL schema for university database

Figure 15-2 ODL schema for university database (cont.) class keyword begins the class definition.Class components enclosed between { and }

Figure 15-2 ODL schema for university database (cont.) attribute has a data type and a name specify allowable values using enum

Figure 15-2 ODL schema for university database (cont.) extent = the set of all instances of the class

Figure 15-2 ODL schema for university database (cont.) Operation definition: return type, name, and argument list. Arguments include data types and names

Figure 15-2 ODL schema for university database (cont.) relationship sets indicate 1:N relationship to an unordered collection of instances of the other class inverse establishes the bidirectionality of the relationship

Figure 15-2 ODL schema for university database (cont.) relationship list indicates 1:N relationship to an ordered collection of instances of the other class

Figure 15-2 ODL schema for university database (cont.) relationship indicates N:1 relationship to an instance of the other class

Figure 15-3 UML class diagram for an employee project database a) Many-to-many relationship with an association class In order to capture special features of assignment, this should be converted into two 1:N relationships

Figure 15-3 UML class diagram for an employee project database (cont.) b) Many-to-many relationship broken into two one-to-many relationships class Employee { (extent employees key emp_id) …………. attribute set <string> skills; }; Note: key indicates identifier (candidate key) Note: attribute set indicates a multivalued attribute

Figure 15-4 UML class diagram showing employee generalization Note: extends denotes subclassing class HourlyEmployee extends Employee { …………. }

Figure 15-5 UML class diagram showing student generalization abstract class Student { …………. abstract float calc_tuition(); } Note: abstract class denotes non-instantiable (complete constraint) Note: abstract operation denotes no method (no implementation) of calc_tuition at the Student level

Creating Object Instances Specify a tag that will be the object identifier MBA699 course (); Initializing attributes: Cheryl student (name: “Cheryl Davis”, dateOfBirth:4/5/77); Initializing multivalued attributes: Dan employee (emp_id: 3678, name: “Dan Bellon”, skills {“Database design”, “OO Modeling”}); Establishing links for relationship Cheryl student (takes: {OOAD99F, Telecom99F, Java99F});

Querying Objects in the OODB Object Query Language (OQL) ODMG standard language Similar to SQL Some differences: Joins use class’s relationship name: Select x.enrollment from courseofferings x, x.belongs_to y where y.crse_course = “MBA 664” and x.section = 1; Using a set in a query Select emp_id, name from employees where “Database Design” in skills;

Current ODBMS Products Rising popularity due to: CAD/CAM applications Geographic information systems Multimedia Web-based applications Increasingly complex data types Applications of ODBMS Bill-of-material Telecommunications navigation Health care Engineering design Finance and trading