SlideShare a Scribd company logo
The
 Object
Oriented
Database
 System
Paper Facts

• 1989
   The Object-Oriented Database System Manifesto
    (246 citations)
   M. Atkinson, F. Bancilhon, D. DeWitt, K. Dittrich,
    D. Maier, S. Zdonik
• 1990
   Third-Generation Database System Manifesto
    (19 citations)
   M. Stonebraker, L. Rowe, B. Lindsay, M. Carey,
    M. Brodie, P. Bernstein, D. Beech
Paper Facts...

• 1995
   The Third Manifesto (9 citations)
   H. Darwen, C. Date
   'We believe that [object oriented] features are
    orthogonal to the Relational Model, and therefore that
    the Relational Model needs no extension, no
    correction, no subsumption, and, above all, no
    perversion, in order for them to be accommodated...'
OODBMS History

First Generation OODBMS:
• 1986
   G-Base (Graphael, F)
• 1987
   GemStone (Servio Corporation, USA)
• 1988
   Vbase (Ontologic)
   Statice (Symbolics)
OODBMS History...

Second Generation OODBMS:
• 1989
     Ontos (Ontos)
     ObjectStore (Object Design)
     Objectivity (Objectivity)
     Versant ODBMS (Versant Object Technology)
OODBMS History...

Third Generation OODBMS:
• 1990
   Orion/Itasca (Microelectronics and Computer
    Technology Cooperation, USA)
   O2 (Altaïr, F)
   Zeitgeist (Texas Instruments)
• 1991
   ODMG formed (first standard released in 1993)
Overview

• Paper attemps to define an object-oriented
  database system
• Describes the main features and characteristics
  that a system must have to qualify as an object-
  oriented database system
• OODBMSs at the beginning of the 90s
    lack of a common data model
    lack of strong theoretical framework
    strong experimental activity
Overview...

• Darwinian approach → hope that, out of the set of
  experimental prototypes being built, a fit model will
  emerge → risk of de facto standard
• Paper is separated into mandatory, optional and
  open features
Mandatory Features (Golden Rules)

• An object-oriented database system must be a
  DBMS and an object-oriented system
• DBMS
   persistence, secondary storage management,
    concurrency, recovery and ad hoc query facility
• Object-oriented system
   complex objects, object identity, encapsulation, types
    or classes, inheritance, overriding combined with late
    binding, extensibility and computational completeness
Complex Objects
"Thou shalt support complex objects"


• Complex objects are built from simpler ones by
  applying constructors to them
• The minimal set of constructors that the system
  should have are set, tuple and list
• Constructors must be orthogonal
• Operations on a complex object must propagate
  transitively to all its components (e.g. deep copy)
Object Identity
"Thou shalt support object identity"


• Two notions of object equivalence: two objects
  can be identical (same object) or equal (same
  value)
• Object identity has impact on object sharing and
  object updates
• Object identity "can be simulated" in a value-
  based system by introducing explicit object
  identifiers (places burden on the user)
Encapsulation
"Thou shalt encapsulate thine objects"


• Distinguish between specification and
  implementation and support for modularity
• Two views of encapsulation: programming
  language view and the database adaption of that
  view
• In the database world, it is not clear whether the
  structural part of the type is part of the interface
Encapsulation...
"Thou shalt encapsulate thine objects"


• Proper encapsulation is obtained when only the
  operations are visible and the data is hidden (may
  be violated under certain conditions)
Types and Classes
"Thou shalt support types or classes"


• Type in an object-oriented system defines
  common features of a set of objects → type
  checking at compile time
• In general types can not be modified at run-time
• Classes (run-time notion) contains two aspects:
  object factory and object warehouse
    Object Factory → create new objects
    Object warehouse → extension (objects) attached to
     the class
Types and Classes...
"Thou shalt support types or classes"


• Classes can be manipulated at run-time
• Choice between types or classes should be left to
  the designer of the system
• Not necessary for the system to automatically
  maintain the extent of a type
Class or Type Hierarchies
"Thine classes or types shalt inherit from their ancestors"


