Application module: Assembly module macro definition | ISO/TS 10303-1637:2014-02(E) © ISO |
This clause specifies the information requirements for the Assembly module macro definition application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.
NOTE 1 A graphical representation of the information requirements is given in Annex C.
NOTE 2 The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.
This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following begins the Assembly_module_macro_definition_arm schema and identifies the necessary external references.
EXPRESS specification:
*)
SCHEMA Assembly_module_macro_definition_arm;
(*
The following EXPRESS interface statement specifies the elements imported from the ARM of another application module.
EXPRESS specification:
*)
USE FROM
Interconnect_module_with_macros_arm;
--
ISO/TS 10303-1687
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Interconnect_module_with_macros_arm ISO/TS 10303-1687
NOTE 2 See Annex C, Figures C.1and C.2 for a graphical representation of this schema.
This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.
An Assembly_module_macro_terminal is a type of Assembly_module_terminal that is populated only in the case of a macro definition.
NOTE A join terminal makes no sense in a context other than a macro definition.
EXPRESS specification:
*)
ENTITY Assembly_module_macro_terminal
SUBTYPE OF (Assembly_module_terminal);
INVERSE
defining_terminal : Component_feature_to_physical_usage_view_assignment FOR defined_part_feature;
WHERE
WR1: 'LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.INTERCONNECT_MODULE_MACRO_TERMINAL' IN TYPEOF(defining_terminal\Component_feature_to_physical_usage_view_assignment.assigned_design_object);
WR2: 'ASSEMBLY_MODULE_MACRO_DEFINITION_ARM.' + 'COMPONENT_TERMINAL_TO_ASSEMBLY_MODULE_MACRO_TERMINAL_ASSIGNMENT' IN TYPEOF(defining_terminal);
WR3: NOT (SIZEOF(USEDIN(SELF,
'')) > 1) OR (SIZEOF(QUERY(ct <* USEDIN(SELF,
'') | NOT ('ASSEMBLY_MODULE_WITH_MACRO_COMPONENT_ARM.ASSEMBLY_MODULE_MACRO_COMPONENT_JOIN_TERMINAL' IN TYPEOF(ct))))
= 1);
END_ENTITY;
(*
Attribute definitions:
defining_terminal: specifies an inverse relationship that specifies that the existence of the Assembly_module_macro_terminal is dependent upon the existence of the Component_feature_to_physical_usage_view_assignment that specifies the Assembly_module_macro_terminal as its defined_part_feature.
Formal propositions:
WR1: An Interconnect_module_macro_terminal. shall be referenced by the defining_terminal.
WR2: The defining_terminal shall be a Component_terminal_to_assembly_module_macro_terminal_assignment.
WR3: With the exception of the defining_terminal, an Assembly_module_macro_terminal may be referenced only by Assembly_module_macro_component_join_terminal.
A Component_terminal_to_assembly_module_macro_terminal_assignment is a type of Component_feature_to_physical_usage_view_assignment that is populated only in the case of a macro definition.
EXPRESS specification:
*)
ENTITY Component_terminal_to_assembly_module_macro_terminal_assignment
SUBTYPE OF (Component_feature_to_physical_usage_view_assignment);
SELF\Component_feature_to_physical_usage_view_assignment.defined_part_feature RENAMED usage_view_terminal : Assembly_module_macro_terminal;
SELF\Component_feature_to_physical_usage_view_assignment.assigned_design_object RENAMED assigned_terminal : Interconnect_module_macro_component_join_terminal;
UNIQUE
UR1: usage_view_terminal;
END_ENTITY;
(*
Attribute definitions:
usage_view_terminal: specifies the role of the Assembly_module_macro_terminal for the Component_terminal_to_assembly_module_macro_terminal_assignment.
assigned_terminal: specifies the role of the Interconnect_module_macro_component_join_terminal for the Component_terminal_to_assembly_module_macro_terminal_assignment.
Formal propositions:
UR1: The usage_view_terminal shall be unique within a population of Component_terminal_to_assembly_module_macro_terminal_assignment.
This subclause specifies the ARM subtype constraint for this module. The subtype constraint places a constraint on the possible super-type / subtype instantiations. The ARM subtype constraint and definition is specified below.
The assembly_module_terminal_subtypes constraint specifies a constraint that applies to instances of subtypes of Assembly_module_terminal.
EXPRESS specification:
*)
SUBTYPE_CONSTRAINT assembly_module_terminal_subtypes FOR Assembly_module_terminal;
(ONEOF (Assembly_module_interface_terminal,
Assembly_module_macro_terminal)
ANDOR Layered_assembly_module_terminal);
END_SUBTYPE_CONSTRAINT;
(*
*)
END_SCHEMA; -- Assembly_module_macro_definition_arm
(*
© ISO 2014 — All rights reserved