FREE ELECTRONIC LIBRARY - Books, dissertations, abstract

Pages:     | 1 |   ...   | 2 | 3 || 5 | 6 |   ...   | 16 |


-- [ Page 4 ] --

Object Creation and Lifetime. Every object of a P-C class starts out transient but can be converted to persistent either explicitly (makePersistent method) or via persistence-by-reachability, which stores all P-C instances referenced by a persistent instance at the end of each transaction.

Object Identifers and Keys. There are three types of object identifiers in JDO: application identity, datastore, and non-datastore. Class identity type is given in the metadata file.

Application identity corresponds to the relational notion of primary key and is determined by the value of one or more class fields. For each class, a dual class that only contains the corresponding identity fields is automatically created.

–  –  –

Non-datastore identity is managed by JDO itself for datastores that cannot save object identifiers, like log files or text files.

Class and Field Modifiers. All of Java modifiers are supported: public, private, protected, static, transient, abstract, final, synchronized, and volatile. Access modifiers are enforced by converting the fields to private and adding accessor/mutator methods. Synchronized and volatile modifiers do not affect JDO, and although the static, final and transient fields are not persistent by default, this can be overridden in the metadata file.

3.3.4 SAMPLE XML METADATA FILE The following XML metadata file gives an example of definitions necessary for persisting two simple classes. Notice the tags for several vendor-specific model extensions.

–  –  –


Sun Microsystems, Inc. provides reference implementations of JDO on top of JDBC and on top of the filesystem, and a reference class enhancer has also been developed. A publicly available suit of compatibility tests ensures that JDO implementations are correct even on the binary level.

The JDO standard was very well received and within months of its publication, both commercial and noncommercial JDO datastore implementations were available. The JDOCentral currently lists 28 Semantic Web as an Object-oriented Database 15 existing implementations, both in object databases and object-relational bindings. Seven of these are open-source projects.


The following list shows a selection of features that for upcoming releases of the JDO standard:

Semantics for nested transactions, definition of savepoints with undo option within a transaction.

Support for distributed objects and object relationships across datastores.

Optional object-relational mapping information in XML metadata (table names, key information).

Semantics for inverse (managed) relationships according to the EJB specification.

Explicit support for java.sql.Blob and java.sql.Clob object types — binary/character large objects.

3.3.6 SOURCES The full JDO specification is [Craig03], while a brief overview of its data model is given in [Jordan01].

A whole thesis on JDO is [vEchelpoel02], and a good Internet starting point is http://www.jdocentral.com/.



The set-theoretic paradigm is perhaps the most common for formal object-oriented data models. Although the first implementation of an OODB was GemStone [MOP86] in 1985, the O2 model developed within the Altaïr project is described because it is also a representative of the first wave of object-oriented databases (near the end of the 1980s), it is strongly typed, and its structure reflects the OODB Manifesto.


Toward the end of 1980s, following the rapid evolution of object-oriented languages (such as C++ [Stroustrup86] and Smalltalk [GR83]]), emerging object-oriented databases received much attention of the research community. Target applications for these systems were assumed to include office information systems (OIS), CAD/CAM systems and geographic information systems (GIS). Some of

these early object databases included:

GemStone [MOP86] which extended the Smalltalk language for database programming, data definition and queries. It was probably the first implementation of an object-oriented database.

Orion [BKK87] used an extension of Lisp and allowed method programming using queries.

Ontos/Vbase [Atwood85] provided the TDL language for data definition and extended C to COP (C Object Processor) for method definitions. Later came a query language similar to SQL.

–  –  –

Exodus [CdWV88] used the Excess language, which had QUEL syntax and allowed database updates.

O2 [LRV92] used the O2 language for data definition in context of other languages (C, Lisp, Basic). It provided own IQL and Reloop query languages.

From these, O2 was chosen to show a conservative data model based on set theory. It was also the first successful effort to build a language-independent object database.

3.4.2 O2 DATA MODEL Interfaces and Implementations. Schema definition with method signatures is distinct from method implementations in the programming languages supported through special bindings.