• Helps code reusability
• At least four types of inheritance; substitution
  inheritance, inclusion inheritance, constraint
  inheritance and specialization inheritance
Overriding/loading, late binding
"Thou shalt not bind prematurely"


• A single name denotes different implementations
  → overloading
• Redefinition of the implementation for different
  types → overriding
• Operation names are resolved at run-time → late
  binding
Computational Completeness
"Thou shalt be computationally complete"


• Should be possibe to express any computable
  function, using the DML of the DB system
• Can be introduced through a reasonable
  connection to existing programming languages
Extensibility
"Thou shalt be extensible"


• Set of predefined types
• Should be possible to define new types with no
  distinction in usage between system defined and
  user defined types
• Type constructors (tuples, sets, lists, etc.) don't
  have to be extensible
Persistence
"Thou shalt remember thy data"


• Evident from a database point of view but novelty
  from a programming language point of view
• Persistence should be orthogonal (each object,
  independent of its type, is persistence capable)
• User should not have to explicitly move or copy
  data to make it persistent (implicit persistence)
Secondary Storage Management
"Thou shalt manage very large databases"


• Supported through a set of mechansims: index
  management, data clustering, data buffering,
  access path selection and query optimization
• Should be invisible for the application programmer
Concurrency
"Thou shalt accept concurrent users"


• Support standard notion of atomicity of a
  sequence of operations and of controlled sharing
Recovery
"Thou shalt recover from hardware and software failures"


• In case of hardware or software failures, the
  system should recover, i.e. bring itself back to a
  coherent state of the data
Ad Hoc Query Facility
"Thou shalt have a simple way of querying data"


• Provide functionality of an ad hoc query language
  (graphical browser could be sufficient)
• High level (declarative)
• Application independent
Optional Features (The Goodies)

•   Multiple Inheritance
•   Type checking and type inferencing
•   Distribution
•   Design transactions
•   Versions
Open Features

• Programming Paradigm
• Representation System
• Type System
   generic types, type generator,...
• Uniformity
   are types and methods objects?
Conclusions

• Golden rules should be the definition of an object-
  oriented database management system
• Paper is a proposal to be debatted



   "Thou shalt question the golden rules"

More Related Content

PPTX
Distributed database
PDF
E healthcare
PPT
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
PPTX
Peer to peer system
PPTX
Data warehousing
PDF
School management system project Report.pdf
PPTX
Deductive databases
PPTX
Exploring online scheduling applications
Distributed database
E healthcare
ADVANCE DATABASE MANAGEMENT SYSTEM CONCEPTS & ARCHITECTURE by vikas jagtap
Peer to peer system
Data warehousing
School management system project Report.pdf
Deductive databases
Exploring online scheduling applications

What's hot (20)

PPT
Chapter 07
PDF
Ethics in Data Science and Machine Learning
PPT
Architecture of Mobile Computing
PPTX
Mobile dbms
PDF
Online blood donation management system project.pdf
PPTX
Blood Bank Management System (including UML diagrams)
PPT
Lecture 01 introduction to database
PDF
DBMS NOTES.pdf
DOC
Database Management System
PDF
Digital 2023 Slovenia (February 2023) v01
PDF
The CAP Theorem
PPTX
Metadata ppt
PPT
Query Decomposition and data localization
PPTX
Networking and internet
PPTX
Big Data Analytics
PPTX
DATA WAREHOUSING
PPTX
information retrieval Techniques and normalization
PDF
Pharmacy management system fyp documentation
Chapter 07
Ethics in Data Science and Machine Learning
Architecture of Mobile Computing
Mobile dbms
Online blood donation management system project.pdf
Blood Bank Management System (including UML diagrams)
Lecture 01 introduction to database
DBMS NOTES.pdf
Database Management System
Digital 2023 Slovenia (February 2023) v01
The CAP Theorem
Metadata ppt
Query Decomposition and data localization
Networking and internet
Big Data Analytics
DATA WAREHOUSING
information retrieval Techniques and normalization
Pharmacy management system fyp documentation
Ad

Viewers also liked (18)

