Пояснения

Слайд 36. Поименованный тип

Пояснения

Слайд 35. Многомерные агрегированные типы

 

 

Агрегированные типы языка EXPRESS являются одномерными по своей природе. Однако в EXPRESS существует возможность задания многомерных агрегированных типов. Для этого необходимо задать в качестве базового типа одного агрегированного типа другой агрегированный тип. Таким способом можно задавать агрегированные типы неограниченной вложенности, поддерживающие произвольное количество измерений. На слайде объявлено множество списков, содержащих элементы типа INTEGER.


 

 

В отличие от простых и агрегированных типов, поименованные типы данных не являются встроенными в язык EXPRESS, а должны быть обязательно объявлены в информационной модели. Таким образом, поименованным типом данных языка EXPRESS является специально объявленный в информационной модели тип данных, имеющий уникальное имя. Поименованные типы предназначены для двух случаев. Во-первых, для случая, когда необходимо использовать сущность в качестве типа данных. Во-вторых, для случая, когда не хватает выразительных возможностей, встроенных в EXPRESS, и требуется их расширение. Для каждого из этих случаев существует свой поименованный тип: для первого случая – тип данных «Сущность», а для второго случая – определяемый тип данных.

Тип данных «Сущность» автоматически объявляется одновременно с объявлением самой сущности в информационной модели. Типу данных «Сущность» присваивается идентификатор сущности, который используется в дальнейшем для ссылок на этот тип.

Определяемый тип данных задается на основе какого-либо другого типа данных, в том числе и другого определяемого типа. С его помощью можно наложить некоторые ограничения на тот тип данных, на основе которого он создан и, таким образом, расширить выразительные возможности языка EXPRESS путем создания типа данных с новыми свойствами. Например, можно создать новый определяемый тип данных «length» (длина), взяв за основу встроенный целочисленный тип REAL и наложив требование неотрицательности его значений. Таким образом, будут расширены выразительные возможности языка EXPRESS, т.к. в нем нет встроенного типа с неотрицательными целочисленными значениями. Вполне возможен вариант, при котором определяемый тип не накладывает никаких ограничений на свой базовый тип. В таких случаях определяемый тип используется для повышения наглядности информационной модели или для простоты управления ею (например, изменения).

И сущность, и определяемый тип данных относятся к категории понятий языка EXPRESS, поэтому более подробное их рассмотрение будет проведено чуть позже.