Application module: Shape feature | ISO/TS 10303-1764: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 Shape_feature_mim;
USE FROM
machining_feature_schema
--
ISO/DIS 10303-113
(feature_component_relationship,
shape_defining_relationship);
USE FROM
Characterizable_object_mim;
--
ISO/TS 10303-1765
USE FROM
Contextual_shape_positioning_mim;
--
ISO/TS 10303-1027
USE FROM
product_property_definition_schema
--
ISO 10303-41
(characterized_object_relationship,
constituent_shape_aspect);
USE FROM
Property_assignment_mim;
--
ISO/TS 10303-1030
USE FROM
shape_aspect_definition_schema
--
ISO 10303-47
(composite_shape_aspect,
feature_definition,
instanced_feature);
REFERENCE FROM
product_property_definition_schema
--
ISO 10303-41
(get_shape_aspects);
REFERENCE FROM
product_property_representation_schema
--
ISO 10303-41
(get_property_definition_representations);
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
machining_feature_schema ISO/DIS 10303-113 Characterizable_object_mim ISO/TS 10303-1765 Contextual_shape_positioning_mim ISO/TS 10303-1027 product_property_definition_schema ISO 10303-41 Property_assignment_mim ISO/TS 10303-1030 shape_aspect_definition_schema ISO 10303-47 product_property_definition_schema ISO 10303-41 product_property_representation_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.
EXPRESS specification:
*)
ENTITY general_feature
SUBTYPE OF (shape_feature_definition);
WHERE
WR1: (SIZEOF(get_property_definition_representations(SELF)) <= 1) AND
(SIZEOF( QUERY( pdr <* get_property_definition_representations(SELF) |
'SHAPE_ASPECT_DEFINITION_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN
TYPEOF(pdr.used_representation)
)) <= 1);
WR2: SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
sa.description = 'course of travel occurrence')) =
SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
(sa.description = 'course of travel occurrence') AND
(SIZEOF( QUERY( sar <* USEDIN( sa, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') |
('MACHINING_FEATURE_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN
TYPEOF(sar)) AND
(sar.name = 'course of travel')
)) = 1 )));
WR3: SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
sa.description = 'course of travel occurrence')) =
SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
(sa.description = 'course of travel occurrence') AND
(SIZEOF( QUERY( sar <* USEDIN( sa, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') |
('MACHINING_FEATURE_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN
TYPEOF(sar)) AND
('SHAPE_FEATURE_MIM.PATH_FEATURE_COMPONENT' IN
TYPEOF(sar.relating_shape_aspect))
)) = 1 )));
WR4: SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
sa.description = 'boundary occurrence')) =
SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
(sa.description = 'boundary occurrence') AND
(SIZEOF( QUERY( sar <* USEDIN( sa, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') |
('MACHINING_FEATURE_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN
TYPEOF(sar)) AND
(sar.description = 'profile usage')
)) = 1 )));
WR5: (SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
('SHAPE_ASPECT_DEFINITION_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN
TYPEOF(sa))
)) <= 1 ) AND
(SIZEOF( QUERY( sa <* get_shape_aspects(SELF) |
('SHAPE_ASPECT_DEFINITION_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN
TYPEOF(sa)) AND
(sa.name = 'general compound feature') AND
(SIZEOF( QUERY( sar <* USEDIN( sa, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT') |
('MACHINING_FEATURE_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN
TYPEOF(sar)) AND
('SHAPE_ASPECT_DEFINITION_SCHEMA.INSTANCED_FEATURE' IN
TYPEOF(sar.related_shape_aspect))
)) >= 2 )
)) <= 1 );
END_ENTITY;
(*
Formal propositions:
WR1: The general_feature shall be represented by at most one implicit representation. If present, this representation shall be of type shape_representation_with_parameters.
WR2: If the general_feature is the basis shape for one or more occurrences of shape_aspect with a description of 'course of travel occurrence', these shape_aspects shall be the related_shape_aspect of a shape_aspect_relationship that has a name of 'course of travel'.
WR3: The aspects of the basis shape that have a description of 'course of travel occurrence' shall be the related_shape_aspect of a shape_aspect_relationship that refers to a path_feature_component as relating_shape_aspect.
WR4: If the general_feature is the basis shape for one or more occurrences of shape_aspect with a description of 'boundary occurrence', these shape_aspects shall be the related_shape_aspect of a shape_defining_relationship that has a description of 'profile usage'.
WR5: The basis shape of a general_feature shall be referred to by at most one shape_aspect that is of type composite_shape_aspect. If present, this shape_aspect shall have a name of 'general compound feature' and shall be the relating_shape_aspect of at least two feature_component_relationship. These feature_component_relationships shall refer to instanced_feature instances as their related_shape_aspect.
EXPRESS specification:
*)
ENTITY placed_feature
SUBTYPE OF (shape_aspect);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY shape_feature_definition
SUBTYPE OF (feature_definition);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY shape_feature_definition_element_relationship
SUBTYPE OF (shape_aspect_relationship, characterized_object);
DERIVE
SELF\characterized_object.name : label := SELF\shape_aspect_relationship.name;
SELF\characterized_object.description : text := SELF\shape_aspect_relationship.description;
END_ENTITY;
(*
Attribute definitions:
name: an inherited explicit attribute that is re-declared into a derived attribute with the same value as the inherited attribute name of shape_aspect_relationship.
description: an inherited explicit attribute that is re-declared into a derived attribute with the same value as the inherited attribute description of shape_aspect_relationship.
EXPRESS specification:
*)
ENTITY shape_feature_definition_relationship
SUBTYPE OF (characterized_object_relationship, characterized_object);
SELF\characterized_object_relationship.relating_object : shape_feature_definition;
SELF\characterized_object_relationship.related_object : shape_feature_definition;
DERIVE
SELF\characterized_object.name : label := SELF\characterized_object_relationship.name;
SELF\characterized_object.description : text := SELF\characterized_object_relationship.description;
END_ENTITY;
(*
Attribute definitions:
relating_object: an inherited attribute that shall have a value of type shape_feature_definition.
related_object: an inherited attribute that shall have a value of type shape_feature_definition. If one element of the relationship is dependent upon the other, this attribute shall be the dependent one.
name: an inherited explicit attribute that is re-declared into a derived attribute with the same value as the inherited attribute name of characterized_object_relationship.
description: an inherited explicit attribute that is re-declared into a derived attribute with the same value as the inherited attribute description of characterized_object_relationship.
*)
END_SCHEMA; -- Shape_feature_mim
(*
© ISO 2019 — All rights reserved