*)
SCHEMA mesh_mim;
USE FROM external_reference_schema -- 10303-41
(externally_defined_item);
USE FROM topology_schema -- 10303-42
(topological_representation_item,
vertex);
USE FROM representation_schema -- 10303-43
(representation_item_relationship);
USE FROM topological_definition_and_mesh_schema -- 10303-5x
(mesh,
physical_space_topology,
product_of_mesh,
topological_region,
topological_shape);
(*
none.
A composition_of_mesh is a representation_item_relationship that is between two instances of mesh and that is a Composition_of_mesh.
EXPRESS specification:
*)
ENTITY composition_of_mesh
SUBTYPE OF (representation_item_relationship);
SELF\representation_item_relationship.related_representation_item :
mesh;
SELF\representation_item_relationship.relating_representation_item :
mesh;
DERIVE
part : mesh :=
SELF\representation_item_relationship.related_representation_item;
whole : mesh :=
SELF\representation_item_relationship.relating_representation_item;
WHERE
consistent_topological_dimension :
IF NOT ('MESH_SCHEMA.TOPOLOGICAL_REGION' IN TYPEOF(whole)) THEN
TRUE;
ELSE
IF NOT ('MESH_SCHEMA.TOPOLOGICAL_REGION' IN TYPEOF(part)) THEN
FALSE;
ELSE
whole\topological_region.topological_dimension =
part\topological_region.topological_dimension;
ENDIF;
END_ENTITY;
(*
Formal propositions:
consistent_topological_dimension: if the whole is a topological_region, and hence has a single topological_dimension, then the part shall be a topological_region with the same topological_dimension.
An overlapping_topological_regions is a representation_item_relationship that is between two instances of topological_region and that is an Overlapping_regions.
EXPRESS specification:
*)
ENTITY overlapping_topological_regions
SUBTYPE OF (representation_item_relationship);
SELF\representation_item_relationship.related_representation_item :
topological_region;
SELF\representation_item_relationship.relating_representation_item :
topological_region;
WHERE
consistent_topological_dimension :
SELF\representation_item_relationship.related_representation_item.topological_dimension =
SELF\representation_item_relationship.relating_representation_item.topological_dimension;
END_ENTITY;
(*
Formal propositions:
consistent_topological_dimension: the overlapping instances of topological_region shall have the same topological_dimension.
An externally_defined_topological_shape is a topological_representation_item and an externally_defined_item that is a Topological_shape.
EXPRESS specification:
*)
ENTITY externally_defined_topological_shape
SUBTYPE OF (topological_shape,
externally_defined_item);
UNIQUE
single_instance_of_class :
SELF\externally_defined_item.source, SELF\externally_defined_item.item_id;
WHERE
valid_standard_class :
IF (SELF\externally_defined_item.source = 'ISO/PDTS 10303-1095') THEN
SELF\externally_defined_item.item_id IN
['TS001', 'TS002', 'TS003', 'TS004', 'TS005', 'TS006',
'TS007'];
ELSE
TRUE;
END_IF;
END_ENTITY;
(*
Formal propositions:
single_instance_of_class: There shall not be more than one instance of topological_shape with the same meaning.
valid_standard_class: Each instance of topological_shape, that is reference data defined by this part of ISO 10303, shall make reference to a standard instance of Topological_shape.
*) END_SCHEMA; (*
If you have a comment on this module, please send it to the support team