SCHEMA Property_identification_arm;
  
USE FROM Engineering_analysis_basics_arm -- Engineering_analysis_basics
  (Class,
  Classification,
  Mapping);
USE FROM Maths_space_arm -- Maths_space
  (Maths_space);
USE FROM Maths_value_arm -- Maths_value
  (Maths_value);
USE FROM Independent_property_definition_arm -- Independent_property_definition
  (Independent_property_definition);
USE FROM Property_space_arm -- Property_space
  (Property_space);
  
ENTITY Components_of_scale
  SUBTYPE OF (Mapping);
  components  :  LIST[2,?] OF Scale;
  whole  :  Scale;
END_ENTITY;
  
ENTITY Derivation_from_coordinate_system;
  derived  :  Scale;
  reference  :  Scale;
END_ENTITY;
  
ENTITY Derivation_from_uniaxial_scale;
  derived  :  Scale;
  reference  :  Scale;
END_ENTITY;
  
ENTITY Element_of_scale
  SUBTYPE OF (Classification);
  class  :  Scale;
  member  :  Scale_element;
END_ENTITY;
  
ENTITY Scale
  SUPERTYPE OF (Unit_of_measure);
  SUBTYPE OF (Mapping);
  identifier  :  Maths_space;
  property  :  Property_space;
  encoding  :  OPTIONAL Scale_encoding;
END_ENTITY;
  
ENTITY Scale_encoding
  SUBTYPE OF (Class);
  code :  STRING;
  supplier :  STRING;
UNIQUE
  single_instance_of_class :  code, supplier; 
WHERE
  valid_standard_class :
   IF (supplier = 'ISO/PDTS 10303-1085') THEN
        code IN ['SE001', 'SE002', 'SE003', 'SE004', 'SE005', 'SE006',
        'SE007', 'SE008', 'SE009', 'SE010', 'SE011', 'SE012', 'SE013'];
    ELSE
      TRUE;
    END_IF;
END_ENTITY;
  
ENTITY Scale_element;
  identifier  :  Maths_value;
  property  :  Independent_property_definition;
END_ENTITY;
  
ENTITY Unit_of_measure
  SUBTYPE OF (Scale);
END_ENTITY;
  
END_SCHEMA;

Page last updated - 7 Sep 2000