(* SCHEMA step_merged_ap_schema; *)
-- IN AP232
RULE simple_list_of_files_constraint FOR (applied_document_reference );
LOCAL
drt : SET OF document_representation_type;
dri : SET OF document_reference_item;
adr : SET OF applied_document_reference;
nameok : BOOLEAN;
result : BOOLEAN := TRUE;
END_LOCAL;
adr := applied_document_reference;
REPEAT i := 1 TO SIZEOF(adr) BY 1;
IF EXISTS(adr[i]\document_reference.role) THEN
IF adr[i]\document_reference.role.name = 'list of files' THEN
dri := adr[i].items;
IF SIZEOF(dri) < 1 THEN
result := FALSE;
END_IF;
REPEAT j := 1 TO SIZEOF(dri) BY 1;
IF NOT ('STEP_MERGED_AP_SCHEMA.DOCUMENT_FILE' IN TYPEOF(dri[j])) THEN
result := FALSE;
END_IF;
drt := dri[j].representation_types;
nameok := FALSE;
REPEAT k := 1 TO SIZEOF(drt) BY 1;
IF (drt[k].name = 'digital') OR (drt[k].name = 'physical') THEN
nameok := TRUE;
END_IF;
END_REPEAT;
IF NOT nameok THEN
result := FALSE;
END_IF;
END_REPEAT;
END_IF;
END_IF;
END_REPEAT;
WHERE
wr1:
result;
END_RULE;
Generated by STEP Tools® EXPRESS to HTML Converter
2025-09-04T17:14:54-04:00