(*
   $Id$
   ISO TC184/SC4/WG12 N4605 - ISO/CD-TS 10303-1436 Project breakdown - EXPRESS MIM
*)

SCHEMA Project_breakdown_mim;
  USE FROM Configuration_item_mim;
  USE FROM Position_in_organization_mim;
  USE FROM Product_breakdown_mim;
  USE FROM Product_group_mim;
  USE FROM Product_relationship_mim;
  USE FROM Product_version_relationship_mim;
  USE FROM Schedule_mim;
  USE FROM Selected_item_mim;


TYPE pb_action_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_items WITH
	(product_group);
END_TYPE;


TYPE pb_action_method_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_method_items WITH
	(product,
	product_definition,
	breakdown_element_usage,
	product_definition_formation,
	product_as_individual,
	product_as_individual_version,
	product_as_individual_view,
	product_group);
END_TYPE;

TYPE pb_action_request_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_request_item WITH
	(product_group);
END_TYPE;


TYPE pb_aliasable_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON aliasable_item WITH
	(product,
	product_definition,
	product_definition_formation,
	product_as_individual,
	product_as_individual_view,
	product_as_planned,
	product_as_realized);
END_TYPE;


TYPE pb_approval_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON approval_item WITH
	(product,
	product_definition,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_individual,
	product_as_planned,
	product_as_realized,
	product_design_to_individual,
	product_design_version_to_individual,
	product_group,
	product_group_membership,
	product_group_relationship,
	product_planned_to_realized);
END_TYPE;


TYPE pb_certification_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON certification_item WITH
	(product,
	product_as_individual,
	product_as_planned,
	product_as_realized,
	product_group,
	product_group_relationship);
END_TYPE;


TYPE pb_classification_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON classification_item WITH
	(product,
	breakdown_context,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	breakdown_of,
	product_as_planned,
	product_as_realized,
	product_design_to_individual,
	product_design_version_to_individual,
	product_planned_to_realized);
END_TYPE;


TYPE pb_attribute_classification_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON attribute_classification_item WITH
	(breakdown_context,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage);
END_TYPE;


TYPE pb2_action_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_items WITH
	(product_definition_group_assignment, breakdown_element_group_assignment
	);
END_TYPE;


TYPE pb3_action_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_items WITH
	(product_as_individual,
	product_definition_group_assignment, breakdown_element_group_assignment
	);
END_TYPE;


TYPE pb_condition_action_method_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON condition_action_method_items WITH
	(product_definition_group_assignment, breakdown_element_group_assignment,
	product_group,
	product_group_membership,
	product_group_relationship);
END_TYPE;

TYPE pb5_action_method_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_method_items WITH
	(product_as_individual,
	product_definition_group_assignment, breakdown_element_group_assignment
	);
END_TYPE;


TYPE pb_contract_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON contract_item WITH
	(product,
	product_definition_formation, product_definition,
	product_as_individual,
	product_as_planned,
	product_as_realized,
	product_group,
	product_group_relationship);
END_TYPE;


TYPE pb_date_and_time_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON date_and_time_item WITH
	(product,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_planned,
	product_as_realized,
	product_design_to_individual,
	product_design_version_to_individual,
	product_group,
	product_group_membership,
	product_group_relationship,
	product_planned_to_realized);
END_TYPE;

TYPE pb_date_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON date_item WITH
	(product,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_planned,
	product_as_realized,
	product_design_to_individual,
	product_design_version_to_individual,
	product_group,
	product_group_membership,
	product_group_relationship,
	product_planned_to_realized);
END_TYPE;


TYPE pb_document_reference_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON document_reference_item WITH
	(product,
	breakdown_context,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_planned,
	product_as_realized,
	product_design_to_individual,
	product_design_version_to_individual,
	product_group,
	product_group_membership,
	product_group_relationship,
	product_planned_to_realized);
END_TYPE;


TYPE pb_effectivity_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON effectivity_item WITH
	(product,
	product_definition,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	breakdown_of,
	product_as_individual,
	product_as_individual_version,
	product_as_individual_view,
	product_design_to_individual,
	product_design_version_to_individual,
	product_planned_to_realized);