Subtyping and Inheritance. O2 supports multiple inheritance, with Object implicitly at the top of the hierarchy. A subtype must contain every attribute of its supertype plus any new or refined ones. Late binding and overloading of methods are supported.

Object Types and Literals. All objects, values and methods are strongly typed, although O2 semantics allow tuples with extra attributes. Literals without an OID are called complex values, and they are composed using the set, tuple and list constructors. An object is a literal with an OID.

Complex values belong in types, while objects belong in classes (composed of a type definition and methods). O2 supports these atomic types: integer, float, string, char, Boolean and bits.

–  –  –

Extents. If a class is defined with an extension, the system creates a named set-value that contains all the objects of that class (and, therefore, makes them persistent).

Metadata. Database schema is separate from database instances (or contents); sets of attribute names, object identifiers and class names are all pairwise disjoint and the programmer has no access to the metamodel.

For schema evolution, a tool called Interactive Consistency Checker detects whether any inconsistencies (structural or behavioral) would occur after a proposed schema update. Changes include adding/modifying/dropping of classes/attribute/method names and attributes.

Attributes and Relationships. The set/list elements and tuple elements can be either values or OIDs that build relationships between objects. 1:N relationships are constructed with sets or lists of OIDs. There is no explicit support for special kinds of relationships such as inverse ones.

–  –  –

invocation. Method inheritance is possible under several conditions. The programmer also has full runtime control of distribution, i.e. whether the method runs on server or client.

A simple method signature and implementation for increasing the fee of Monument instances is shown below (in two different languages). The last line demonstrates method invocation including a distribution directive.

add method increase_fee (amount : integer) in class Monument body increase_fee(amount : integer) in class Monument co2 { *self.admission_fee+= amount; } lispo2 (setq self.admission_fee (+ (get-field self. ‘admission_fee) amount) ) [on server Eiffel_Tower increase_fee(3)] Object Identifiers, Names and Lifetimes. Both objects and values can be named. Persistence is based on names, so that all named objects and values are persistent, including their member objects and values. Objects are not explicitly deleted — they have garbage-collection semantics and disappear by becoming unreachable from named persistence roots.

3.4.3 EXAMPLE OF FORMAL SEMANTICS For a sample of the set-theoretical semantics of O2 data model, the formal definition of types and

classes is given below:

Let Bnames be the set of names for basic types, including nil and any; Cnames is a countably infinite set of constructed type names (disjoint with Bnames) and Tnames is their union. Meth is a set of methods.

A type is either basic or constructed.

A basic type is a pair (n,M) where n ∈ Bnames and M ∈ Meth.

A constructed type is one of the following:

1. A triple (s,t,M) where s ∈ Cnames, t ∈ Tnames, M ∈ Meth. We denote such type by s = (t,M).

2. A triple (s,t,M) where s ∈ Cnames, t is a finite partial function from attribute names to Tnames and M ∈ Meth. We denote such type by s = ([a1:s1,…, an:sn], M) where t(ak) = sk and call it a tuple-structured type.

3. A triple (s,s’,M) where s ∈ Cnames, s’ ∈ Tnames and M ∈ Meth. We denote such type by s = ({s’}, M) and call it a set-structured type.


More than five years (1986–1991) of research and implementation effort was invested in O2 within the Altaïr project, first resulting in experimental prototypes and later in academic and commercial releases of usable systems. The whole project was backed by several Esprit, INRIA and CNRS grants, university of Paris-Süd, Siemens and Bull. In the following years, it was merged with other objectoriented systems.

Aside from the database server itself (consisting of Schema Manager, Object Manager and Disk Manager), O2 also contained two ad-hoc query languages (Reloop and later IQL), a user interface server and generation tool (LOOKS), a programming environment (OOPE), persistent extensions of several programming languages, and other data management components (alphanumeric interface, modules for buffering, indexing, clustering, TCP/IP communication…).

Comparison with the most recent ODMG specification shows a number of corresponding concepts, including language independence, similar data definition languages, modeling concepts, typing, signatures, and more.

Semantic Web as an Object-oriented Database 18 3.4.5 SOURCES [LRV92] gives a formal definition of the data model. It is part of a whole book on O2 design and implementation. Other sources for object-oriented databases from around 1985–1990 include [MOP86], [BKK87], [Atwood85], [FBC87], and [CdWV88].



