(* ISO 10303 TC184/SC4/WG12 N8482 EXPRESS Source: ISO 10303-105 ed2 Kinematics - Kinematic property schema The following permission notice and disclaimer shall be included in all copies of this EXPRESS schema ("the Schema"), and derivations of the Schema: Copyright ISO 2014 All rights reserved Permission is hereby granted, free of charge in perpetuity, to any person obtaining a copy of the Schema, to use, copy, modify, merge and distribute free of charge, copies of the Schema for the purposes of developing, implementing, installing and using software based on the Schema, and to permit persons to whom the Schema is furnished to do so, subject to the following conditions: THE SCHEMA IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SCHEMA OR THE USE OR OTHER DEALINGS IN THE SCHEMA. In addition, any modified copy of the Schema shall include the following notice: THIS SCHEMA HAS BEEN MODIFIED FROM THE SCHEMA DEFINED IN ISO 10303-105 ed2 Kinematics - Kinematic property schema AND SHOULD NOT BE INTERPRETED AS COMPLYING WITH THAT STANDARD *) SCHEMA kinematic_property_schema '{iso standard 10303 part(105) version(4) object(1) kinematic_property_schema(1)}'; REFERENCE FROM kinematic_structure_schema ( kinematic_link_representation, kinematic_link_representation_association, mechanism_representation ); REFERENCE FROM kinematic_topology_schema ( kinematic_link, kinematic_topology_representation_select ); REFERENCE FROM product_property_definition_schema ( property_definition, product_definition_shape ); REFERENCE FROM product_definition_schema ( product_definition, product_definition_relationship ); REFERENCE FROM product_property_representation_schema ( property_definition_representation ); REFERENCE FROM representation_schema ( representation_relationship, using_representations); ENTITY product_definition_kinematics SUBTYPE OF (property_definition); SELF\property_definition.definition : product_definition; INVERSE representation_relation : kinematic_property_definition_representation FOR definition; UNIQUE UR1 : definition; END_ENTITY; ENTITY product_definition_relationship_kinematics SUBTYPE OF (property_definition); SELF\property_definition.definition : product_definition_relationship; UNIQUE UR1 : definition; END_ENTITY; ENTITY kinematic_property_definition_representation ABSTRACT SUPERTYPE OF ( ONEOF (kinematic_property_topology_representation, kinematic_property_mechanism_representation)) SUBTYPE OF (property_definition_representation); SELF\property_definition_representation.definition : product_definition_kinematics; -- LK END_ENTITY; ENTITY kinematic_property_topology_representation SUBTYPE OF (kinematic_property_definition_representation); SELF\property_definition_representation.used_representation : kinematic_topology_representation_select; base : kinematic_link; WHERE WR1: used_representation IN using_representations(base); END_ENTITY; ENTITY kinematic_property_mechanism_representation SUBTYPE OF (kinematic_property_definition_representation); SELF\property_definition_representation.used_representation : mechanism_representation; base : kinematic_link_representation; WHERE WR1: SIZEOF( QUERY( i <* used_representation.items | (base :=: i\representation_relationship.rep_1) OR (base :=: i\representation_relationship.rep_2))) > 0; END_ENTITY; ENTITY context_dependent_kinematic_link_representation; representation_relation : kinematic_link_representation_association; represented_product_relation : product_definition_relationship_kinematics; END_ENTITY; SUBTYPE_CONSTRAINT kps_property_definition_subtypes FOR property_definition; ONEOF (product_definition_kinematics, product_definition_relationship_kinematics, product_definition_shape); END_SUBTYPE_CONSTRAINT; END_SCHEMA;