Application module: Shape feature ISO/TS 10303-1764:2019(E)
© ISO

Cover page
Table of contents
Copyright
Foreword
Introduction
1 Scope
2 Normative references
3 Terms, definitions and abbreviated terms
    3.1 Terms and definitions
    3.2 Abbreviated terms

4 Information requirements
   4.1 Required AM ARMs
   4.2 ARM type definitions
   4.3 ARM entity definitions
   4.4 ARM subtype constraint definition
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing
     5.2.1 MIM entity definitions

A MIM short names
B Information object registration
C ARM EXPRESS-G   EXPRESS-G
D MIM EXPRESS-G   EXPRESS-G
E Computer interpretable listings
F Change history
Bibliography
Index

5.2 MIM EXPRESS short listing

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.

5.2.1 MIM entity definitions

This subclause specifies the MIM entities for this module. The MIM entities and definitions are specified below.

5.2.1.1 general_feature   EXPRESS-G

A general_feature is a type of shape_feature_definition that implements the ARM concept of General_feature. A general_feature provides a mechanism to categorize an area of interest in a shape and to associate additional information with it.

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.

5.2.1.2 placed_feature   EXPRESS-G

A placed_feature is a type of shape_aspect that implements the ARM concept of Placed_feature. A placed_feature is the identification of a preconceived form pattern on a part resulting from the placement of a shape_feature_definition which is defined in its own context.

EXPRESS specification:

*)
ENTITY placed_feature
  SUBTYPE OF (shape_aspect);
END_ENTITY;
(*

5.2.1.3 shape_feature_definition   EXPRESS-G

A shape_feature_definition is a type of feature_definition that implements the ARM concept of Shape_feature_definition. A shape_feature_definition is a preconceived form pattern.

EXPRESS specification:

*)
ENTITY shape_feature_definition
  SUBTYPE OF (feature_definition);
END_ENTITY;
(*

5.2.1.4 shape_feature_definition_element_relationship   EXPRESS-G

A shape_feature_definition_element_relationship is a type of characterized_object and a type of shape_aspect_relationship that implement parts of the ARM concept of Shape_feature_definition_element_relationship.

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.

5.2.1.5 shape_feature_definition_relationship   EXPRESS-G

A shape_feature_definition_relationship is a type of characterized_object and a type of characterized_object_relationship that implement parts of the ARM concept of Shape_feature_definition_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