FUNCTION acyclic_composite_text

(* SCHEMA step_merged_ap_schema; *)
-- DIFF IN AP214
-- DIFF IN AP232
-- IN AP203e2/AP214/AP232/AP238 STEP-NC/AP242
FUNCTION acyclic_composite_text
      (start_composite : composite_text;
       child_text : SET [1:?] OF text_or_character ) : LOGICAL;
   LOCAL
      i : INTEGER;
      local_composite_text : SET [0:?] OF composite_text;
      local_annotation_text : SET [0:?] OF annotation_text;
      local_children : SET [0:?] OF text_or_character;
   END_LOCAL;
      local_composite_text := QUERY (child <* child_text| 'STEP_MERGED_AP_SCHEMA.COMPOSITE_TEXT' IN TYPEOF(child));
      IF SIZEOF(local_composite_text) > 0 THEN
         REPEAT i := 1 TO HIINDEX(local_composite_text);
            IF start_composite :=: local_composite_text[i] THEN
               RETURN (FALSE);
            END_IF;
         END_REPEAT;
      END_IF;
      local_children := child_text;
      IF SIZEOF(local_composite_text) > 0 THEN
         REPEAT i := 1 TO HIINDEX(local_composite_text);
            local_children := local_children + local_composite_text[i].collected_text;
         END_REPEAT;
      END_IF;
      local_annotation_text := QUERY (child <* child_text| 'STEP_MERGED_AP_SCHEMA.ANNOTATION_TEXT' IN TYPEOF(child));
      IF SIZEOF(local_annotation_text) > 0 THEN
         REPEAT i := 1 TO HIINDEX(local_annotation_text);
            local_children := local_children + QUERY (item <* local_annotation_text[i]\mapped_item.mapping_source.mapped_representation.items| (SIZEOF([ 'STEP_MERGED_AP_SCHEMA.ANNOTATION_TEXT', 'STEP_MERGED_AP_SCHEMA.COMPOSITE_TEXT' ] * TYPEOF(item)) > 0));
         END_REPEAT;
      END_IF;
      IF local_children :<>: child_text THEN
         RETURN (acyclic_composite_text(start_composite, local_children));
      ELSE
         RETURN (TRUE);
      END_IF;
END_FUNCTION;

Referenced By

Defintion acyclic_composite_text is references by the following definitions:
DefinitionType
 composite_text ENTITY


[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2024-09-06T14:00:33-04:00