Предопределенные классы объектно-реляционного ядра

Версия 1.0 alpha

В настоящем документе описаны классы объектов системного объектно-реляционного ядра ORE (Object-Relational Engine), посредством которых реализовано само ядро и которые используются при его эксплуатации. Перечисленные классы являются базовыми для построения на базе ядра структур данных и функционала любой предметной области.

AREA - Рабочая область

ENTITY - Базовая сущность


FORM - Описание входной/выходной формы

Определение

CLASS
NAME FORM;
PARENT (CLASS);
TYPE STRUCT|SYSTEM;
ATTRIBUTES
NAME NAME; TYPE DEFAULT; DOMAIN(STRING);,
NAME TEXT; DOMAIN(STRING);,
NAME TYPE; DOMAIN(STRING);,
NAME TABLE; DOMAIN(STRING);,
NAME ATTRIBUTES; TYPE REF|OWNED; DOMAIN(ATTRIBUTE);,
NAME METHODS; TYPE REF|OWNED; DOMAIN(METHOD);,
NAME OBJECTS; TYPE REF|SHARED; DOMAIN(OBJECT);,
NAME PARENT; TYPE REF|OWNER|CALCULATED; DOMAIN(CLASS);,
NAME EXTENDS; TYPE COLL|SHARED; DOMAIN(CLASS);,
NAME EXTENDED; TYPE COLL|SHARED; DOMAIN(CLASS);
;
;

Характеристика

Служит для описания и хранения в рабочей области экземпляров объектов и их атрибутов.

Базовые классы

OBJECT

Атрибуты

NAME - имя класса, используется для идентификации класса.

TEXT - расширенное описание класса.

TYPE - тип класса, описанный комбинацией ключевых слов, указывающих на характер использования данного класса. Ключевые слова пречисляются через вертикальную черту "|" без пробелов. Допустимы следующие ключевые слова:

EDIT - форма является умалчиваемой формой для редактирования экземпляров класса, базового для формы

TABLE - имя таблицы реляционной базы данных, или любого другого источника данных, доступного посредством ODBC интерфейса. Если класс не является "чисто абстрактным", в таблице с указанным именем будут хранится значения всех атрибуты данного класса, а также всех атрибутов "чисто абстрактных" классов, являющихся базовыми по отношению к данному классу.

ATTRIBUTES - множество всех атрибутов данного класса.

METHODS - множество всех методов, применимых к данному классу.

OBJECTS - множество всех объектов-экземпляров данного класса.

PARENT - ссылка на класс, являющийся "основным" базовым классом для данного класса. "Основным" базовым классом, является тот класс, от которого происходил бы данный класс, если бы не использовалась концепция множественного наследования. Данная ссылка перекрывает атрибут OWNER объекта, то есть, объект "основного" класса явлется "владельцем" по отношению к объекту производного класса, ссылающегося на него посредством этого атрибута.

EXTENDS - множество всех классов, призводных от данного класса, как в концепции иерархического наследования, так и в концепции множественного наследования. В это множестов входят как "прямые наследники" - классы, ссылающиеся на данный класс посредством атрибута PARENT(OWNER), так и "непрямые наследники", ссылающиеся посредством атрибута PARENT(OWNER) на другие классы.

EXTENDED - множество всех классов, базовых для данного класса, как в концепции иерархического наследования, так и в концепции множественного наследования. В это множестов входят как "прямой родитель" - класс, на который данный класс ссылается посредством атрибута PARENT(OWNER), так и "непрямые родители" - прочие базовые классы.

Методы

NEW - создать новый объект-экземпляр данного класса.

GET - получить один или несколько объектов-экземпляров данного класса.

ATTACH - актуализировать множество объектов данного класса, если класс является хранимым во внешней базе данных и имеется непустое значение атрибута TABLE.

Производные классы

METHOD, FORM

 




 Объектно-реляционный язык ORL и системное ядро