0% found this document useful (0 votes)
3 views

Object Definition Language ODL

The document presents an overview of Object Definition Language (ODL) and its relation to the Object Model of ODMG, detailing key concepts such as object characteristics, interfaces, and inheritance. It explains the purpose of ODL in creating object specifications independent of programming languages and includes examples like schemas for a University database and geometric shapes. The conclusions highlight the flexibility of ODL in database schema specification and the limitations on inheritance in class definitions.

Uploaded by

23p1192
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Object Definition Language ODL

The document presents an overview of Object Definition Language (ODL) and its relation to the Object Model of ODMG, detailing key concepts such as object characteristics, interfaces, and inheritance. It explains the purpose of ODL in creating object specifications independent of programming languages and includes examples like schemas for a University database and geometric shapes. The conclusions highlight the flexibility of ODL in database schema specification and the limitations on inheritance in class definitions.

Uploaded by

23p1192
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 20

Object Definition

Language ODL
Presented By:
Sagar S Talagatti – 2GI23SCS08

Under the guidance of:


Dr. Kuldeep Sambrekar
Professor, Dept. Of CSE
KLS GIT, Belagavi
Contents
1. Key concepts of Object Model of ODMG
a. Characteristics of objects
b. Literals
c. Object interface
d. Interfaces, Classes & Inheritance
e. Extents & Keys

2. Object Definition Language(ODL)


a. EER diagram of University DB
b. Graphical notations
c. Example schemas
d. ODL schema code for University DB
e. ODL schema code for Geometric Shapes

3. Conclusions

4. References
1. Key concepts of Object Model of ODMG
a. Characteristics of objects:
i. Object Identifier(Object_id) – Unique, system-wide identifier
ii. Name – Some objects may optionally be given a unique name
iii. Lifetime – Specifies whether an object is persistent or transient
iv. Structure – Specifies whether an object is atomic or not
v. Creation – Typically accomplished via an operation new for a special Object_Factory interface

b. Literals:
Literal is a value that does not have an object identifier, can be of 3 types:
i. Atomic – Examples are long, short(integers), float, double, boolean, ENUM, etc…
ii. Structured – Created using the STRUCT keyword in ODL
iii. Collection – Collection of objects or values, and can be of type set, bag, list, array, dictionary
1. Key concepts of Object Model of ODMG
(ctd…)
c. Object interface:
interface Object {
...
boolean same_as(in object other_object);
object copy();
void delete();
};

d. Interfaces, Classes & Inheritance:


i. Interface – Declared using interface keyword, contain operation signature only
ii. Class – Declared using class keyword, contain state as well as operations
iii. Inheritance – Of 2 types, behavior only inheritance(using : operator) and state plus behavior
inheritance(using extends)
1. Key concepts of Object Model of ODMG
(ctd…)
e. Extents & Keys:
i. Extent - Behaves as a set object that holds all persistent objects of the class
1. Key concepts of Object Model of ODMG
(ctd…)
e. Extents & Keys:
1. Key concepts of Object Model of ODMG
(ctd…)
e. Extents & Keys:
ii. Key – Consists of one or more properties (attributes or relationships) whose values are constrained to
be unique for each object in the extent. Ex: EMPLOYEE class has the Ssn attribute as key
• For a composite key, that is made of several properties, the properties that form the key are
contained in parentheses.
• For example, if a class VEHICLE with an extent ALL_VEHICLES has a key made up of a combination
of two attributes State and License_number, they would be placed in parentheses as (State,
License_number) in the key declaration.
2. Object Definition Language(ODL)
• The ODL is designed to support the semantic constructs of the ODMG object model and is independent of any
particular programming language.

• Its main use is to create object specifications—that is, classes and interfaces.

• It is not a full programming language.

• A user can specify a database schema in ODL independently of any programming language, and then use the
specific language bindings to specify how ODL constructs can be mapped to constructs in specific
programming languages, such as C++, Smalltalk, and Java.
2. Object Definition Language(ODL) (ctd…)
a. EER diagram of University DB
2. Object Definition Language(ODL) (ctd…)
b. Graphical notations
2. Object Definition Language(ODL) (ctd…)
c. Example schemas
i. University DB
2. Object Definition Language(ODL) (ctd…)
c. Example schemas
ii. Graphical objects
2. Object Definition Language(ODL) (ctd…)
d. ODL schema code for University DB
2. Object Definition Language(ODL) (ctd…)
2. Object Definition Language(ODL) (ctd…)
2. Object Definition Language(ODL) (ctd…)
2. Object Definition Language(ODL) (ctd…)
e. ODL schema code for Geometric Shapes
3. Conclusions
i. An object consists of attributes and operations.

ii. ODL is used to create classes & interfaces.

iii. User can specify the db schema using ODL, independent of programming language.

iv. Multiple inheritance of interfaces by a class is allowed, but with the extends (class)
inheritance, multiple inheritance is not permitted.

v. Language specific bindings can be used to map ODL constructs to language specific
constructs.
4. References
• Elmasri and Navathe: Fundamentals of Database Systems, 6 th Edition, Pearson Education
THANK YOU

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy