ГОСТ Р ИСО 10303-21—2022
Таблица 3 — Структура обмена в WSN
EXCHANGE_FILE= "ISO-10303-21;"
HEADER_SECTION [ANCHOR_SECTION ]
[REFERENCE_SECTION ] { DATA_SECTION }
"END-ISO-10303-21;" { SIGNATURE SECTION }.
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_LISTPARAMETER { "," PARAMETER } .
PARAMETERTYPED_PARAMETER |
UNTYPED_PARAMETER |OMITTED_PARAMETER
TYPED_PARAMETERKEYWORD "(" PARAMETER ")" .
UNTYPED_PARAMETER"$" | INTEGER |REAL |STRING |RHS_OCCURENCE_NAME
|ENUMERATION |BINARY |LIST .
ОМITТЕD_PARAMETER
H* II
LIST"(" [PARAMETER {PARAMETER } ] ")" .
ANCHOR_SECTION= "ANCHOR;" ANCHOR_LIST "ENDSEC;" .
ANCHOR_LIST= {ANCHOR } .
ANCHOR= ANCHOR_NAME "=" ANCHOR_ITEM { ANCHOR_TAG }.
ANCHOR_ITEM= "$" | INTEGER |REAL |STRING |ENUMERATION |BINARY
|RHS_OCCURRENCE_NAME |RESOURCE |ANCHOR_ITEM_LIST .
ANCHOR_ITEM_LIST = "(" [ANCHOR_ITEM {ANCHOR_ITEM } ] ")" .
ANCHOR TAG= "{" TAG NAMEANCHOR ITEM "}" .
REFERENCE_SECTION = "REFERENCE;" REFERENCE_LIST "ENDSEC;" .
REFERENCE_LIST= { REFERENCE } .
REFERENCE= LHS OCCURRENCE NAME "=" RESOURCE ";" .
DATA_SECTION= "DATA" [ "(" PARAMETER_L1ST ")" ] ";"
ENTITY_INSTANCE_LIST "ENDSEC;" .
ENTITY_INSTANCE_LIST = { ENTITY_INSTANCE } .
ENTITY_INSTANCE= SIMPLEMENTITY_INSTANCE |COMPLEX_ENTITY__INSTANCE .
SIMPLEMENTITY_INSTANCE = ENTITY__INSTANCE_NAME "=" SIMPLE_RECORD ";" .
COMPLEX_ENTITY_INSTANCE = ENTITY_INSTANCE_NAME "=" SUBSUPER_RECORD ";"
SIMPLE_RECORD= KEYWORD "(" [ PARAMETER_LIST ] ")" .
SUBSUPER_RECORD= "(" SIMPLE_RECORD_LIST ")" .
SIMPLE RECORD LIST = SIMPLE RECORD { SIMPLE RECORD } .
SIGNATURE SECTION = "SIGNATURE" SIGNATURE CONTENT "ENDSEC;".
5.6 Разделители лексем
Разделитель лексемы является элементом, отделяющим две лексемы. Разделителями являются
пробел, явные директивы управления печатью и комментарии. Разделитель может появиться между
терминальными или нетерминальными лексемами таблицы 3. В том месте, где может появиться один
разделитель, может появиться любое число разделителей. Разделитель не должен появляться внутри
лексем, за исключением того, что явные директивы управления печатью могут появляться внутри чисел в
двоичном представлении и внутри строк. Директивы управления печатью определены в разделе 13.
Примечание — Пробел — это единственный символ пробела, разделяющий лексемы. Разделители
строк, такие как перевод строки или возврат каретки, и другие управляющие символы, такие как перевод стра-
8