Лексемы
Разделители лексем (знаков)
СНВ структуры обмена
Таблица 3
EXCHANGE_FILE =”ISO-10303-21;”
HEADER_SECTION DATA_SECTION
“END-ISO-10303-21;”.
HEADER_SECTION = “HEADER;”
HEADER_ENTITY HEADER_ENTITY
HEADER_ENTITY
[HEADER_ENTITY_LIST]
“ENDSEC;”.
HEADER_ENTITY_LIST = HEADER_ENTITY {HEADER_ENTITY}.
HEADER_ENTITY = KEYWORD
”(“[PARAMETER_LIST] “)” “;”.
PARAMETER_LIST= PARAMETER {“,” PARAMETER}.
PARAMETER = TYPED PARAMETER|
UNTYPED PARAMETER|OMITTED_PARAMETER.
TYPED PARAMETER = KEYWORD “(“ PARAMETER “)”.
UNTYPED PARAMETER = “$”|INTEGER|REAL|STRING|
ENTITY_INSTANCE_NAME
|ENUMERATION|BINARY|LIST.
OMITTED_PARAMETER = “*”.
LIST = “(“[PARAMETER{“,”PARAMETER}] “)”.
DATA_SECTION =“DATA:”ENTITY_INSTANCE_LIST“ENDSEC;”.
ENTITY_INSTANCE_LIST = ENTITY_INSTANCE
{ ENTITY_INSTANCE}.
ENTITY_INSTANCE = SIMPLE_ ENTITY_INSTANCE|
COMPLEX_ ENTITY_INSTANCE.
SIMPLE_ ENTITY_INSTANCE = ENTITY_INSTANCE_NAME “=”
[SCOPE]SIMPLE_RECORD “,”.
COMPLEX_ ENTITY_INSTANCE = ENTITY_INSTANCE_NAME “=”
[SCOPE]SUBSUPER_RECORD “,”.
SCOPE = “&SCOPE”ENTITY_INSTANCE_LIST
“ENDSCOPE”[EXPORT_LIST].
EXPORT_LIST = “/” ENTITY_INSTANCE_NAME
{“,” ENTITY_INSTANCE_NAME}”/”.
SIMPLE_RECORD = KEYWORD “(“[PARAMETER_LIST] “)”.
SUBSUPER_RECORD = ‘(“ SIMPLE_RECORD_LIST “)”.
SIMPLE_RECORD_LIST = SIMPLE_RECORD{ SIMPLE_RECORD}.
Разделителем лексемы является элементом, который разделяет две лексемы. Разделителем лексем является пробел. Несколько пробелов считаются как один.
|
|
Комментарий пишется между знаками косая черта звездочка “/*”. Например, /* комментарий */. Комментарии не могут быть вложены. Любые графические символы, появляющиеся внутри комментария, не имеют значения для структуры обмена и предназначены только для чтения людьми.
Лексема является специальным ключевым словом или кодом простого типа данных.
Для открытия структуры обмена должна быть использована специальная лексема “ISO-10303-21;”, а для закрытия структуры обмена лексема “END-ISO-10303-21;”.
Для того чтобы открыть заголовочную секцию структуры обмена должна быть использована специальная лексема “HEADER”, а для закрытия “ENDSEC”.
Для открытия секции данных используется лексема “DATA”, для закрытия “ENDSEC”
Для того чтобы открыть структуру области применения должна быть использована лексема “&SCOPE”. Для закрытия “ENDSCOPE”.
Специальная лексема знак доллара (“ $”) используется для представления объекта, чье значение не представлено в структуре обмена.
Звездочка (“*”) используется для представления объекта, значение которого не представлено в структуре обмена, но может быть выведено из других величин в соответствии с правилами. Данными в EXPRESS-схеме.
Знаки точка с запятой (“;”), скобки (“(,)”)), запятая (“,”) и косая черта (“/”) используются как знаки препинания в структуре обмена.