Application module: Component grouping | ISO/TS 10303-1656:2019(E) © ISO |
This clause specifies the EXPRESS schema derived from the mapping table. It uses elements from the common resources or from other application modules and defines the EXPRESS constructs that are specific to this part of ISO 10303.
This clause constitutes the Module Interpreted Module (MIM) of the application module.
This clause also specifies the modifications that apply to the constructs imported from the common resources.
The following restrictions apply to the use, in this schema, of constructs defined in common resources or in application modules:
Short names of entities defined in this schema are described in Annex A. Unambiguous identification of this schema is defined in Annex B.
EXPRESS specification:
*)
SCHEMA Component_grouping_mim;
USE FROM
Assembly_component_mim;
--
ISO/TS 10303-1802
USE FROM
Value_with_unit_extension_mim;
--
ISO/TS 10303-1753
REFERENCE FROM
product_definition_schema
--
ISO 10303-41
(acyclic_product_definition_relationship);
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Assembly_component_mim ISO/TS 10303-1802 Value_with_unit_extension_mim ISO/TS 10303-1753 product_definition_schema ISO 10303-41
NOTE 2 See Annex D, Figures D.1and D.2 for a graphical representation of this schema.
This subclause specifies the MIM entities for this module. The MIM entities and definitions are specified below.
An array_placement_group is a type of assembly_group_component that implements the ARM concept of Array_placement_group. An array_placement_group may be one of a linear_array_placement_group_component or a rectangular_array_placement_group_component.
EXPRESS specification:
*)
ENTITY array_placement_group
SUPERTYPE OF (ONEOF (linear_array_placement_group_component,
rectangular_array_placement_group_component))
SUBTYPE OF (assembly_group_component);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY assembly_group_component
SUBTYPE OF (assembly_component);
END_ENTITY;
(*
An assembly_group_component_definition_placement_link is a type of product_definition and a product_definition_relationship that implements the ARM concept of Assembly_component_placement_link.
EXPRESS specification:
*)
ENTITY assembly_group_component_definition_placement_link
SUBTYPE OF (product_definition, product_definition_relationship);
SELF\product_definition_relationship.relating_product_definition : assembly_component;
SELF\product_definition_relationship.related_product_definition : assembly_component;
WHERE
WR1: SELF\product_definition_relationship.related_product_definition :<>:
SELF\product_definition_relationship.relating_product_definition;
WR2: acyclic_product_definition_relationship (SELF,
[SELF\product_definition_relationship.related_product_definition],
'COMPONENT_GROUPING_MIM.ASSEMBLY_GROUP_COMPONENT_DEFINITION_PLACEMENT_LINK');
END_ENTITY;
(*
Attribute definitions:
relating_product_definition: specifies a role of the assembly_component for the assembly_group_component_definition_placement_link.
related_product_definition: specifies a role of the assembly_component for the assembly_group_component_definition_placement_link.
Formal propositions:
WR1: The related_product_definition shall not be the relating_product_definition.
WR2: The graph of instances of the entity assembly_group_component_definition_placement_link shall not contain a cycle.
An interfaced_group_component is a type of assembly_group_component.
NOTE This entity is deprecated.
EXPRESS specification:
*)
ENTITY interfaced_group_component
SUBTYPE OF (assembly_group_component);
END_ENTITY;
(*
A linear_array_component_definition_link is a type of product_definition and a product_definition_relationship that implements the ARM concept of Linear_array_placement_group_component_link.
EXPRESS specification:
*)
ENTITY linear_array_component_definition_link
SUBTYPE OF (product_definition, product_definition_relationship);
SELF\product_definition_relationship.relating_product_definition : linear_array_placement_group_component;
SELF\product_definition_relationship.related_product_definition : linear_array_placement_group_component;
WHERE
WR1: SELF\product_definition_relationship.related_product_definition :<>:
SELF\product_definition_relationship.relating_product_definition;
WR2: acyclic_product_definition_relationship (SELF,
[SELF\product_definition_relationship.related_product_definition],
'COMPONENT_GROUPING_MIM.LINEAR_ARRAY_COMPONENT_DEFINITION_LINK');
END_ENTITY;
(*
Attribute definitions:
relating_product_definition: specifies a role of the linear_array_placement_group_component for the linear_array_component_definition_link.
related_product_definition: specifies a role of the linear_array_placement_group_component for the linear_array_component_definition_link.
Formal propositions:
WR1: The related_product_definition shall not be the relating_product_definition.
WR2: The graph of instances of the entity linear_array_component_definition_link shall not contain a cycle.
A linear_array_placement_group_component is a type of array_placement_group that implements the ARM concept of Linear_array_placement_group_component.
EXPRESS specification:
*)
ENTITY linear_array_placement_group_component
SUBTYPE OF (array_placement_group);
END_ENTITY;
(*
A rectangular_array_placement_group_component is a type of array_placement_group that implements the ARM concept of Rectangular_array_placement_group_component.
EXPRESS specification:
*)
ENTITY rectangular_array_placement_group_component
SUBTYPE OF (array_placement_group);
END_ENTITY;
(*
*)
END_SCHEMA; -- Component_grouping_mim
(*
© ISO 2019 — All rights reserved