(* SCHEMA integrated_cnc_schema; *)
RULE edge_round_requires_faces_or_features FOR
(edge_round,
property_definition_representation,
feature_component_relationship);
WHERE
WR1: (0 = SIZEOF (QUERY (er <* edge_round | NOT (
-- edge round relates two sets of faces in AP-224 style
((1 = SIZEOF (QUERY (pdr <* property_definition_representation |
((pdr.used_representation.name = 'edge round face') AND
(pdr.definition.definition :=: er) AND
('INTEGRATED_CNC_SCHEMA.FACE_SHAPE_REPRESENTATION'
IN TYPEOF (pdr.used_representation)))))) AND
(1 = SIZEOF (QUERY (pdr <* property_definition_representation |
((pdr.used_representation.name = 'first face shape') AND
(pdr.definition.definition :=: er) AND
('INTEGRATED_CNC_SCHEMA.FACE_SHAPE_REPRESENTATION'
IN TYPEOF (pdr.used_representation)))))) AND
(1 = SIZEOF (QUERY (pdr <* property_definition_representation |
((pdr.used_representation.name = 'second face shape') AND
(pdr.definition.definition :=: er) AND
('INTEGRATED_CNC_SCHEMA.FACE_SHAPE_REPRESENTATION'
IN TYPEOF (pdr.used_representation))))))
)
OR
-- edge round relates two features in ISO 14649 style
((1 = SIZEOF (QUERY (fcr <* feature_component_relationship |
((fcr.name = 'first feature') AND
(fcr.relating_shape_aspect.of_shape.definition :=: er) AND
('INTEGRATED_CNC_SCHEMA.COMPOSITE_SHAPE_ASPECT'
IN TYPEOF (fcr.relating_shape_aspect)))))) AND
(1 = SIZEOF (QUERY (fcr <* feature_component_relationship |
((fcr.name = 'second feature') AND
(fcr.relating_shape_aspect.of_shape.definition :=: er) AND
('INTEGRATED_CNC_SCHEMA.COMPOSITE_SHAPE_ASPECT'
IN TYPEOF (fcr.relating_shape_aspect)))))))
))));
END_RULE; -- 10303-238: integrated_cnc_schema
Generated by STEP ToolsTM EXPRESS to HTML Converter
on 2010-01-12T10:42:25-02:00