Application module: Draughting element specialisations | ISO/TS 10303-1312:2018-11(E) © ISO |
This clause specifies the information requirements for the Draughting element specialisations 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 Draughting_element_specialisations_arm schema and identifies the necessary external references.
EXPRESS specification:
*)
SCHEMA Draughting_element_specialisations_arm;
(*
The following EXPRESS interface statement specifies the elements imported from the ARM of another application module.
EXPRESS specification:
*)
USE FROM
Draughting_element_arm;
--
ISO/TS 10303-1310
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Draughting_element_arm ISO/TS 10303-1310
NOTE 2 See Annex C, Figures C.1and C.2 for a graphical representation of this schema.
This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.
EXPRESS specification:
*)
TYPE
chained_or_parallel =
ENUMERATION
OF
(chained,
parallel);
END_TYPE;
(*
Enumerated item definitions:
chained: the alignment is chained;
parallel: the alignment is parallel.
The dimension_callout_select type is an extensible list of alternate data types that allows for the designation of the data type Annotation_text_occurrence.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
EXPRESS specification:
*)
TYPE
dimension_callout_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
(Annotation_text_occurrence);
END_TYPE;
(*
EXPRESS specification:
*)
TYPE
dimension_type =
ENUMERATION
OF
(angular,
curve,
diameter,
leader_directed,
linear,
ordinate,
radius);
END_TYPE;
(*
Enumerated item definitions:
angular: the dimension type is angular;
curve: the dimension type is curve;
diameter: the dimension type is diameter;
leader_directed: the dimension type is leader directed;
linear: the dimension type is linear;
ordinate: the dimension type is ordinate;
radius: the dimension type is radius.
EXPRESS specification:
*)
TYPE
primary_or_secondary =
ENUMERATION
OF
(primary,
secondary);
END_TYPE;
(*
Enumerated item definitions:
primary: the relation is primary.
secondary: the relation is secondary.
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.
EXAMPLE The top view in figure 1 shows some Datum_feature_callout objects for datums labeled 'E' and 'F'.
EXPRESS specification:
*)
ENTITY Datum_feature_callout
SUBTYPE OF (Draughting_element);
END_ENTITY;
(*
EXAMPLE The bottom view in figure 1 shows three datum target points and their associated datum target symbols.
EXPRESS specification:
*)
ENTITY Datum_target_callout
SUBTYPE OF (Draughting_element);
END_ENTITY;
(*
A Dimension is a type of Draughting_element that is the graphical presentation of the dimension value, of associated information, and of the symbology necessary to accurately depict its area of application. A Dimension is either a Dimension_callout or additionally is a Dimension_value.
Dimension objects cover linear dimensions, angular dimensions, curve dimensions, diameter dimensions, ordinate dimensions, radius dimensions, and leader directed dimensions.
For this particular type of Draughting_callout, the inherited attribute 'contents' shall refer to Annotation_curve and Annotation_text_occurrence objects only.
EXAMPLE Examples for the symbology are leaders, projection curves, or dimension curves.
EXPRESS specification:
*)
ENTITY Dimension
ABSTRACT SUPERTYPE
OF (Dimension_callout
ANDOR Dimension_value)
SUBTYPE OF (Draughting_element);
id : STRING;
END_ENTITY;
(*
Attribute definitions:
id: the identifier of the Dimension.
EXPRESS specification:
*)
ENTITY Dimension_callout
SUBTYPE OF (Dimension);
callout_element : SET[1:?] OF dimension_callout_select;
dimension_type : SET[1:?] OF dimension_type;
END_ENTITY;
(*
Attribute definitions:
callout_element: the text and possibly symbol that form the Dimension_callout.
dimension_type: specifies a set of dimension_type for the Dimension_callout.
EXPRESS specification:
*)
ENTITY Dimension_callout_relationship;
relating_draughting_callout : Dimension_callout;
related_draughting_callout : Dimension_value;
relation_type : primary_or_secondary;
END_ENTITY;
(*
Attribute definitions:
relating_draughting_callout: specifies a role of the Dimension_callout for the Dimension_callout_relationship.
related_draughting_callout: specifies a role of the Dimension_value for the Dimension_callout_relationship.
relation_type: specifies a role of the primary_or_secondary for the Dimension_callout_relationship.
EXAMPLE Figure 2 illustrates a structured dimension callout with prefix information.
EXPRESS specification:
*)
ENTITY Dimension_prefix
SUBTYPE OF (Draughting_element);
prefix : Dimension_text;
INVERSE
parent : Structured_dimension_callout FOR prefix;
WHERE
WR1: prefix IN SELF\Draughting_callout.contents;
WR2: prefix\Representation_item.name = 'prefix text';
END_ENTITY;
(*
Attribute definitions:
prefix: specifies a role of the Dimension_text for the Dimension_prefix.
parent: specifies an inverse relationship that specifies that the existence of the Dimension_prefix is dependent on the the existence of the Structured_dimension_callout that specifies the Dimension_prefix as its prefix.
Formal propositions:
WR1: The prefix must be a member of contents attribute.
WR2: The name of prefix must be 'prefix text'.
EXPRESS specification:
*)
ENTITY Dimension_sequence_pair;
alignment : chained_or_parallel;
predecessor : Dimension_callout;
successor : Dimension_callout;
END_ENTITY;
(*
Attribute definitions:
alignment: specifies a role of the chained_or_parallel for the Dimension_sequence_pair.
predecessor: the Dimension_callout that plays the role of a predecessor within a particular Dimension_sequence_pair.
successor: the Dimension_callout that plays the role of a successor within a particular Dimension_sequence_pair
EXAMPLE Figure 2 illustrates a structured dimension callout with suffix information.
EXPRESS specification:
*)
ENTITY Dimension_suffix
SUBTYPE OF (Draughting_element);
suffix : Dimension_text;
INVERSE
parent : Structured_dimension_callout FOR suffix;
WHERE
WR1: suffix IN SELF\Draughting_callout.contents;
WR2: suffix\Representation_item.name = 'suffix text';
END_ENTITY;
(*
Attribute definitions:
suffix: specifies a role of the Dimension_text for the Dimension_suffix.
parent: specifies an inverse relationship that specifies that the existence of the Dimension_suffix is dependent on the the existence of the Structured_dimension_callout that specifies the Dimension_suffix as its suffix.
Formal propositions:
WR1: The suffix must be a member of contents attribute.
WR2: The name of suffix must be 'suffix text'.
EXPRESS specification:
*)
ENTITY Dimension_value
SUBTYPE OF (Dimension);
dimension_value : Dimension_text;
WHERE
WR1: dimension_value IN SELF\Draughting_callout.contents;
WR2: dimension_value\Representation_item.name = 'dimension value';
END_ENTITY;
(*
Attribute definitions:
dimension_value: specifies a role of the Dimension_text for the Dimension_value.
Formal propositions:
WR1: The dimension_value must be a member of contents attribute.
WR2: The name of dimension_value must be 'dimension value'.
EXPRESS specification:
*)
ENTITY Draughting_element
SUPERTYPE OF (Datum_feature_callout
ANDOR Datum_target_callout
ANDOR Dimension
ANDOR Dimension_prefix
ANDOR Dimension_suffix
ANDOR Geometric_tolerance_callout
ANDOR Surface_condition_callout)
SUBTYPE OF (Draughting_callout);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY Geometric_tolerance_callout
SUBTYPE OF (Draughting_element);
END_ENTITY;
(*
EXAMPLE Figure 2 illustrates components of a structured dimension callout.
EXPRESS specification:
*)
ENTITY Structured_dimension_callout
SUBTYPE OF (Dimension_value);
prefix :
OPTIONAL
Dimension_prefix;
suffix :
OPTIONAL
Dimension_suffix;
tolerance_value :
OPTIONAL
Dimension_text;
unit_text :
OPTIONAL
Dimension_text;
WHERE
WR1: tolerance_value IN SELF\Draughting_callout.contents;
WR2: NOT EXISTS(tolerance_value) OR (tolerance_value\Representation_item.name = 'tolerance value');
WR3: unit_text IN SELF\Draughting_callout.contents;
WR4: NOT EXISTS(unit_text) OR (unit_text\Representation_item.name = 'unit text');
END_ENTITY;
(*
Attribute definitions:
prefix: specifies a role of the Dimension_prefix for the Structured_dimension_callout. The value of this attribute need not be specified.
suffix: specifies a role of the Dimension_suffix for the Structured_dimension_callout. The value of this attribute need not be specified.
tolerance_value: specifies a role of the Dimension_text for the Structured_dimension_callout. The value of this attribute need not be specified.
unit_text: specifies a role of the Dimension_text for the Structured_dimension_callout. The value of this attribute need not be specified.
Formal propositions:
WR1: The tolerance_value must be a member of contents attribute.
WR2: If tolerance_value is set, it's name must be 'tolerance value'.
WR3: The unit_text must be a member of contents attribute.
WR4: If unit_text is set, it's name must be 'unit text'.
EXPRESS specification:
*)
ENTITY Surface_condition_callout
SUBTYPE OF (Draughting_element);
END_ENTITY;
(*
*)
END_SCHEMA; -- Draughting_element_specialisations_arm
(*
© ISO 2018 — All rights reserved