1
© Pasca UDiNus 2002
Object Definition Language
(ODL)
Hubungannya dengan SQL-nya DDL (Data
Definition Language)
Adalah bahasa pemrograman yang khusus
untuk mendefinisikan skema logis OODB
Database Management Group (ODMG)
2
© Pasca UDiNus 2002
Mendefinisikan Klas
klas – kunci untuk mendefinisikan klas
attribute – kunci untuk mendefinisikan
atribute
operations – pengembalian tipe, nama,
parameter dalam tanda kurung
relationship – kunci untuk menentukan
hubungan
3
© Pasca UDiNus 2002
Pendefinisian sebuah atribute
Nilai dapat bermacam-macam:
– Identifikasi Object atau Literal
Tipe dari literal
– Atomic – sebuah konstanta yang tidak dapat didekomposisi
menjadi komponen
– Collection – gabungan dari literal atau tipe object
– Structure – sebuah nomor tetap yang menunjukkan nama
elemen, setiap yang dapat menjadi sebuah literal atau sebuah
tipe object
– Sebaran nilai Attribute
– Nilai yang diperkenankan untuk sebuah atribut
– enum – untuk menyebutkan satu persatu nilai yang
diperkenankan
4
© Pasca UDiNus 2002
Macam-macam koleksi (Collections)
Set – koleksi yang tak terurut tanpa
duplikasi
Bag – koleksi yang tidak urut yang mungkin
duplikasi
List – koleksi yang urut, dengan tipe yang
sama
Array – kumpulan yang terurut dan
dinamis,dengan penempatan sesuai urutan
Dictionary – urutan yang tidak terurut dari
pasangan nilai tanpa kerangkapan
5
© Pasca UDiNus 2002
Mendefinisikan Structure
Structure = type yang didefinisikan user bersama
komponen-komponenya
struct keyword
Contoh:
struct Address {
String street_address
String city;
String state;
String zip;
};
6
© Pasca UDiNus 2002
Mendefinisikan Operasi
Type masukan
Nama
Tanda kurung yang menyertai
nama
Argumen diantara tanda kurung
7
© Pasca UDiNus 2002
Mendefinisikan Relasi
Hanya relasi Unary dan bynary yang
diperbolehkan
Relasi adalah dua arah
– Diterapkan dengan menggunakan kata kunci inverse
Spesifikasi ODL relationships adalah :
– relationship menunjukkan bahwa klas mempunyai
banyak sisi
– relationship set menunjukkan bahwa klas adalah satu
sisi dan klas yang lain (banyak) berisi bukan perintah
– relationship list menunjukkan bahwa klas dengan satu
sisi dan klas lain mempunyai hal perintah
8
© Pasca UDiNus 2002
Gambar – Diagram Klas UML dari database Universitas
9
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database universitas
10
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database universitas
11
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database Universitas
12
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database universitas
13
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database universitas
Definisi Operasi :
memberikan tipe
data, nama dan
argumen list yang
mempunyai tipe data
dan nama
14
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database universitas
15
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database universitas
16
© Pasca UDiNus 2002
Gambar – Skema ODL untuk database universitas
17
© Pasca UDiNus 2002
Gambar – Diagram Klas UML database karyawan proyek
Catatan :
Dalam
rangka untuk
menangkap
data khusus
dalam file
Assignment,
maka harus
dibagi
menjadi dua
relasi 1:N
18
© Pasca UDiNus 2002
Gambar – Diagram Klas UML database karyawan proyek
(b) Relasi Many-to many dipecah menjadi dua relasione-to-many
19
© Pasca UDiNus 2002
Gambar
Diagram Klas UML menunjukkan generalisasi karyawan
class Employee
extends Employee{
( ………….
………….
} Catatan :
extends
menandakan
subclassing
20
© Pasca UDiNus 2002
Gambar – Diagram Klas UML yang menunjukkan genralisasi
student
21
© Pasca UDiNus 2002
Menciptakan Instan Objek
Tetapkan sebuah nama sebagai identitas objek
– MBA699 course ();
Tentukan atribut:
– Cheryl student (name: “Cheryl Davis”, dateOfBirth:4/5/77);
Tentukan atribut dengan banyak nilai:
– Dan employee (emp_id: 3678, name: “Dan Bellon”,
skills {“Database design”, “OO
Modeling”});
Buatlah link untuk relasi
– Cheryl student (takes: {OOAD99F, Telecom99F, Java99F});
22
© Pasca UDiNus 2002
Mengurutkan objek dalam OODB
Object Query Language (OQL)
ODMG standard language
Similar to SQL-92
Beberapa perbedaan :
– Joins gunakan nama relasi Klas:
Select x.enrollment from courseofferings x, x.belongs_to y
where y.crse_course = “MBA 664” and x.section = 1;
– Penggunaan set dalam query
Select emp_id, name from employees where “Database
Design” in skills;
23
© Pasca UDiNus 2002
Produk ODBMS saat ini
Yang mulai populer:
– CAD/CAM applications
– Geographic information systems
– Multimedia
– Web-based applications
– Increasingly complex data types
Aplikasi dalam ODBMS
– Bill-of-material
– Telecommunications navigation
– Health care
– Engineering design
– Finance and trading
24
© Pasca UDiNus 2002
Gambar – Produk ODBMS
25
© Pasca UDiNus 2002