Source : ISO 10303-105
SCHEMA kinematic_property_schema;
REFERENCE FROM
kinematic_structure_schema -- ISO 10303-105
(kinematic_link_representation,
kinematic_link_representation_association,
mechanism_representation);
REFERENCE FROM
kinematic_topology_schema -- ISO 10303-105
(kinematic_link,
kinematic_topology_representation_select);
REFERENCE FROM
product_property_definition_schema -- ISO 10303-41
(property_definition,
product_definition_shape);
REFERENCE FROM
product_definition_schema -- ISO 10303-41
(product_definition,
product_definition_relationship);
REFERENCE FROM
product_property_representation_schema -- ISO 10303-41
(property_definition_representation);
REFERENCE FROM
representation_schema -- ISO 10303-43
(representation_relationship,
using_representations);
ENTITY context_dependent_kinematic_link_representation;
representation_relation : kinematic_link_representation_association;
represented_product_relation : product_definition_relationship_kinematics;
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;
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 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 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;
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; -- kinematic_property_schema