PPT
Object Oriented Dbms
PPT
08. Object Oriented Database in DBMS
PPTX
Object oriented database model
PPT
Object Oriented Database Management System
PPTX
Object oriented dbms
PPT
Oodbms ch 20
PPTX
PostgreSQL - Object Relational Database
PPT
Overview of Object-Oriented Concepts Characteristics by vikas jagtap
PPT
A Semantic Data Model for Web Applications
PPTX
Object oriented data model
PPT
Object Relational Database Management System
PDF
Object-Relational Database Systems(ORDBMSs)
PPTX
Dbms architecture
PPTX
PPS
Data models
PPT
Types dbms
PPT
Oops ppt
PPT
Object Oriented Programming Concepts
Object Oriented Dbms
08. Object Oriented Database in DBMS
Object oriented database model
Object Oriented Database Management System
Object oriented dbms
Oodbms ch 20
PostgreSQL - Object Relational Database
Overview of Object-Oriented Concepts Characteristics by vikas jagtap
A Semantic Data Model for Web Applications
Object oriented data model
Object Relational Database Management System
Object-Relational Database Systems(ORDBMSs)
Dbms architecture
Data models
Types dbms
Oops ppt
Object Oriented Programming Concepts
Ad

Similar to The Object Oriented Database System Manifesto (20)

PPTX
Object database standards, languages and design
PPT
03 Object Dbms Technology
PDF
Bt8901 objective oriented systems1
PPTX
Odbms concepts
PPTX
MIT302 Lesson 2_Advanced Database Systems.pptx
PPT
Introduction to odbms
PPT
Chapter 1 - Concepts for Object Databases.ppt
PPTX
Object oriented database concepts
PDF
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
PPT
CH11.ppt
PPT
A Comparative Study of RDBMs and OODBMs in Relation to Security of Data
PPT
Chapter1.ppt Concept of Object oriented Database
PPT
Topic 6 Concepts for Object Databases.ppt
DOCX
Advance Database Management Systems -Object Oriented Principles In Database
PPT
Database Management System and Object Dt
PDF
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
PPT
Opps approch of software development
PPTX
Concepts for Object Oriented Databases.ppt
PPT
Ch21-OODB.ppt
DOC
Object
Object database standards, languages and design
03 Object Dbms Technology
Bt8901 objective oriented systems1
Odbms concepts
MIT302 Lesson 2_Advanced Database Systems.pptx
Introduction to odbms
Chapter 1 - Concepts for Object Databases.ppt
Object oriented database concepts
Advanced DBMS- Unit 1.pdf Advanced DBMS dives into complex data management fo...
CH11.ppt
A Comparative Study of RDBMs and OODBMs in Relation to Security of Data
Chapter1.ppt Concept of Object oriented Database
Topic 6 Concepts for Object Databases.ppt
Advance Database Management Systems -Object Oriented Principles In Database
Database Management System and Object Dt
NoSQL Databases - Lecture 12 - Introduction to Databases (1007156ANR)
Opps approch of software development
Concepts for Object Oriented Databases.ppt
Ch21-OODB.ppt
Object

More from Beat Signer (20)