The object model developed in this thesis is a subset of CDL (Concept Definition Language).

Information about CDL development, design choices and implementation was readily available for research, because it was developed at the Faculty of Electrical Engineering of the Brno University of Technology. Its object model contains certain unique features in the areas of runtime behavior, namely dynamic inheritance using roles.


Concept Definition Language started as an effort to implement the ODMG–93 specification for an object-oriented database. However, the ODMG has some limits on full use of different objectoriented concepts such as multiple and dynamic inheritance. Branching off from the ODMG standard

let the new data definition language focus on some of these syntactic and semantic areas:

CDL respects common data definition patterns — e.g. collections are defined in a natural way together with their respective member classes and can be easily extended by additional attributes.

CDL tries to simplify decisions for the database designer — e.g. only a single collection type is used with an option to add ordering, duplicate instances and indices. Flexibility in multiple inheritance with abstract classes removes the need for interfaces.

CDL provides a uniform approach to the whole model — e.g. enumeration types are created by means of simple structures with named instances, and relationships do not need to be differentiated from properties.

On the other hand, CDL only defines the object model and object specification language. It does not provide a query language, and guidelines for integration with programming languages are not part of CDL itself.

Pages:     | 1 |   ...   | 2 | 3 || 5 | 6 |   ...   | 16 |

Similar works:

«DIPLOMARBEIT Titel der Diplomarbeit „Mit allen Sinnen – Intermedialität in den Werken Zoran Ferićs“ Verfasserin Katrin Mayer angestrebter akademischer Grad Magistra der Philosophie (Mag.phil.) Wien, 2013 Studienkennzahl lt. Studienblatt: A 243 364 Studienrichtung lt. Studienblatt: Diplomstudium Bosnisch/ Kroatisch/ Serbisch Betreuerin: Doz. Ao.Univ.-Prof. Dr. Katja Sturm-Schnabl Inhalt 1. Einleitung 2. Ziel der Arbeit 3. Arbeitsmethoden 4. Der Autor 5. Arbeitsthese 6. Begriffsdefinition...»

«DIPLOMARBEIT Titel der Diplomarbeit „Erlebniswelt Nepal“ Die Konstruktion touristischer Räume am Beispiel der Annapurna-Region Verfasserin Silke Reiter angestrebter akademischer Grad Magistra der Philosophie (Mag. Phil.) Wien, 2012 Studienkennzahl lt. Studienblatt: A 307 Studienrichtung lt. Studienblatt: Kulturund Sozialanthropologie Betreuerin / Betreuer: Dr. Elke Mader Ehrenwörtliche Erklärung Ich erkläre ehrenwörtlich, dass ich die vorliegende Arbeit selbständig und ohne fremde...»

«Diplomarbeit Titel der Diplomarbeit Geschlechtsrollenstereotype in approbierten Lehrbüchern für den Spanischunterricht Diskursanalytische Einordnung Verfasserin Petra Schwarz angestrebter akademischer Grad Magistra der Philosophie (Mag. phil.) Wien, im Oktober 2008 Studienkennzahl lt. Studienblatt: A 190 353 299 Studienrichtung lt. Studienblatt: Lehramt 1. Unterrichtsfach Spanisch Dr.in, Univ.-Prof.in Kathrin Sartingen Betreuerin: Danksagung Ich bedanke mich in erster Linie bei der kleinen...»

«»DER KLARSTE TRÄGER MUSIKALISCHER IDEEN, DER JE GESCHAFFEN WURDE« UNTERSUCHUNGEN ZUR GATTUNGSGESCHICHTE DES STREICHQUARTETTS ZWISCHEN 1830 UND 1870 Abhandlung zur Erlangung der Doktorwürde der Philosophischen Fakultät der Universität Zürich vorgelegt von Antonio Baldassarre von Italien und Österreich Angenommen auf Antrag von Prof. Dr. Hans-Joachim Hinrichsen Zürich, 2005  Antonio Baldassarre, 2005 Alle Rechte vorbehalten. Das Werk einschliesslich aller seiner Teile ist...»

