Schema: process_property_schema

Source : ISO 10303-49



SCHEMA process_property_schema;

REFERENCE FROM action_schema   -- ISO 10303-41
  (action,
   action_method,
   action_method_relationship,
   action_relationship,
   action_resource,
   action_resource_relationship,
   acyclic_action_relationship);

REFERENCE FROM product_property_definition_schema   -- ISO 10303-41
  (characterized_product_definition,
   property_definition,
   shape_definition);

REFERENCE FROM support_resource_schema   -- ISO 10303-41
  (identifier,
   label,
   text);


TYPE characterized_action_definition = SELECT
   (action,
    action_method,
    action_method_relationship,
    action_relationship);
END_TYPE;

TYPE characterized_resource_definition = SELECT
   (action_resource,
    action_resource_relationship,
    action_resource_requirement,
    action_resource_requirement_relationship);
END_TYPE;

TYPE property_or_shape_select = SELECT
   (property_definition,
    shape_definition);
END_TYPE;

ENTITY action_property;
  name : label;
  description : text;
  definition : characterized_action_definition;
END_ENTITY;

ENTITY action_property_relationship;
  name : label;
  description : text;
  relating_action_property : action_property;
  related_action_property : action_property;
WHERE
  WR1: relating_action_property :<>: related_action_property;
END_ENTITY;

ENTITY action_resource_requirement;
  name : label;
  description : text;
  kind : resource_requirement_type;
  operations : SET[1:?] OF characterized_action_definition;
END_ENTITY;

ENTITY action_resource_requirement_relationship;
  name : label;
  description : text;
  relating_action_resource_requirement : action_resource_requirement;
  related_action_resource_requirement : action_resource_requirement;
WHERE
  WR1: relating_action_resource_requirement :<>: related_action_resource_requirement;
END_ENTITY;

ENTITY process_product_association;
  name : label;
  description : text;
  defined_product : characterized_product_definition;
  process : product_definition_process;
END_ENTITY;

ENTITY process_property_association;
  name : label;
  description : text;
  process : property_process;
  property_or_shape : property_or_shape_select;
END_ENTITY;

ENTITY product_definition_process
  SUBTYPE OF (action);
  identification : identifier;
INVERSE
  product_definitions : SET[1:?] OF process_product_association FOR process;
END_ENTITY;

ENTITY property_process
  SUBTYPE OF (action);
  identification : identifier;
INVERSE
  properties : SET[1:?] OF process_property_association FOR process;
END_ENTITY;

ENTITY replacement_relationship
  SUBTYPE OF (action_relationship);
WHERE
  WR1: acyclic_action_relationship (SELF, [SELF\action_relationship.related_action], 'PROCESS_PROPERTY_SCHEMA.REPLACEMENT_RELATIONSHIP');
END_ENTITY;

ENTITY requirement_for_action_resource
  SUBTYPE OF (action_resource_requirement);
  resources : SET[1:?] OF action_resource;
END_ENTITY;

ENTITY resource_property;
  name : label;
  description : text;
  resource : characterized_resource_definition;
END_ENTITY;

ENTITY resource_property_relationship;
  name : label;
  description : text;
  relating_resource_property : resource_property;
  related_resource_property : resource_property;
WHERE
  WR1: relating_resource_property :<>: related_resource_property;
END_ENTITY;

ENTITY resource_requirement_type;
  name : label;
  description : text;
END_ENTITY;

ENTITY resource_requirement_type_relationship;
  name : label;
  description : text;
  relating_requirement_type : resource_requirement_type;
  related_requirement_type : resource_requirement_type;
WHERE
  WR1: relating_requirement_type :<>: related_requirement_type;
END_ENTITY;

END_SCHEMA;  -- process_property_schema