Application interpreted construct: Draughting elements ISO 10303-506:2018-11(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 EXPRESS short listing
   4.1 General
   4.2 Fundamental concepts and assumptions
   4.3 Draughting elements entity definitions

A Short names of entities
B Information object registration
C Computer interpretable listings
D EXPRESS-G diagrams
E Change history
Bibliography
Index

4 EXPRESS short listing

4.1 General

This application interpreted construct provides a consistent set of entities for the description of annotation that presents dimensions and draughting callouts on a drawing. This annotation, in the form of text and symbology, provides additional product data that may be needed to fully define the product or interpret the drawing. This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following EXPRESS declaration begins the aic_draughting_elements schema that uses elements from the integrated resources and contains the types, entity specializations, and functions that are specific to this part of ISO 10303.

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 aic_draughting_elements;

USE FROM draughting_element_schema    --  ISO 10303-101
  (dimension_curve,
   dimension_curve_directed_callout,
   dimension_curve_terminator,
   draughting_callout,
   draughting_callout_relationship,
   leader_curve,
   leader_directed_callout,
   leader_terminator,
   projection_curve,
   projection_directed_callout);

USE FROM presentation_definition_schema    --  ISO 10303-46
  (annotation_text_occurrence);
(*

NOTE 1   The schemas referenced above are specified in the following parts:

draughting_element_schema ISO 10303-101
presentation_definition_schema ISO 10303-46

NOTE 2   See Annex D for a graphical representation of this schema.

NOTE 3   There may be subtypes and items of select lists that appear in the integrated resources that are not imported into the AIC. Constructs are eliminated from the subtype tree or select list through the use of the implicit interface rules of ISO 10303-11. References to eliminated constructs are outside the scope of the AIC. In some cases, all items of the select list are eliminated. Because AICs are intended to be implemented in the context of an application protocol, the items of the select list will be defined by the scope of the application protocol

4.2 Fundamental concepts and assumptions

4.3 aic_draughting_elements entity definitions

4.3.1 angular_dimension   EXPRESS-G

An angular_dimension is a type of dimension_curve_directed_callout directed by a dimension curve that presents a value of angular distance measure.

NOTE    Figure 1 illustrates three angular dimensions used to depict information about angular distance measures. The figure also illustrates a radius dimension.



Figure 1 —  Angular and radius dimensions

Figure 1 —  Angular and radius dimensions

EXPRESS specification:

*)
ENTITY angular_dimension
  SUBTYPE OF (dimension_curve_directed_callout);
END_ENTITY;
(*

4.3.2 curve_dimension   EXPRESS-G

A curve_dimension is a type of dimension_curve_directed_callout directed by a dimension curve that presents a value of distance between two elements, measured along a curved path, or the length of a curved element.

NOTE    Figure 2 illustrates two curve dimensions. The dimension with a value of '36.91' depicts the distance between two elements along a path defined by a third element of geometry or annotation. The dimension with a value of '76.64' depicts the length of a curve, measured along the entire path of the curve.



Figure 2 —  Curve dimension

Figure 2 —  Curve dimension

EXPRESS specification:

*)
ENTITY curve_dimension
  SUBTYPE OF (dimension_curve_directed_callout);
END_ENTITY;
(*

4.3.3 datum_feature_callout   EXPRESS-G

A datum_feature_callout is a type of draughting_callout that presents a datum. It shall contain an alphanumeric designation to be used as identification of the datum.

NOTE    Figure 3 illustrates the dimensioning and annotation of specific features of a product. The top view illustrates the specification of Datums 'E' and 'F' and the specification of a diameter dimension with an associated geometrical tolerance. The middle view of the same figure illustrates a specification of Datum 'D'.

EXPRESS specification:

*)
ENTITY datum_feature_callout
  SUBTYPE OF (draughting_callout);
END_ENTITY;
(*

4.3.4 datum_target_callout   EXPRESS-G

A datum_target_callout is a type of draughting_callout that presents a datum target. It shall contain an alphanumeric designation and, where applicable, a specification of the diametrical size of the target area.

NOTE    The bottom view in Figure 3 illustrates three datum target points and their associated datum target symbols.



Figure 3 —  Draughting callouts

Figure 3 —  Draughting callouts

EXPRESS specification:

*)
ENTITY datum_target_callout
  SUBTYPE OF (draughting_callout);
END_ENTITY;
(*

4.3.5 diameter_dimension   EXPRESS-G

A diameter_dimension is a type of dimension_curve_directed_callout directed by a dimension curve that presents a value of the diametrical size of a circular element.

NOTE    Figure 4 illustrates three diameter dimensions. Projection lines can be used to clarify the extent of the dimension.



Figure 4 —  Diameter dimension

Figure 4 —  Diameter dimension

EXPRESS specification:

*)
ENTITY diameter_dimension
  SUBTYPE OF (dimension_curve_directed_callout);
END_ENTITY;
(*

4.3.6 dimension_callout_component_relationship   EXPRESS-G

A dimension_callout_component_relationship is a type of draughting_callout_relationship that identifies the association between a structured_dimension_callout and a draughting_callout that participates in its definition either as prefix information or suffix information. A dimension prefix specification is information used in interpreting the dimension or its applicability and is physically located before the dimension value as the dimension is read. A dimension suffix specification is physically located after the dimension value as the dimension is read and either contains information used in interpreting the dimension or its applicability or contains additional information that is used in conjunction with the dimension.

NOTE    Figure 5 illustrates a structured dimension callout with both prefix and suffix information.



Figure 5 —  Structured dimension callout

Figure 5 —  Structured dimension callout

EXPRESS specification:

*)
ENTITY dimension_callout_component_relationship
  SUBTYPE OF (draughting_callout_relationship);
WHERE
  WR1: SELF.name IN ['prefix', 'suffix'];
  WR2: 'AIC_DRAUGHTING_ELEMENTS.STRUCTURED_DIMENSION_CALLOUT' IN TYPEOF (SELF.relating_draughting_callout);
  WR3: SIZEOF (TYPEOF (SELF.related_draughting_callout) * ['AIC_DRAUGHTING_ELEMENTS.LEADER_DIRECTED_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.PROJECTION_DIRECTED_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.DIMENSION_CURVE_DIRECTED_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.STRUCTURED_DIMENSION_CALLOUT']) = 0;
  WR4: SELF.related_draughting_callout.contents * SELF.relating_draughting_callout.contents = SELF.related_draughting_callout.contents;
  WR5: ((SELF.name = 'prefix') AND (SIZEOF (QUERY (ato <* QUERY (con <* SELF.related_draughting_callout.contents | ('AIC_DRAUGHTING_ELEMENTS.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con))) | NOT (ato.name = 'prefix text') )) = 0));
  WR6: ((SELF.name = 'suffix') AND (SIZEOF (QUERY (ato <* QUERY (con <* SELF.related_draughting_callout.contents | ('AIC_DRAUGHTING_ELEMENTS.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con))) | NOT (ato.name = 'suffix text') )) = 0));
END_ENTITY;
(*

Formal propositions:

WR1: The name of the dimension_callout_component_relationship shall be either 'prefix' or 'suffix'.

WR2: The relating_draughting_callout shall be a structured_dimension_callout.

WR3: The related_draughting_callout shall not be a leader_directed_callout, projection_directed_callout, dimension_curve_directed_callout, or structured_dimension_callout.

WR4: Each element of the draughting_callout shall also be an element of the structured_dimension_callout.

WR5: If the name of the dimension_callout_component_relationship is 'prefix', all annotation_text_occurrences within the related_draughting_callout shall have a name of 'prefix text'.

WR6: If the name of the dimension_callout_component_relationship is 'suffix', all annotation_text_occurrences within the related_draughting_callout shall have a name of 'suffix text'.

4.3.7 dimension_callout_relationship   EXPRESS-G

A dimension_callout_relationship is a type of draughting_callout_relationship that relates the presentation of a dimension to the presentation of the dimension callout either as the primary callout or as the secondary callout. A primary callout is a draughting_callout that presents the dimension value in the primary unit of measure. A secondary callout is a draughting_callout that presents the dimension value in another unit of measure.

EXPRESS specification:

*)
ENTITY dimension_callout_relationship
  SUBTYPE OF (draughting_callout_relationship);
WHERE
  WR1: SELF.name IN ['primary', 'secondary'];
  WR2: SIZEOF (TYPEOF (SELF.relating_draughting_callout) * ['AIC_DRAUGHTING_ELEMENTS.ANGULAR_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.CURVE_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.DIAMETER_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.LEADER_DIRECTED_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.LINEAR_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.ORDINATE_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.RADIUS_DIMENSION'])>=1;
  WR3: SIZEOF (TYPEOF (SELF.related_draughting_callout) * ['AIC_DRAUGHTING_ELEMENTS.DIMENSION_CURVE_DIRECTED_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.PROJECTION_DIRECTED_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.LEADER_DIRECTED_CALLOUT']) = 0;
  WR4: SELF.related_draughting_callout.contents * SELF.relating_draughting_callout.contents = SELF.related_draughting_callout.contents;
END_ENTITY;
(*

Formal propositions:

WR1: The name of the dimension_callout_relationship shall be either 'primary' or 'secondary'.

WR2: The dimension shall be one or more of angular_dimension, curve_dimension, diameter_dimension, leader_directed_dimension, linear_dimension, ordinate_dimension, or radius_dimension.

WR3: The dimension callout shall not be a dimension_curve_directed_callout, projection_directed_callout, or leader_directed_callout.

WR4: Each element of the dimension callout shall also be an element of the dimension.

4.3.8 dimension_pair   EXPRESS-G

A dimension_pair is a type of draughting_callout_relationship that identifies the relationship between dimensions that participate in a chained or parallel dimension sequence. A chained dimension sequence is a sequence of two or more dimensions in which the terminus of one dimension initializes the next dimension in the sequence. A parallel dimension sequence is a collection of two or more dimensions where all the dimensions are of the same type, their dimension lines are parallel to one another, the dimensions share a common origin or datum, or all three.

NOTE    Figure 6 illustrates four horizontally-drawn linear dimensions in a series of parallel dimension pairs and three vertically-drawn linear dimensions in a series of parallel dimension pairs. Figure 7 illustrates three horizontally-drawn linear dimensions in a series of chained dimension pairs. In both figures, each set of two dimensions sharing a projection line is a dimension pair.



Figure 6 —  Parallel dimension pair

Figure 6 —  Parallel dimension pair



Figure 7 —  Chain dimension pair

Figure 7 —  Chain dimension pair

EXPRESS specification:

*)
ENTITY dimension_pair
  SUBTYPE OF (draughting_callout_relationship);
WHERE
  WR1: SELF.name IN ['chained', 'parallel'];
  WR2: SIZEOF (TYPEOF (SELF.relating_draughting_callout) * ['AIC_DRAUGHTING_ELEMENTS.ANGULAR_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.CURVE_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.DIAMETER_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.LINEAR_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.ORDINATE_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.RADIUS_DIMENSION'])=1;
  WR3: SIZEOF (TYPEOF (SELF.related_draughting_callout) * ['AIC_DRAUGHTING_ELEMENTS.ANGULAR_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.CURVE_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.DIAMETER_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.LINEAR_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.ORDINATE_DIMENSION', 'AIC_DRAUGHTING_ELEMENTS.RADIUS_DIMENSION'])=1;
END_ENTITY;
(*

Formal propositions:

WR1: The name of the dimension_pair shall be either 'chained' or 'parallel'.

WR2: The predecessor dimension in the dimension_pair shall be an angular_dimension, curve_dimension, diameter_dimension, linear_dimension, ordinate_dimension, or radius_dimension.

WR3: The successor dimension in the dimension_pair shall be an angular_dimension, curve_dimension, diameter_dimension, linear_dimension, ordinate_dimension, or radius_dimension.

4.3.9 draughting_elements   EXPRESS-G

A draughting_elements is a type of draughting_callout that specifies constraints on the grouping of annotation within the context of draughting. An application protocol that uses this AIC may ensure that the draughting_callout entity is instantiated as a draughting_elements entity.

EXPRESS specification:

*)
ENTITY draughting_elements
  SUBTYPE OF (draughting_callout);
WHERE
  WR1: SIZEOF (QUERY (l_c <* QUERY (con <* SELF.contents | ('AIC_DRAUGHTING_ELEMENTS.LEADER_CURVE' IN TYPEOF(con))) | NOT (SIZEOF (QUERY (ldc <* USEDIN (l_c, 'DRAUGHTING_ELEMENT_SCHEMA.' + 'DRAUGHTING_CALLOUT.CONTENTS') | ('AIC_DRAUGHTING_ELEMENTS.LEADER_DIRECTED_CALLOUT' IN TYPEOF (ldc)))) <= 1)))=0;
  WR2: NOT ('DRAUGHTING_ELEMENT_SCHEMA.DIMENSION_CURVE_DIRECTED_CALLOUT' IN TYPEOF(SELF)) OR (SIZEOF (QUERY (con <* SELF.contents | ('AIC_DRAUGHTING_ELEMENTS.PROJECTION_CURVE' IN TYPEOF (con)))) <= 2);
  WR3: SIZEOF (QUERY (rc <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF (rc)) AND (rc.name = 'primary') )) <= 1;
  WR4: SIZEOF (QUERY (rc <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF (rc)) AND (rc.name = 'secondary') )) <= 1;
  WR5: SIZEOF (QUERY (sec <* QUERY (rc <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF (rc)) AND (rc.name = 'secondary') ) | NOT (SIZEOF (QUERY (prim <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF (prim)) AND (prim.name = 'primary') )) = 1))) = 0;
END_ENTITY;
(*

Formal propositions:

WR1: Each leader_curve that is in the contents of a draughting_callout shall be used by at most one leader_directed_callout.

WR2: Each dimension_curve_directed_callout shall contain at most two projection_curves in the set of contents.

WR3: Each draughting_callout shall be the specified dimension of at most one dimension_callout_relationship with a name of 'primary'.

WR4: Each draughting_callout shall be the specified dimension of at most one dimension_callout_relationship with a name of 'secondary'.

WR5: Each draughting_callout shall not participate in a secondary dimension_callout_relationship unless it also participates in a primary dimension_callout_relationship.

4.3.10 geometrical_tolerance_callout   EXPRESS-G

A geometrical_tolerance_callout is a type of draughting_callout that presents a geometrical tolerance.

NOTE    The top view in Figure 3 illustrates the specification of a diameter dimension with an associated geometrical tolerance. The middle view illustrates a geometrical tolerance related by a projection line. Computer-interpretable geometric tolerances are outside the scope of this application interpreted construct.

EXPRESS specification:

*)
ENTITY geometrical_tolerance_callout
  SUBTYPE OF (draughting_callout);
END_ENTITY;
(*

4.3.11 leader_directed_dimension   EXPRESS-G

A leader_directed_dimension is a type of leader_directed_callout directed by a leader curve that presents some dimension value.

NOTE    Figure 8 illustrates a leader directed dimension used to depict information about the holes in the product. Linear dimensions are used to show the placement of the holes.



Figure 8 —  Leader directed dimension

Figure 8 —  Leader directed dimension

EXPRESS specification:

*)
ENTITY leader_directed_dimension
  SUBTYPE OF (leader_directed_callout);
WHERE
  WR1: SIZEOF (QUERY (con <* SELF.contents | 'AIC_DRAUGHTING_ELEMENTS.LEADER_CURVE' IN TYPEOF (con)))=1;
END_ENTITY;
(*

Formal propositions:

WR1: The contents of a leader_directed_dimension shall contain exactly one leader_curve.

4.3.12 linear_dimension   EXPRESS-G

A linear_dimension is a type of dimension_curve_directed_callout directed by a dimension curve that presents a value of distance between two elements, measured along a linear path, or the length of a linear element.

NOTE    Figures 3, 6, 7, and 8 show several linear dimensions used singularly or in dimension pairs.

EXPRESS specification:

*)
ENTITY linear_dimension
  SUBTYPE OF (dimension_curve_directed_callout);
END_ENTITY;
(*

4.3.13 ordinate_dimension   EXPRESS-G

An ordinate_dimension is a type of projection_directed_callout directed by a projection curve that presents a dimension value.

NOTE    Figure 9 illustrates several ordinate dimensions used to dimension a simple mechanical product.



Figure 9 —  Ordinate dimension

Figure 9 —  Ordinate dimension

EXPRESS specification:

*)
ENTITY ordinate_dimension
  SUBTYPE OF (projection_directed_callout);
END_ENTITY;
(*

4.3.14 radius_dimension   EXPRESS-G

A radius_dimension is a type of dimension_curve_directed_callout directed by a dimension curve that presents a value of the radial size of a circular element.

NOTE    Figure 1 illustrates a radius dimension. The figure also illustrates three angular dimensions.

EXPRESS specification:

*)
ENTITY radius_dimension
  SUBTYPE OF (dimension_curve_directed_callout);
WHERE
  WR1: SIZEOF (QUERY (con <* SELF.contents | 'AIC_DRAUGHTING_ELEMENTS.PROJECTION_CURVE' IN TYPEOF (con)))<=1;
END_ENTITY;
(*

Formal propositions:

WR1: The contents of a radius_dimension shall contain at most one projection_curve.

4.3.15 structured_dimension_callout   EXPRESS-G

A structured_dimension_callout is a type of draughting_callout that presents information associated with a dimension, in which individual elements presenting different components of the dimensional information may be identified and distinguished.

NOTE    Figure 5 illustrates components of a structured dimension callout. The dimension callout contains curves, symbols, and text. Text is identified as the dimension value, tolerance value, or unit text. Other draughting callouts can be identified as prefix or suffix information by use of dimension_callout_component_relationship.

EXPRESS specification:

*)
ENTITY structured_dimension_callout
  SUBTYPE OF (draughting_callout);
WHERE
  WR1: SIZEOF (TYPEOF (SELF) * ['AIC_DRAUGHTING_ELEMENTS.DATUM_FEATURE_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.DATUM_TARGET_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.GEOMETRICAL_TOLERANCE_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.LEADER_DIRECTED_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.PROJECTION_DIRECTED_CALLOUT', 'AIC_DRAUGHTING_ELEMENTS.DIMENSION_CURVE_DIRECTED_CALLOUT']) = 0;
  WR2: SIZEOF (QUERY (ato <* QUERY (con <* SELF.contents | ('AIC_DRAUGHTING_ELEMENTS.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF (con))) | NOT (ato.name IN ['dimension value', 'tolerance value', 'unit text', 'prefix text', 'suffix text']))) = 0;
  WR3: SIZEOF (QUERY (ato <* QUERY (con <* SELF.contents | ('AIC_DRAUGHTING_ELEMENTS.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF (con))) | (ato.name = 'dimension value') )) >= 1;
  WR4: SIZEOF (QUERY (dcr <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF (dcr)) AND (dcr.name = 'prefix') )) <= 1;
  WR5: SIZEOF (QUERY (dcr <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF (dcr)) AND (dcr.name = 'suffix') )) <= 1;
  WR6: NOT((SIZEOF (QUERY (ato <* QUERY (con <* SELF.contents | ('AIC_DRAUGHTING_ELEMENTS.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con)) ) | (ato.name = 'prefix text') )) > 0)) OR (SIZEOF (QUERY (dcr <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF (dcr)) AND (dcr.name = 'prefix') )) = 1);
  WR7: NOT(SIZEOF (QUERY (ato <* QUERY (con <* SELF.contents | ('AIC_DRAUGHTING_ELEMENTS.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con))) | (ato.name = 'suffix text') )) > 0) OR (SIZEOF (QUERY (dcr <* USEDIN (SELF, 'DRAUGHTING_ELEMENT_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT') | ('AIC_DRAUGHTING_ELEMENTS.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF (dcr)) AND (dcr.name = 'suffix') )) = 1);
END_ENTITY;
(*

Formal propositions:

WR1: The structured_dimension_callout shall not be a datum_feature_callout, datum_target_callout, geometrical_tolerance_callout, leader_directed_callout, projection_directed_callout, or dimension_curve_directed_callout.

WR2: Each annotation_text_occurrence in the structured_dimension_callout shall have a name of 'dimension value', 'tolerance value', 'unit text', 'prefix text', or 'suffix text'.

WR3: The contents of the structured_dimension_callout shall contain at least one annotation_text_occurrence that shall have a name of 'dimension value'.

WR4: The structured_dimension_callout shall participate as the dimension callout in at most one dimension_callout_component_relationship with name of 'prefix'.

WR5: The structured_dimension_callout shall participate as the dimension callout in at most one dimension_callout_component_relationship with name of 'suffix'.

WR6: If the contents of the structured_dimension_callout contain an annotation_text_occurrence that is 'prefix text', then the structured_dimension_callout shall participate as the dimension callout in a dimension_callout_component_relationship with name of 'prefix'.

WR7: If the contents of the structured_dimension_callout contain an annotation_text_occurrence that is 'suffix text', then the structured_dimension_callout shall participate as the dimension callout in a dimension_callout_component_relationship with name of 'suffix'.



*)
END_SCHEMA;  -- aic_draughting_elements
(*


© ISO 2018 — All rights reserved