«DIPLOMARBEIT Titel der Diplomarbeit: „Der gebundene Eros“ „Eine Erörterung des philosophischen Begriffs „Begehren“ in der menschlichen Sexualität, in Hinblick auf den Sadomasochismus“ Verfasserin: Ariana Reisacher angestrebter akademischer Grad: Magistra der Philosophie (Mag.phil.) Wien, Jänner 2012 Studienkennzahl lt. Studienblatt: A 296 Studienrichtung lt. Studienblatt: Philosophie Betreuer: Ao. Univ.-Prof. Dr. Josef Rhemann Gewidmet meiner Mutter, die immer an mich glaubt. In...»

«DISSERTATION Titel der Dissertation Integrative Inszenierungen. Zur Szenografie von partizipativen Räumen Verfasser Mag. Paul Divjak angestrebter akademischer Grad: Doktor der Philosophie (Dr. phil.) Wien, Juli 2010 Studienkennzahl lt. Studienbuchblatt: A 092 317 Dissertationsgebiet lt. Studienbuchblatt: Theater-, Filmund Medienwissenschaft Betreuer: O. Univ.-Prof. Dr. Wolfgang Greisenegger Danksagung Die Arbeit an der vorliegenden Dissertation wurde ermöglicht durch das...»

«Mädchenschule und Geschlecht Eine fallrekonstruktive Untersuchung der kollektiven Orientierungen und Weiblichkeitskonstruktionen von Schülerinnen monoedukativer Schulen Inaugural-Dissertation zur Erlangung des Doktorgrades der PhilosophischSozialwissenschaftlichen Fakultät der Universität Augsburg vorgelegt von Wiebke Waburg aus Lübz Erstgutachterin: Prof. Dr. Leonie Herwartz-Emden Zweitgutachterin: Prof. Dr. Eva Matthes Tag der mündlichen Prüfung: 22.07.2009 Dank Mein besonderer Dank...»

«Simon Spiegel · Die Konstitution des Wunderbaren ZÜRCHER FILMSTUDIEN HERAUSGEGEBEN VON CHRISTINE N. BRINCKMANN Simon Spiegel DIE KONSTITUTION DES WUNDERBAREN ZU EINER POETIK DES SCIENCE-FICTION-FILMS Die Deutsche Bibliothek – CIP-Einheitsaufnahme Ein Titeldatensatz für diese Publikation ist bei Der Deutschen Bibliothek erhältlich. Publiziert mit Unterstützung des Schweizerischen Nationalfonds zur Förderung der wissenschaftlichen Forschung. Die vorliegende Arbeit wurde von der...»

«Diplomarbeit Titel der Diplomarbeit Die staatlich bestimmte Rolle von Hausa als Erstsprache in der Grundschulausbildung in Nordnigeria. Verfasser Wewe Akin Martin angestrebter akademischer Grad Magister der Philosophie (Mag. phil.) Wien, 2011 Studienkennzahl lt. Studienblatt: A 390 Studienrichtung lt. Studienblatt: Afrikanistik Betreuer: o.Univ.Prof. Dr. Norbert Cyffer Mein Dank gilt meiner Familie, die mich während meines Studiums unterstützt hat. Ebenso möchte ich o.Univ.Prof. Dr. Norbert...»

«Landnutzung, Biodiversität und Naturschutz Eine Fallstudie über die Nutzung privater Waldfragmente der Mata Atlântica im Biosphärenreservat Grüngürtel der Stadt São Paulo, Brasilien Inauguraldissertation zur Erlangung der Doktorwürde der Philosophischen Fakultät der Universität zu Köln vorgelegt von Jutta Schmidt-Silva Machado Institut für Ethnologie Universität zu Köln Köln, im April 2012 Die vorliegende Arbeit wurde von der Philosophischen Fakultät der Universität zu Köln im...»

<<  HOME   |    CONTACTS
2016 www.book.dislib.info - Free e-library - Books, dissertations, abstract

Materials of this site are available for review, all rights belong to their respective owners.
If you do not agree with the fact that your material is placed on this site, please, email us, we will within 1-2 business days delete him.