PDF
Use Cases and Course Review - Lecture 8 - Human-Computer Interaction (1023841...
PDF
HCI Research Methods - Lecture 7 - Human-Computer Interaction (1023841ANR)
PDF
Evaluation Methods - Lecture 6 - Human-Computer Interaction (1023841ANR)
PDF
Design Guidelines and Models - Lecture 5 - Human-Computer Interaction (102384...
PDF
Human Perception and Cognition - Lecture 4 - Human-Computer Interaction (1023...
PDF
Requirements Analysis and Prototyping - Lecture 3 - Human-Computer Interactio...
PDF
HCI and Interaction Design - Lecture 2 - Human-Computer Interaction (1023841ANR)
PDF
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
PDF
Indoor Positioning Using the OpenHPS Framework
PDF
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
PDF
Cross-Media Technologies and Applications - Future Directions for Personal In...
PDF
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
PDF
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
PDF
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
PDF
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
PDF
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
PDF
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
PDF
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
PDF
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
PDF
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...
Use Cases and Course Review - Lecture 8 - Human-Computer Interaction (1023841...
HCI Research Methods - Lecture 7 - Human-Computer Interaction (1023841ANR)
Evaluation Methods - Lecture 6 - Human-Computer Interaction (1023841ANR)
Design Guidelines and Models - Lecture 5 - Human-Computer Interaction (102384...
Human Perception and Cognition - Lecture 4 - Human-Computer Interaction (1023...
Requirements Analysis and Prototyping - Lecture 3 - Human-Computer Interactio...
HCI and Interaction Design - Lecture 2 - Human-Computer Interaction (1023841ANR)
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
Indoor Positioning Using the OpenHPS Framework
Personalised Learning Environments Based on Knowledge Graphs and the Zone of ...
Cross-Media Technologies and Applications - Future Directions for Personal In...
Bridging the Gap: Managing and Interacting with Information Across Media Boun...
Codeschool in a Box: A Low-Barrier Approach to Packaging Programming Curricula
The RSL Hypermedia Metamodel and Its Application in Cross-Media Solutions
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019...
Dashboards - Lecture 11 - Information Visualisation (4019538FNR)
Interaction - Lecture 10 - Information Visualisation (4019538FNR)
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019...
Visualisation Techniques - Lecture 8 - Information Visualisation (4019538FNR)
Design Guidelines and Principles - Lecture 7 - Information Visualisation (401...

Recently uploaded (20)

PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Getting Started with Data Integration: FME Form 101
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPT
Teaching material agriculture food technology
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
Spectroscopy.pptx food analysis technology
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
A comparative analysis of optical character recognition models for extracting...
PPTX
Machine Learning_overview_presentation.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Digital-Transformation-Roadmap-for-Companies.pptx
Getting Started with Data Integration: FME Form 101
Advanced methodologies resolving dimensionality complications for autism neur...
Assigned Numbers - 2025 - Bluetooth® Document
Teaching material agriculture food technology
Dropbox Q2 2025 Financial Results & Investor Presentation
The Rise and Fall of 3GPP – Time for a Sabbatical?
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Spectroscopy.pptx food analysis technology
Encapsulation_ Review paper, used for researhc scholars
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
A comparative analysis of optical character recognition models for extracting...
Machine Learning_overview_presentation.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Spectral efficient network and resource selection model in 5G networks
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf

The Object Oriented Database System Manifesto

  • 2. Paper Facts • 1989  The Object-Oriented Database System Manifesto (246 citations)  M. Atkinson, F. Bancilhon, D. DeWitt, K. Dittrich, D. Maier, S. Zdonik • 1990  Third-Generation Database System Manifesto (19 citations)  M. Stonebraker, L. Rowe, B. Lindsay, M. Carey, M. Brodie, P. Bernstein, D. Beech
  • 3. Paper Facts... • 1995  The Third Manifesto (9 citations)  H. Darwen, C. Date  'We believe that [object oriented] features are orthogonal to the Relational Model, and therefore that the Relational Model needs no extension, no correction, no subsumption, and, above all, no perversion, in order for them to be accommodated...'
  • 4. OODBMS History First Generation OODBMS: • 1986  G-Base (Graphael, F) • 1987  GemStone (Servio Corporation, USA) • 1988  Vbase (Ontologic)  Statice (Symbolics)
  • 5. OODBMS History... Second Generation OODBMS: • 1989  Ontos (Ontos)  ObjectStore (Object Design)  Objectivity (Objectivity)  Versant ODBMS (Versant Object Technology)
  • 6. OODBMS History... Third Generation OODBMS: • 1990  Orion/Itasca (Microelectronics and Computer Technology Cooperation, USA)  O2 (Altaïr, F)  Zeitgeist (Texas Instruments) • 1991  ODMG formed (first standard released in 1993)
  • 7. Overview • Paper attemps to define an object-oriented database system • Describes the main features and characteristics that a system must have to qualify as an object- oriented database system • OODBMSs at the beginning of the 90s  lack of a common data model  lack of strong theoretical framework  strong experimental activity
  • 8. Overview... • Darwinian approach → hope that, out of the set of experimental prototypes being built, a fit model will emerge → risk of de facto standard • Paper is separated into mandatory, optional and open features
  • 9. Mandatory Features (Golden Rules) • An object-oriented database system must be a DBMS and an object-oriented system • DBMS  persistence, secondary storage management, concurrency, recovery and ad hoc query facility • Object-oriented system  complex objects, object identity, encapsulation, types or classes, inheritance, overriding combined with late binding, extensibility and computational completeness
  • 10. Complex Objects "Thou shalt support complex objects" • Complex objects are built from simpler ones by applying constructors to them • The minimal set of constructors that the system should have are set, tuple and list • Constructors must be orthogonal • Operations on a complex object must propagate transitively to all its components (e.g. deep copy)
  • 11. Object Identity "Thou shalt support object identity" • Two notions of object equivalence: two objects can be identical (same object) or equal (same value) • Object identity has impact on object sharing and object updates • Object identity "can be simulated" in a value- based system by introducing explicit object identifiers (places burden on the user)
  • 12. Encapsulation "Thou shalt encapsulate thine objects" • Distinguish between specification and implementation and support for modularity • Two views of encapsulation: programming language view and the database adaption of that view • In the database world, it is not clear whether the structural part of the type is part of the interface
  • 13. Encapsulation... "Thou shalt encapsulate thine objects" • Proper encapsulation is obtained when only the operations are visible and the data is hidden (may be violated under certain conditions)
  • 14. Types and Classes "Thou shalt support types or classes" • Type in an object-oriented system defines common features of a set of objects → type checking at compile time • In general types can not be modified at run-time • Classes (run-time notion) contains two aspects: object factory and object warehouse  Object Factory → create new objects  Object warehouse → extension (objects) attached to the class
  • 15. Types and Classes... "Thou shalt support types or classes" • Classes can be manipulated at run-time • Choice between types or classes should be left to the designer of the system • Not necessary for the system to automatically maintain the extent of a type
  • 16. Class or Type Hierarchies "Thine classes or types shalt inherit from their ancestors" • Helps code reusability • At least four types of inheritance; substitution inheritance, inclusion inheritance, constraint inheritance and specialization inheritance
  • 17. Overriding/loading, late binding "Thou shalt not bind prematurely" • A single name denotes different implementations → overloading • Redefinition of the implementation for different types → overriding • Operation names are resolved at run-time → late binding
  • 18. Computational Completeness "Thou shalt be computationally complete" • Should be possibe to express any computable function, using the DML of the DB system • Can be introduced through a reasonable connection to existing programming languages
  • 19. Extensibility "Thou shalt be extensible" • Set of predefined types • Should be possible to define new types with no distinction in usage between system defined and user defined types • Type constructors (tuples, sets, lists, etc.) don't have to be extensible
  • 20. Persistence "Thou shalt remember thy data" • Evident from a database point of view but novelty from a programming language point of view • Persistence should be orthogonal (each object, independent of its type, is persistence capable) • User should not have to explicitly move or copy data to make it persistent (implicit persistence)
  • 21. Secondary Storage Management "Thou shalt manage very large databases" • Supported through a set of mechansims: index management, data clustering, data buffering, access path selection and query optimization • Should be invisible for the application programmer
  • 22. Concurrency "Thou shalt accept concurrent users" • Support standard notion of atomicity of a sequence of operations and of controlled sharing
  • 23. Recovery "Thou shalt recover from hardware and software failures" • In case of hardware or software failures, the system should recover, i.e. bring itself back to a coherent state of the data
  • 24. Ad Hoc Query Facility "Thou shalt have a simple way of querying data" • Provide functionality of an ad hoc query language (graphical browser could be sufficient) • High level (declarative) • Application independent
  • 25. Optional Features (The Goodies) • Multiple Inheritance • Type checking and type inferencing • Distribution • Design transactions • Versions
  • 26. Open Features • Programming Paradigm • Representation System • Type System  generic types, type generator,... • Uniformity  are types and methods objects?
  • 27. Conclusions • Golden rules should be the definition of an object- oriented database management system • Paper is a proposal to be debatted "Thou shalt question the golden rules"