| FUNCTION get_derived_shape_element (input : part_view_definition) : SET [0:?] OF derived_shape_element;
 
 LOCALEND_FUNCTION; -- get_derived_shape_elementis : SET  OF  Item_shape := bag_to_set(USEDIN(input, 'SHAPE_PROPERTY_ASSIGNMENT_XIM.ITEM_SHAPE.DESCRIBED_ELEMENT'));
 se : SET OF Shape_element := [];
 END_LOCAL;
 REPEAT i := 1 TO SIZEOF(is) BY 1;
 se  := se + bag_to_set(USEDIN(is[i], 'SHAPE_PROPERTY_ASSIGNMENT_XIM.SHAPE_ELEMENT.CONTAINING_SHAPE'));
 END_REPEAT;
 
 RETURN(QUERY(dse <* se | 'DERIVED_SHAPE_ELEMENT_XIM.DERIVED_SHAPE_ELEMENT' IN TYPEOF(se)));
 
 |