|
ENTITY terminal SUBTYPE OF (shape_aspect); WHERE wr1: SELF \ shape_aspect . product_definitional = UNKNOWN ; wr2: 'electrotechnical_design.product_definition' IN TYPEOF ( SELF \ shape_aspect . of_shape \ property_definition . definition ) ; wr3: SELF \ shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name IN [ 'functional definition' , 'functional occurrence' , 'part definition' , 'part occurrence' ] ; wr4: SELF \ shape_aspect . of_shape \ property_definition . definition . name = 'single instance' ; wr5: SIZEOF ( QUERY ( des <* USEDIN ( SELF , 'electrotechnical_design.' + 'item_designation_assignment.' + 'items' ) | NOT ( SIZEOF ( TYPEOF ( des ) * [ 'electrotechnical_design.' + 'document_designation_assignment' , 'electrotechnical_design.' + 'object_reference_designation_assignment' , 'electrotechnical_design.' + 'signal_designation_assignment' ] ) > 0 ) ) ) = 0 ; wr6: SIZEOF ( QUERY ( des <* USEDIN ( SELF , 'electrotechnical_design.' + 'item_designation_assignment.' + 'items' ) | ( 'electrotechnical_design.' + 'terminal_designation_assignment' IN TYPEOF ( des ) ) AND ( des . role . description = 'primary' ) ) ) = 1 ; wr7: SIZEOF ( QUERY ( sar <* USEDIN ( SELF , 'electrotechnical_design.' + 'shape_aspect_relationship.' + 'related_shape_aspect' ) | ( sar . related_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'functional occurrence' ) AND ( sar . name = 'definition usage' ) AND ( 'electrotechnical_design.terminal' IN TYPEOF ( sar . relating_shape_aspect ) ) AND ( sar . relating_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'functional definition' ) ) ) = 1 ; wr8: SIZEOF ( QUERY ( sar <* USEDIN ( SELF , 'electrotechnical_design.' + 'shape_aspect_relationship.' + 'related_shape_aspect' ) | ( sar . related_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'part occurrence' ) AND ( sar . name = 'definition usage' ) AND ( 'electrotechnical_design.terminal' IN TYPEOF ( sar . relating_shape_aspect ) ) AND ( sar . relating_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'part definition' ) ) ) = 1 ; wr9: SIZEOF ( QUERY ( sar <* USEDIN ( SELF , 'electrotechnical_design.' + 'shape_aspect_relationship.' + 'relating_shape_aspect' ) | ( sar . relating_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'functional definition' ) AND ( sar . name = 'correspondence' ) AND ( NOT ( 'electrotechnical_design.terminal' IN TYPEOF ( sar . related_shape_aspect ) ) ) AND ( NOT ( sar . related_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'functional occurrence' ) ) ) ) = 0 ; wr10: SIZEOF ( QUERY ( sar <* USEDIN ( SELF , 'electrotechnical_design.' + 'shape_aspect_relationship.' + 'relating_shape_aspect' ) | ( sar . relating_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'part definition' ) AND ( sar . name = 'correspondence' ) AND ( 'electrotechnical_design.terminal' IN TYPEOF ( sar . related_shape_aspect ) ) AND ( sar . related_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'part occurrence' ) ) ) <= 1 ; wr11: SIZEOF ( QUERY ( corr_mem <* QUERY ( sar <* USEDIN ( SELF , 'electrotechnical_design.' + 'shape_aspect_relationship.' + 'relating_shape_aspect' ) | ( sar . relating_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'functional definition' ) AND ( sar . name = 'correspondence' ) ) | NOT ( SIZEOF ( QUERY ( next_corr_mem <* QUERY ( sar <* ( USEDIN ( SELF , 'electrotechnical_design.' + 'shape_aspect_relationship.' + 'relating_shape_aspect' ) - corr_mem ) | ( sar . relating_shape_aspect . of_shape \ property_definition . definition . frame_of_reference \ application_context_element . name = 'functional definition' ) AND ( sar . name = 'correspondence' ) ) | corr_mem . related_shape_aspect = next_corr_mem . related_shape_aspect ) ) = 0 ) ) ) = 0 ; END_ENTITY; -- terminal |
Entity data types and their attributesshape_aspectname: label; (OPT) description: text; of_shape: product_definition_shape; product_definitional: LOGICAL; (DER) id: identifier; terminal - |
Global rules for this entity data type- |
public interface ETerminal extends EShape_aspect |
public class CTerminal implements ETerminal |
public class ATerminal extends AEntitypublic ETerminal getByIndex(int index)public ETerminal getCurrentMember(SdaiIterator it) |