ГОСТ Р ИСО 10303-44—2022
4.5Определения функций схемы product_structure_schema
4.5.1 Функция acyclic_product_definition_specified_occurrence
Функция acyclic_product_definition_specified_occurrence определяет, содержит ли образован
ный экземплярами представляющих вхождение составляющей части сборочной единицы в сборочную
единицу объектов product_definition_ specified_occurrence, соединяемых посредством атрибута defi
nition (определение) граф, цепочку ссылок, образующую цикл. Функция возвращает значение TRUE
(истина), если не было обнаружено циклов, иначе функция возвращает значение FALSE (ложь).
EXPRESS-специФикаиия:
*)
FUNCTION acyclic_product_definition_specified_occurrence (pdso :
product_definition_specified_occurrence; definition :
product__definition_occurrence) :BOOLEAN; IF NOT
((’PRODUCT_STRUCTURE_SCHEMA.PRODUCT_DEFINITION_SPECIFIED_OCCURRENCE’
) IN TYPEOF(definition)) THEN
RETURN (TRUE);
END_IF;
IF (definition :=: pdso) THEN
RETURN (FALSE);
ELSE RETURN(acyclic_product_definition_specified_occurrence(pdso,
definition\product_definition_occurrence.definition));
END_IF;
END_FUNCTION;
(*
Определения параметров:
- pdso — (входной) проверяемый объект product_definition_specified_ occurrence;
- definition — (входной) объект product_definition_occurrence, на который существуют ссылки.
4.5.2 Функция get_descendant_occurrences
Функция get_descendant_occurrences определяет набор экземпляров объектов product_defini-
tion_specified_occurrence, представляющих потомков представленного объектом product_definition_
occurrence определения изделия.
EXPRESS-специФикаиия:
*)
FUNCTION get_descendant_occurrences (input :
product_definition__occurrence) :SET[0:?] OF
product_definition_specified_occurrence; LOCAL
result :SET OF product__definition_specified_occurrence :=
input.child_occurrences;
END_LOCAL;
REPEAT i := 1 TO HIINDEX(input.child_occurrences) BY 1;
result := result +
get_descendant_occurrences(input.child_occurrences[i]);
END_REPEAT;
RETURN (result);
END_FUNCTION;
(*
Определение параметра:
input — объект product_definition_occurrence, для которого определяются потомки.
4.5.3 Функция unambiguously_specified_multi_level_reference_designator
Функция unambiguously_specified_multi_level_reference_designator определяет, образует
ли список объектов next_assembly_usage_occurrence связную последовательность определений
изделий.
Для каждого объекта next_assembly_usage_occurrence из списка, играющего роль параметра
links, роль атрибута related_product_definition (связываемое определение изделия) должен играть
21