Настоящий стандарт основан на изложенных в данном разделе основных принципах. Кроме того, к настоящему стандарту применимы понятия, описанные в ИСО 10303-11, раздел 5.
Язык EXPRESS-X обеспечивает спецификацию:
- различающихся образов данных, управляемых EXPRESS-схемой, с использованием объявлений образов (см. 9.3) в образе схемы (см. 9.5);
- отображения данных, управляемых одной или несколькими исходными EXPRESS-схемами, с использованием объявлений отображения (см. 9.4) в отображении схемы (см. 9.6).
Схема, представленная на языке EXPRESS-X, может содержать спецификации функций и процедур языка EXPRESS для того, чтобы поддержать определение образов и отображений.
Примечания
1 Соглашение об обозначениях, используемое в данной спецификации, должно контекстуализировать части предложения относительно обсуждения образов или отображений за счет включения в соответствующие места предложения терминов "(views [образы])" или "(maps [отображения])".
2 Соглашение об обозначениях, используемое в данной спецификации, заключается в том, что связующий экземпляр обозначается как упорядоченный набор имен экземпляров объектов или образов, разделенных запятыми (","), заключенный в угловые скобки ("<>"). Упорядочение имен экземпляров соответствует порядку появления исходного пространства в элементе языка FROM в объявлении образа или отображения.
Пример - Пусть заданы: |
- объявление образа: |
SCHEMA_VIEW my_person_org_achema_view; |
REFERENCE FROM person_and_org_schema; |
VIEW person_org; |
FROM p: person; o : organization; -- определяет порядок |
SELECT |
name : STRING := p.last_name; |
org : STRING := о.department_name; |
END_VIEW; |
END_SCHEMA_VIEW; |
- исходная EXPRESS-схема: |
SCHEMA person_and_org_schema; |
ENTITY person; |
first_name : STRING; |
last_name : STRING; |
END_ENTITY; |
ENTITY organization; |
department_name : STRING; |
END_ENTITY; |
END_SCHEMA; |
- данные, закодированные в соответствии с ИСО 10303-21 [2]: |
#1=PERSON ('James', 'Smith'); |
#2=PERSON ('Fredrick', 'Jones'); |
#31=ORGANIZATION ('Engineering'); |
#32=ORGANIZATION ('Sales'); |
тогда связующие экземпляры для заданных образа и данных могут быть записаны в представленном ниже виде. Понятие связующих экземпляров определено в других разделах настоящего стандарта и не является необходимым для понимания данного примера. Однако необходимо отметить, что первый элемент каждого связующего экземпляра берется из пространства объекта person, а второй элемент - из пространства объекта organization. Данный порядок соответствует порядку появления объектов person и organization в элементе языка FROM данного образа: |