It should be noted that the object flavor of the model and language facilitates the task of specifying standard functionalities in the direction of DOM, XLL, etc. An extension of ODMG along these lines has already been designed and implemented in the Ozone system that we now describe briefly. An implementation based on an object-relational system and SQL3 is under consideration. We describe Ozone here in terms of XML directly. All values in an ODMG database must have a valid type defined in the schema.
Ozone extends ODMG with a new class XML to represent untyped XML information.
The value of an XMLatomic object may have any valid ODMG type. Intuitively, atomic XML objects are untyped containers for typed values. We must also consider how DTD's affect our data model and query language. We can certainly represent a document that is valid with respect to a particular DTD using our untyped XML class, but in that case the structural information provided by the DTD is lost. Furthermore, the semantics of OQL-S on structured data is identical to OQL on standard ODMG data.