FUNCTION unambiguously_specified_multi_level_reference_designator
(* SCHEMA step_merged_ap_schema; *)
-- IN AP238 STEP-NC/AP242
FUNCTION unambiguously_specified_multi_level_reference_designator
(links : LIST [1:?] OF next_assembly_usage_occurrence ) : BOOLEAN;
REPEAT i := 1 TO SIZEOF(links) - 1;
CASE TRUE OF
(('STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(links[i]\product_definition_relationship.relating_product_definition)) AND ('STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(links[i]\product_definition_relationship.related_product_definition))) AND ('STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(links[(i + 1)]\product_definition_relationship.relating_product_definition)) :
BEGIN
IF NOT ((links[i]\product_definition_relationship.related_product_definition :=: links[(i + 1)]\product_definition_relationship.relating_product_definition) OR (SIZEOF(QUERY (pdr <* USEDIN(links[i]\product_definition_relationship.related_product_definition, 'STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION_RELATIONSHIP.RELATED_PRODUCT_DEFINITION')| (pdr\product_definition_relationship.relating_product_definition :=: links[(i + 1)]\product_definition_relationship.relating_product_definition))) = 1) AND (links[i]\product_definition_relationship.related_product_definition\product_definition.formation\product_definition_formation.of_product :=: links[(i + 1)]\product_definition_relationship.relating_product_definition\product_definition.formation\product_definition_formation.of_product)) THEN
RETURN (FALSE);
END_IF;
END;
('STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION_REFERENCE' IN TYPEOF(links[i]\product_definition_relationship.related_product_definition)) AND ('STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION_REFERENCE' IN TYPEOF(links[(i + 1)]\product_definition_relationship.relating_product_definition)) :
BEGIN
IF NOT ((links[i]\product_definition_relationship.related_product_definition :=: links[(i + 1)]\product_definition_relationship.relating_product_definition) OR (((SIZEOF(QUERY (pdr <* USEDIN(links[i]\product_definition_relationship.related_product_definition, 'STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION_RELATIONSHIP.RELATED_PRODUCT_DEFINITION')| (pdr\product_definition_relationship.relating_product_definition :=: links[(i + 1)]\product_definition_relationship.relating_product_definition))) = 1) AND (links[i]\product_definition_relationship.related_product_definition\product_definition_reference.product_id = links[(i + 1)]\product_definition_relationship.relating_product_definition\product_definition_reference.product_id)) AND (links[i]\product_definition_relationship.related_product_definition\product_definition_reference.id_owning_organization_name = links[(i + 1)]\product_definition_relationship.relating_product_definition\product_definition_reference.id_owning_organization_name)) AND (links[i]\product_definition_relationship.related_product_definition\product_definition_reference.product_definition_id <> links[(i + 1)]\product_definition_relationship.relating_product_definition\product_definition_reference.product_definition_id)) THEN
RETURN (FALSE);
END_IF;
END;
('STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION_REFERENCE' IN TYPEOF(links[i]\product_definition_relationship.relating_product_definition)) AND ('STEP_MERGED_AP_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(links[i]\product_definition_relationship.related_product_definition)) :
RETURN (FALSE);
OTHERWISE :
RETURN (FALSE);
END_CASE;
END_REPEAT;
RETURN (TRUE);
END_FUNCTION;
Referenced By
Defintion unambiguously_specified_multi_level_reference_designator is references by the following definitions:
[Top Level Definitions] [Exit]Generated by STEP Tools® EXPRESS to HTML Converter
2024-09-06T14:00:33-04:00