(*  
$Id$ 
ISO TC184/SC4/WG12 N4260 - ISO/TS 10303-1052 Default tolerance - EXPRESS ARM
Supersedes ISO TC184/SC4/WG12 N2870
*) 


SCHEMA Default_tolerance_arm;

USE FROM Foundation_representation_arm;    -- ISO/TS 10303-1006

USE FROM Measure_representation_arm;    -- ISO/TS 10303-1118

USE FROM Shape_property_assignment_arm;    -- ISO/TS 10303-1032


TYPE cell_entry_select = SELECT
   (Plus_minus_toleranced_datum, 
    Upper_lower_toleranced_datum);
END_TYPE; 

TYPE default_context_select = SELECT
   (Item_shape);
END_TYPE; 

TYPE default_setting_select = EXTENSIBLE SELECT
   (General_tolerances);
END_TYPE; 

TYPE general_tolerance_table_select = EXTENSIBLE SELECT
   (General_tolerance_table);
END_TYPE; 

TYPE limit_select = SELECT
   (Significant_number_of_digits, 
    Upper_lower_limit);
END_TYPE; 

ENTITY Default_setting_association;
  default_value : SET[0:?] OF default_setting_select;
  default_context : default_context_select;
END_ENTITY;

ENTITY General_tolerance_table;
  tolerance_type : STRING;
INVERSE
  cell : SET[1:?] OF Tolerance_table_cell FOR tolerance_table;
END_ENTITY;

ENTITY General_tolerances;
  table_definition : general_tolerance_table_select;
  tolerance_class : STRING;
END_ENTITY;

ENTITY Plus_minus_toleranced_datum;
  tolerance_value : Numerical_item_with_unit;
END_ENTITY;

ENTITY Significant_number_of_digits;
  number_of_digits : STRING;
END_ENTITY;

ENTITY Tolerance_table_cell;
  cell_value : cell_entry_select;
  description : STRING;
  limit : limit_select;
  tolerance_class : STRING;
  tolerance_table : General_tolerance_table;
END_ENTITY;

ENTITY Upper_lower_limit;
  upper_limit : Numerical_item_with_unit;
  lower_limit : Numerical_item_with_unit;
END_ENTITY;

ENTITY Upper_lower_toleranced_datum;
  lower_tolerance_value : Numerical_item_with_unit;
  upper_tolerance_value : Numerical_item_with_unit;
END_ENTITY;

END_SCHEMA;  -- Default_tolerance_arm