END_TYPE;


TYPE pb_identification_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON identification_item WITH
	(product,
	product_definition,
	product_definition_formation,
	product_as_planned,
	product_as_realized,
	product_group,
	product_group_membership,
	product_group_relationship);
END_TYPE;


TYPE pb_ir_usage_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON ir_usage_item WITH
	(product,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation, product_definition,
	product_as_individual,
	product_as_individual_view,
	product_as_planned,
	product_as_realized);
END_TYPE;


TYPE pb_location_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON location_item WITH
	(product_group);
END_TYPE;


TYPE pb_person_and_organization_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON person_and_organization_item WITH
	(product,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_as_individual,
	product_as_planned,
	product_as_realized,
	product_group,
	product_group_membership,
	product_group_relationship);
END_TYPE;

TYPE pb_organization_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON organization_item WITH
	(product,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_as_individual,
	product_as_planned,
	product_as_realized,
	product_group,
	product_group_membership,
	product_group_relationship);
END_TYPE;


TYPE pb_position_in_organization_group_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON position_in_organization_group_item WITH
	(product,
	product_definition_formation,
	product_definition);
END_TYPE;


TYPE pb_position_in_organization_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON position_in_organization_item WITH
	(product,
	product_definition_formation,
	product_definition);
END_TYPE;


TYPE pb_position_in_organization_type_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON position_in_organization_type_item WITH
	(product,
	product_definition_formation,
	product_definition);
END_TYPE;


TYPE pb_product_definition_or_product_definition_relationship = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON product_definition_or_product_definition_relationship WITH
	(product_group);
END_TYPE;


TYPE pb_project_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON project_item WITH
	(product,
	product_group,
	product_group_membership,
	product_group_relationship);
END_TYPE;


TYPE pb4_action_method_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_method_items WITH
	(product_as_individual,
	product_as_individual_version,
	product_as_individual_view,
	product_group);
END_TYPE;


TYPE pb2_action_method_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_method_items WITH
	(product_as_individual,
	product_as_individual_version,
	product_as_individual_view,
	product_group);
END_TYPE;


TYPE pb_security_classification_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON security_classification_item WITH
	(product,
	product_definition,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_individual,
	product_as_individual_view,
	product_as_planned,
	product_as_realized,
	product_design_to_individual,
	product_design_version_to_individual,
	product_group,
	product_group_membership,
	product_group_relationship);
END_TYPE;


TYPE pb_selected_item_context_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON selected_item_context_items WITH
	(product,
	product_as_individual,
	product_as_individual_version);
END_TYPE;


TYPE pb_state_type_of_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON state_type_of_item WITH
	(product_definition,
	product_definition_formation,
	product_as_individual,
	product_as_individual_view,
	product_as_planned,
	product_as_realized,
	product_group);
END_TYPE;


TYPE pb_state_observed_of_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON state_observed_of_item WITH
	(product,
	product_definition,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_individual,
	product_as_individual_view,
	product_as_planned,
	product_as_realized,
	product_group);
END_TYPE;


TYPE pb_multi_language_attribute_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON multi_language_attribute_item WITH
	(product,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_individual,
	product_as_individual_version,
	product_as_individual_view,
	product_group,
	product_group_relationship);
END_TYPE;

TYPE pb_attribute_language_item = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON attribute_language_item WITH
	(product,
	product_definition_group_assignment, breakdown_element_group_assignment,
	breakdown_element_usage,
	product_definition_formation,
	product_as_individual,
	product_as_individual_version,
	product_as_individual_view,
	product_group,
	product_group_relationship);
END_TYPE;



TYPE pb7_action_method_items = EXTENSIBLE GENERIC_ENTITY SELECT BASED_ON action_method_items WITH
	(product,
	product_definition_formation, product_definition,
	product_as_individual,
	product_as_individual_version,
	product_as_individual_view,
	product_group);
END_TYPE;

END_SCHEMA;

