Составные объекты
Часто возникают ситуации, когда объект состоит из подчиненных объектов, или компонентов. Составным объектом называется объект, который выглядит как единый объект в реальном мире, но содержит в себе другие объекты в виде набора составных связей типа A-PART-OF, или АРО (часть чего-то). Такие встроенные объекты сами могут быть составными с образованием иерархии типа АРО. В объектно-ориентированной системе встроенные объекты можно применять одним из следующих двух способов. Во-первых, за счет инкапсуляции внутри составного объекта с образованием части составного объекта. В этом случае структура встроенного объекта образует часть составного объекта и доступ к ней можно получить только с помощью методов составного объекта. Во-вторых, встроенный объект может рассматриваться как независимый от составного объекта. И в этом случае в родительском объекте хранится не сам объект, а лишь его GDI-идентификатор. Такой способ называется совместным использованием ссылок. Встроенный объект обладает своей собственной структурой и методами, а также может принадлежать нескольким родительским объектам.
Перманентный язык программирования - язык, который позволяет его пользователям (прозрачно) сохранять данные непосредственно при последовательном выполнении программы, после чего эти данные смогут использоваться и многими другими программами.
Данные в перманентном языке программирования не зависят ни от какой программы и способны существовать помимо времени исполнения программы, их создающей.
Язык программирования базы данных - язык, в котором интегрируются некоторые идеи, взятые как из модели программирования баз данных, так и из концепций традиционных языков программирования.
Язык программирования базы данных отличается от перманентного языка программирования тем, что, помимо перманентности, он также обеспечивает такие функции, как управление транзакциями, параллельностью и восстановлением.
Язык описания объектов (ODL) является специфицирующим языком, предназначенным для создания определений объектных типов в ODMG-совместимых системах. Основным его назначением является упрощение переносимости схем между совместимыми системами с поддержкой возможности взаимодействия между ООСУБД, Язык ODL эквивалентен языку определения данных DDL в традиционных СУБД. Он предназначен для определения атрибутов и связей между типами, а также задания сигнатуры операций. При этом описание конкретной реализации заданных сигнатур не предусматривается.
Объектно-ориентированный язык запросов (OQL) представляет собой декларативное средство доступа к объектно-ориентированной базе данных, использующее SQL-подобный синтаксис. В нем не предусмотрены операторы явного обновления, поскольку подобные функции предоставляются операциям, определенным в объектных типах. Так же, как и в случае языка SQL, язык OQL может использоваться как самостоятельный или как язык, операторы которого внедряются в программы на другом, базовом языке, для чего в стандарте ODMG определен порядок их связывания.
Основная литература: 1[794-843]