FUNCTION item_in_context

(* SCHEMA STRUCTURAL_FRAME_SCHEMA; *)


FUNCTION item_in_context
 		(item : representation_item; cntxt : representation_context) : BOOLEAN;
LOCAL
	i : INTEGER;
	y : BAG OF representation_item;
END_LOCAL;
 
(* If there is one or more representation using both the item and cntxt return true. *)
 
IF SIZEOF(USEDIN(item,'STRUCTURAL_FRAME_SCHEMA.REPRESENTATION.ITEMS')
	* cntxt.representations_in_context) > 0 THEN
	RETURN (TRUE);
 
	(* Determine the bag of representation_items that reference item. *)
 
	ELSE
		y := QUERY(z <* USEDIN (item , '') |
	 'STRUCTURAL_FRAME_SCHEMA.REPRESENTATION_ITEM' IN TYPEOF(z));

	 (* Ensure that the bag is not empty. *)
 
	 IF SIZEOF(y) > 0 THEN

	 (* For each element in the bag *)
 
	 REPEAT i := 1 TO HIINDEX(y);

	(* Check to see it is an item in the input cntxt. *)
 
	IF item_in_context(y[i], cntxt) THEN
		RETURN (TRUE);
	END_IF;
	END_REPEAT;
	END_IF;
  END_IF;
 
  (* Return false when all possible branches have been checked with no success. *)
  RETURN (FALSE);
END_FUNCTION; (* STEP Part 43 (unchanged in 2nd edition)  *)

Referenced By

Defintion item_in_context is references by the following definitions:
DefinitionType
 compatible_dimension RULE
 representation_map ENTITY


[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2023-03-25T00:11:39-04:00