(*
 * $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/
 *)

(*schema_mapping test_requirement_allocation(Test_requirement_allocation_arm, Test_requirement_allocation_mim);*)


entity_mapping Test_requirement_allocation(Test_requirement_allocation, requirement_assignment);

mapping_constraints;
				requirement_assignment <=
				[group
				{group.description = 'test requirement allocation'}]
				[characterized_object]

end_mapping_constraints;

attribute_mapping assigned_to(assigned_to, $PATH, product_definition_formation);
					requirement_assignment <-
					requirement_assigned_object.assigned_group
					requirement_assigned_object
					requirement_assigned_object.items ->
					requirement_assigned_item = product_definition_formation
					product_definition_formation

end_attribute_mapping;

attribute_mapping assigned_requirement_property(assigned_requirement_property, $PATH, Predefined_requirement_view_definition_armx);
					requirement_assignment <-
					assigned_requirement.assigned_group
					assigned_requirement
					assigned_requirement.items ->
					product_definition =>
					predefined_requirement_view_definition
				
end_attribute_mapping;

attribute_mapping analytical_model_based_test_access(analytical_model_based_test_access, $PATH, Analytical_model_port_assignment_armx);
requirement_assignment <=
group <-
group_assignment.assigned_group
group_assignment =>
applied_group_assignment
applied_group_assignment.items[i] ->
groupable_item = property_definition_representation
property_definition_representation
{property_definition_representation
property_definition_representation.name = 'part feature model port assignment'}

end_attribute_mapping;

attribute_mapping functional_specification_based_test_access(functional_specification_based_test_access, $PATH, Functional_usage_view_to_part_terminal_assignment);
requirement_assignment <=
group <-
group_assignment.assigned_group
group_assignment =>
applied_group_assignment
applied_group_assignment.items[i] ->
groupable_item = shape_aspect_relationship
shape_aspect_relationship
{shape_aspect_relationship
shape_aspect_relationship.name = 'functional terminal allocation'}

end_attribute_mapping;

end_entity_mapping;
(*end_schema_mapping;*)
