Отображение простых типов данных EXPRESS

Отображение типов данных в EXPRESS

ЭЛЕМЕНТ EXPRESS ОТОБРАЖАЕТСЯ В

ARRAY список (list)

BAG список (list)

BOOLEAN булевскую переменную (boolean)

BINARY двоичное(binary)

CONSTANT НЕ ОТОБРАЖАЕТСЯ

DERIVED ATTRIBUTE НЕ ОТОБРАЖАЕТСЯ

ENTITY экземпляр объекта

ENTITY AS ATTRIBUTE имя экземпляра объекта

ENUMERATION перечисление(enumeration)

FUNCTION НЕ ОТОБРАЖАЕТСЯ

INVERSE НЕ ОТОБРАЖАЕТСЯ

INTEGER целое

LIST список

LOGICAL перечисление(enumeration)

NUMBER вещественное

PROCEDURE НЕ ОТОБРАЖАЕТСЯ

REAL вещественное

REMARKS НЕ ОТОБРАЖАЕТСЯ

RULE НЕ ОТОБРАЖАЕТСЯ

SCHEMA НЕ ОТОБРАЖАЕТСЯ

SELECT см. 11.1.8

SET список

STRING строка

TYPE см. 11.1.6

UNIQUE RULE НЕ ОТОБРАЖАЕТСЯ

WHERE RULES НЕ ОТОБРАЖАЕТСЯ

 

Данный раздел определяет преобразование из элементов EXPRESS, являющихся типами данных, в структуру обмена.

Integer– отображает в структуру обмена как целочисленный тип данных. 3.3.1 описывает состав целочисленного типа данных.

String– состав строкового типа данных

Boolean –состав перечисленного типа данных, со значением Т или F истина или ложь.

Logical – перечисленного типа данных со значением истина, ложь, неизвестно: T, F, U.

Real – вещественный тип данных.

Пример. Определение объекта в EXPRESS

ENTITY widget

i1:INTEGER; ------- A

i2:INTEGER; ------- B

s1:STRING(3);------- C

s2:STRING; ------- D

1:LOGICAL; ------- E

b:BOOLEAN; ------- F

r1:REAL(4); ------- G

r2:REAL; ------- H

END_ENTITY;

 

Образец объекта в секции данных

#2=WIDGET(99,9999,’ABC’,ABCDEFG’,.T.,.F.,9.,1.23);

 

Binary –двоичный тип данных.

Пример

ENTITY picture

bn:BINARY

END_ENTITY

Образец экземпляра объекта в секции данных

#4=PICTURE(“1556FBO)”);

bn закодирован как “1556BF0”, что соответствует последовательности битов 101 0101 0110 1111 1011 0000.

 

Number –отображение вещественных данных

7.1.2 List – отображение спискового типа, помещаемое в скобках, где на месте необязательного типа стоит знак доллара.

Пример

ENTITY wedget;

Atribute1:LIST[0:?] OF INTEGER;

Atribute2:LIST[0:?] OF INTEGER;

Atribute1:OPTIMAL LIST[0:?] OF INTEGER;

Atribute1:REAL;

END_ENTITY

 

Образец экземпляра в секции данных

#4 = WIDGET((),(1,2,3),$,2.56);

 

7.1.3 Array, Set, Bag –отображаются в структуру обмена как данные спискового типа.

7.1.4 Enumeration –отображается в структуру обмена как перечисляемый тип данных.

Пример

TYPE

Primary_colour = ENUMERATION OF(red,green,blue);

END_TYPE;

ENTITY widget;

P_colour: primary_colour;

END_ENTITY;

 

Образец в секции данных.

 

#2=WIDGET(.RED.);

 

7.1.5 Выбираемый тип данных –определяет список типов данных, называемый список-выбора (select-list).

Пример

Определение объекта в EXPRESS

ENTITY Leader SUBTYPE OF (Employee);

Project: STRING;

END_ENTITY;

ENTITY Manager SUBTYPE OF (Employee);

Unit: STRING;

END_ENTITY;

ENTITY Employee;

Name: STRING;

END_ENTITY;

TYPE Supervisor = SELECT (Manager, Leader);

END_TYPE;

ENTITY Meeting;

Date: STRING;

Attandees: SET [2:?] OF Supervisor;

END_ENTITY;

 

Образцы экземпляров в секции данных.

 

#1 = LEADER (‘J. Brahms,’Academic Festival’);

#2 = MANAGER(‘S. Ozava’,’Tokio Symphony’);

#3 = (EMPLOYEE(‘G. Verdi’) LEADER(‘Aida’)

MANAGER(‘La Scala’));

#4 = MEETING(‘14921012’,(#1,#2,#3));

Вторым атрибутом экземпляра #4 являются участники: SET OF Supervisor.