(*
   $Id$
   ISO TC184/SC4/WG12 N - ISO/CD-TS - 10303-1264 Risk - EXPRESS MIM
*)


SCHEMA Risk_mim;

USE FROM Activity_method_assignment_mim;    -- ISO/TS 10303-1249

USE FROM Activity_method_mim;    -- ISO/TS 10303-1049

USE FROM Activity_mim;    -- ISO/TS 10303-1047

USE FROM Approval_mim;    -- ISO/TS 10303-1012

USE FROM Classification_assignment_mim;    -- ISO/TS 10303-1114

USE FROM Condition_mim;    -- ISO/TS 10303-1253

USE FROM Date_time_assignment_mim;    -- ISO/TS 10303-1014

USE FROM Event_mim;    -- ISO/TS 10303-1064

USE FROM Justification_mim;    -- ISO/TS 10303-1263

USE FROM Person_organization_assignment_mim;    -- ISO/TS 10303-1013

USE FROM Probability_distribution_mim;    -- ISO/TS 10303-1274

USE FROM Probability_mim;    -- ISO/TS 10303-1252

USE FROM Product_identification_mim;    -- ISO/TS 10303-1017

USE FROM product_property_definition_schema   -- ISO 10303-41
  (characterized_object); 

USE FROM Property_assignment_mim;    -- ISO/TS 10303-1030

USE FROM representation_schema   -- ISO 10303-43
  (representation); 

USE FROM risk_schema; 

USE FROM State_definition_mim;    -- ISO/TS 10303-1255


TYPE probable_item = EXTENSIBLE GENERIC_ENTITY SELECT;
END_TYPE; 

TYPE risk_action_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_items WITH 
   (risk_evaluation, 
    risk_reduction);
END_TYPE; 

TYPE risk_action_method_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_method_items WITH 
   (risk_criteria, 
--    risk_criteria_assignment, 
    risk_perception, 
    risk_treatment);
END_TYPE; 
(* Added in Risk schema
TYPE risk_approval_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON approval_item WITH 
   (risk_reduction);
END_TYPE; 
*)
TYPE risk_condition_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON condition_action_method_items WITH 
   (risk_criteria, 
    risk_status);
END_TYPE;

TYPE risk_date_and_time_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON date_and_time_item WITH 
   (applied_risk_classification_assignment, 
    risk, 
    risk_attitude, 
    risk_consequence, 
    risk_context, 
    risk_criteria, 
    risk_evaluation, 
    risk_impact_assignment, 
    risk_perception, 
    risk_perception_relationship, 
    risk_probability, 
    risk_probability_assignment, 
    risk_profile, 
    risk_reduction, 
    risk_relationship, 
    risk_source_assignment, 
    risk_status, 
    risk_treatment);
END_TYPE; 

TYPE risk_date_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON date_item WITH 
   (applied_risk_classification_assignment, 
    risk, 
    risk_attitude, 
    risk_consequence, 
    risk_context, 
    risk_criteria, 
--    risk_criteria_assignment, 
    risk_evaluation, 
    risk_impact_assignment, 
    risk_perception, 
    risk_perception_relationship, 
    risk_probability, 
    risk_probability_assignment, 
    risk_profile, 
    risk_reduction, 
    risk_relationship, 
    risk_source_assignment, 
    risk_status, 
    risk_treatment);
END_TYPE; 

TYPE risk_impact_item = EXTENSIBLE GENERIC_ENTITY SELECT;
END_TYPE; 

TYPE risk_justification_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON justification_item WITH 
   (risk_reduction);
END_TYPE; 

TYPE risk_organization_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON organization_item WITH 
   (applied_risk_classification_assignment, 
    risk, 
    risk_attitude, 
    risk_consequence, 
    risk_context, 
    risk_criteria, 
--    risk_criteria_assignment, 
    risk_evaluation, 
    risk_impact_assignment, 
    risk_perception, 
    risk_perception_relationship, 
    risk_probability, 
    risk_probability_assignment, 
    risk_profile, 
    risk_reduction, 
    risk_relationship, 
    risk_source_assignment, 
    risk_status, 
    risk_treatment);
END_TYPE; 

TYPE risk_person_and_organization_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON person_and_organization_item WITH 
   (applied_risk_classification_assignment, 
    risk, 
    risk_attitude, 
    risk_consequence, 
    risk_context, 
    risk_criteria, 
--    risk_criteria_assignment, 
    risk_evaluation, 
    risk_impact_assignment, 
    risk_perception, 
    risk_perception_relationship, 
    risk_probability, 
    risk_probability_assignment, 
    risk_profile, 
    risk_reduction, 
    risk_relationship, 
    risk_source_assignment, 
    risk_status, 
    risk_treatment);
END_TYPE; 

TYPE risk_source_item = EXTENSIBLE GENERIC_ENTITY SELECT;
END_TYPE; 

ENTITY applied_risk_impact_assignment
  SUBTYPE OF (risk_impact_assignment);
  items : SET[1:?] OF risk_impact_item;
END_ENTITY;

ENTITY applied_risk_probability_assignment
  SUBTYPE OF (risk_probability_assignment);
  items : SET[1:?] OF probable_item;
END_ENTITY;

ENTITY applied_risk_source_assignment
  SUBTYPE OF (risk_source_assignment);
  items : SET[1:?] OF risk_source_item;
END_ENTITY;

ENTITY risk_attitude;
  name : STRING;
  description : OPTIONAL STRING;
END_ENTITY;

ENTITY risk_characterized_object
  SUBTYPE OF (characterized_object, risk);
END_ENTITY;

ENTITY risk_level
  SUBTYPE OF (risk_perception);
  criticality_factor : risk_attitude;
  risk_objective : risk_objective;
END_ENTITY;

ENTITY risk_level_relationship
  SUBTYPE OF (risk_perception_relationship);
  relating_risk_level : risk_level;
  related_risk_level : risk_level;
END_ENTITY;

ENTITY risk_objective
  SUBTYPE OF (risk_context);
END_ENTITY;

ENTITY risk_profile;
  name : STRING;
  description : OPTIONAL STRING;
  history : SET[2:?] OF risk_status;
END_ENTITY;

ENTITY risk_relationship_characterized_object
  SUBTYPE OF (characterized_object, risk_relationship);
END_ENTITY;

END_SCHEMA;  -- Risk_mim
