(*
 * $Id$
 *
 * JSDAI(TM), a way to implement STEP, ISO 10303
 * Copyright (C) 1997-2008, LKSoftWare GmbH, Germany
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License
 * version 3 as published by the Free Software Foundation (AGPL v3).
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 * JSDAI is a registered trademark of LKSoftWare GmbH, Germany
 * This software is also available under commercial licenses.
 * See also http://www.jsdai.net/
 *)

(*
 Derived from ISO TC184/SC4/WG12 N3106 - ISO/TS 10303-1164 Product as individual - EXPRESS ARM
 by LKSoftWare GmbH for implementation purpose within IDA-STEP(TM)
*) 

SCHEMA Product_as_individual_xim;

USE FROM Identification_assignment_xim;    -- ISO/TS 10303-1021

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

USE FROM Product_version_xim;    -- ISO/TS 10303-1018

USE FROM Product_view_definition_xim;    -- ISO/TS 10303-1019

USE FROM Product_as_individual_mim;
(** Comment out for now as action of roll back Product_as_individual module
ENTITY Product_as_individual
  SUBTYPE OF (Product_armx);
END_ENTITY; 

ENTITY Product_as_individual_version
  ABSTRACT SUPERTYPE OF (ONEOF (Product_as_planned_armx,
                                Product_as_realized))
  SUBTYPE OF (product_definition_formation);
  SELF\product_definition_formation.of_product : Product_as_individual;
END_ENTITY;

ENTITY Product_as_individual_view
  SUBTYPE OF (Product_view_definition);
  SELF\Product_view_definition.defined_version : Product_as_individual_version;
END_ENTITY;
*)
ENTITY Product_as_planned_armx
  SUBTYPE OF (Product_as_individual_version, product_as_planned);
END_ENTITY;
(** Comment out for now as action of roll back Product_as_individual module
ENTITY Product_as_realized
  SUBTYPE OF (Product_as_individual_version);
END_ENTITY;
*)
ENTITY Product_design_to_individual_armx
  SUBTYPE OF (product_design_to_individual);
    SELF\product_design_to_individual.product_design : Product;
    SELF\product_design_to_individual.individual_product : Product_as_individual;
END_ENTITY;

ENTITY Product_design_version_to_individual_armx
  SUBTYPE OF (product_design_version_to_individual);
    SELF\product_design_version_to_individual.individual_product     : Product_as_individual_version;
END_ENTITY;

ENTITY Product_planned_to_realized_armx
  SUBTYPE OF (product_planned_to_realized);
  SELF\product_planned_to_realized.planned_product : Product_as_planned_armx;
  SELF\product_planned_to_realized.realized_product : Product_as_realized;
END_ENTITY;

END_SCHEMA;  -- Product_as_individual_xim

