7.4.1 Функция compatible_complete_types_and_value
Функция compatible_complete_types_and_value дополняет определенную в ИСО 13584-24 функцию compatible_type_and_value проверкой всех типов данных, определенных в данном расширении. Данная функция обеспечивает проверку соответствия агрегированных значений их типу данных.
Если значение, ассоциированное с каким-либо свойством, не является агрегированным, вызывают функцию compatible_type_and_value, в противном случае - функцию compatible_aggregate_domain_ and_aggregate_value.
Спецификация EXPRESS:
7.4.2 Функция compatible_aggregate_domain_and_aggregate_value
Функция compatible_aggregate_domain_and_aggregate_value обеспечивает проверку того, что элемент dom property_or_data_type_BSU имеет правильный тип данных для значения val agregate_entity_ instance_value.
Эта функция возвращает значение UNKNOWN (неизвестно), если неизвестен конечный тип данных, ассоциируемый с элементом dom.
Если в конечном типе данных, ассоциируемом с dom property_or_data_type_BSU, нет ссылки на объект aggregate_type, функция возвращает значение FALSE (ложно).
Если в конечном типе данных, ассоциируемом с dom property_or_data_type_BSU, имеется ссылка на объект aggregate_type, то данная функция вызывает функцию compatible_aggregate_type_and_value, передавая ей вычисленный тип данных the_data_type и значение val aggregate_entity_instance_value в качестве параметров.
Спецификация EXPRESS:
7.4.3 Функция data_type_final_type
Функция data_type_final_type обеспечивает вычисление типа данных data_type, определяющего конечную область значений элементов property_BSU или data_type_BSU.
Если тип данных data_type ассоциирован с именованными типами named_type, функция рекурсивно проверяет атрибуты типов referred_type до тех пор, пока не обнаружит тип данных, не являющийся простым или сложным (simple_type и complex_type). После этого функция возвращает набор, содержащий объект data_type.
Если определение BSU недоступно, а результат данной функции не может быть сведен к simple_type или complex_type, функция возвращает пустой набор data_type.
Спецификация EXPRESS: